Automic VaultAutomic Vault

brew

Install checkmake with Homebrew, dnf, MacPorts, Nix

Linter/analyzer for Makefiles. Version 0.3.2 via Homebrew; verified from local package data.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install checkmake

local Homebrew formula metadata

MacPortsverified · 94%
sudo port install checkmake

MacPorts ports tree · devel/checkmake/Portfile · source: api.github.com

Linux

Fedora dnfverified · 92%
sudo dnf install checkmake

Fedora Rawhide package metadata · checkmake · source: dl.fedoraproject.org

Nixverified · 92%
nix profile install nixpkgs#checkmake

nixpkgs package indexes · pkgs/by-name/ch/checkmake/package.nix · source: api.github.com

overview

Package summary

Linter/analyzer for Makefiles

Commands and aliases

  • checkmake

history

Project history and usage

checkmake is a Go command-line linter for Makefiles. It is a small but package-relevant tool because Makefiles are ubiquitous, and checkmake gives them the kind of static analysis that shell scripts, YAML, and source code often already receive.

Project history

The checkmake/checkmake repository was created in August 2016 and describes the project as a linter and analyzer for Makefiles. The README says it scans one or more Makefiles for potential issues according to configurable rules.

The project was inspired by an idea from Dan Buch, according to the README, and later moved into the checkmake GitHub organization while retaining older badge references to the original mrtazz/checkmake namespace.

Adoption history

The official README documents installation with Go, prebuilt releases, packages, packagecloud, Homebrew-style package-manager use through batch metadata, and official container images on quay.io. It also provides pre-commit hook configuration for repository-level adoption.

The README notes that checkmake is natively embedded in MegaLinter, which makes it available inside a broader multi-language linting workflow even when users do not install it directly.

How it is used

Typical usage is to run checkmake against Makefile, GNUmakefile, or *.mk inputs and receive text or JSON reports. The CLI supports a default checkmake.ini configuration file, listing rules, and custom output templates.

In CI and pre-commit workflows, checkmake is used to catch missing phony declarations and similar Makefile maintainability issues before they are merged.

Why package nerds care

checkmake is package-nerd interesting because it lints one of the oldest build-description formats still found in modern repositories. It is also a tidy example of a Go CLI distributed through source install, binary releases, containers, packagecloud, Homebrew, MacPorts, Nix, and distro packages.

Its presence in pre-commit and MegaLinter shows the common path from standalone command to plumbing inside larger developer-tool aggregators.

Timeline

  • 2016: checkmake/checkmake repository created.
  • 2022: 0.2.1 release published on GitHub.
  • 2023: 0.2.2 release used in the official pre-commit example.
  • 2026: v0.3.x releases published, showing renewed maintenance.

Related projects

  • pre-commit is an adjacent integration surface documented by the project.
  • MegaLinter embeds checkmake for Makefile linting, and GNU Make is the input format the tool analyzes.

security posture

Risk level: green

narrow executable package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • narrow executable package without higher-risk signals

Signals

  • metadata:no-higher-risk-signals

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Build metadata lists 2 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

local files

Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.

Configuration files

Config paths the tool may read or write during local use.

Unix
./checkmake.ini
Windows
.\checkmake.ini

executables

Installed executables

CommandKindExposureNote
checkmakecliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version0.3.2
manager updated
local dataok
upstreamcurrent
latest detectedv0.3.2

https://github.com/checkmake/checkmake

  • infoNo package-manager update timestamp was available.low confidence

install metadata

Package metadata

Package keybrew:checkmake
Version0.3.2
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/checkmake
Homepagehttps://github.com/checkmake/checkmake
Repositoryhttps://github.com/checkmake/checkmake
Upstream docshttps://github.com/checkmake/checkmake#readme
LicenseMIT
Source archivehttps://github.com/checkmake/checkmake/archive/refs/tags/v0.3.2.tar.gz
Build dependenciesgo, pandoc
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namecheckmake
Version Scheme0
Revision0
Head VersionHEAD
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Nix95%

checkmake

nix profile install nixpkgs#checkmake
  • normalized package name match
  • Matched by: Checkmake
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/ch/checkmake/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
dnf95%

checkmake 0.3.2-2.fc45

Linter/analyzer for Makefiles

https://github.com/checkmake/checkmake

sudo dnf install checkmake
  • License: Apache-2.0 AND BSD-3-Clause AND ISC AND MIT
  • Category: Unspecified
  • Architecture: x86_64
  • Source Package: checkmake
  • 3 dependencies
  • 2 provides
  • normalized package name match
  • Matched by: Checkmake
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: checkmake from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
MacPorts95%

checkmake

sudo port install checkmake
  • normalized package name match
  • Matched by: Checkmake
MacPorts ports tree · api.github.com · MacPorts ports tree: devel/checkmake/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated configuration and credential file locations
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment