# Install cmake-lint with Homebrew, Nix

Static code checker for CMake files. Version 1.4.3 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:cmake-lint
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install cmake-lint
```

  Evidence: local Homebrew formula metadata

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#cmake-lint
```

  Evidence: nixpkgs package indexes: pkgs/by-name/cm/cmake-lint/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:cmake-lint
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/cmake-lint>
- **Version:** 1.4.3
- **Source summary:** Static code checker for CMake files
- **Homepage:** <https://github.com/cmake-lint/cmake-lint>
- **Repository:** <https://github.com/cmake-lint/cmake-lint>
- **Upstream docs:** <https://github.com/cmake-lint/cmake-lint#readme>
- **License:** Apache-2.0
- **Source archive:** <https://files.pythonhosted.org/packages/9f/46/9b6c39837be138179347611ec8cb79bf00ff3b54966ee8b63e031a05cf76/cmakelint-1.4.3.tar.gz>
- **Generated:** 2026-07-08T18:08:21+00:00

## Executables

- cmakelint (cli)
- cmakelint (alias)

## Dependencies

- python@3.14

## Install behavior

- Post-install hook: not defined
- Bottle: available on all

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 1.4.3
- Local data: ok
- Upstream repository: https://github.com/cmake-lint/cmake-lint
- info: No package-manager update timestamp was available.
- info: No cached GitHub release or tag data was available.
## Project history and usage

cmake-lint is a Python static style checker for CMake files. Its README describes a cmakelint command that parses CMake files, reports style issues, supports filters, and can be used directly or through pre-commit.

### Project history

The current GitHub repository describes itself as a fork of richq/cmake-lint created to continue maintenance. The bundled changelog records that version 1.2 moved to GitHub and version 1.2.01 was published on PyPI; the GitHub API reports the current maintenance repository was created in June 2019.

### Adoption history

The project is distributed as the cmakelint Python package and the README gives pip installation instructions. The batch input lists Homebrew and Nix packages, and the README includes a pre-commit hook configuration, which makes it easy to adopt in project-level lint workflows.

### How it is used

Users run cmakelint with one or more CMake files and optional --config or --filter arguments. The README documents .cmakelintrc lookup in the working directory, XDG-style config paths, and the home directory, plus inline lint_cmake pragmas for per-file filter overrides.

### Why package nerds care

cmake-lint matters as a small, packageable CMake hygiene tool: it gives package maintainers and CI pipelines a lightweight way to enforce CMake style without pulling in a full build-system rewrite or editor integration.

### Timeline

- 2012: changelog records version 1.2 moving to GitHub and 1.2.01 being published on PyPI.
- 2019: current maintenance fork repository is created.
- 2024: version 1.4.3 adds Python 3.12 support and is published as the latest GitHub release checked.

### Related projects

- cmake-lint is related to CMake, pre-commit, and other CMake formatting or editor tools such as cmake-format and cmake-language-server, but it remains focused on static lint checks.

### Sources

- <https://github.com/cmake-lint/cmake-lint#readme>
- <https://raw.githubusercontent.com/cmake-lint/cmake-lint/master/CHANGELOG.md>
- <https://api.github.com/repos/cmake-lint/cmake-lint>
- <https://api.github.com/repos/cmake-lint/cmake-lint/releases>
- <https://pypi.org/pypi/cmakelint/json>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals


## 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

- Unix: $PWD/.cmakelintrc, ~/.config/cmakelintrc, $XDG_CONFIG_DIR/cmakelintrc, ~/.cmakelintrc
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** cmake-lint
- **Version Scheme:** 0
- **Revision:** 0
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable

## Other Package-Manager Records

- Nix - cmake-lint: normalized package name match | nixpkgs package indexes: pkgs/by-name/cm/cmake-lint/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1


## Related links

- [Source-control packages](https://www.automicvault.com/pkg/source-control-tools/) - Belongs to a source-control command family.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [Developer build packages](https://www.automicvault.com/pkg/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [python@3.14](https://www.automicvault.com/pkg/brew/python-3-14/) - Runtime dependency declared by Homebrew.
- [pycodestyle](https://www.automicvault.com/pkg/brew/pycodestyle/) - Shares av.db curated category or tags: cli, developer-tools, linters, linting, style-checker.
- [actionlint](https://www.automicvault.com/pkg/brew/actionlint/) - Shares av.db curated category or tags: cli, developer-tools, linting, static-analysis.
- [bashate](https://www.automicvault.com/pkg/brew/bashate/) - Shares av.db curated category or tags: cli, developer-tools, linting, style-checker.
- [checkmake](https://www.automicvault.com/pkg/brew/checkmake/) - Shares av.db curated category or tags: cli, developer-tools, linting, static-analysis.
- [checkstyle](https://www.automicvault.com/pkg/brew/checkstyle/) - Shares av.db curated category or tags: cli, developer-tools, linting, static-analysis.
- [cpplint](https://www.automicvault.com/pkg/brew/cpplint/) - Shares av.db curated category or tags: cli, developer-tools, linting, style-checker.
- [credo](https://www.automicvault.com/pkg/brew/credo/) - Shares av.db curated category or tags: cli, developer-tools, linting, static-analysis.
- [detekt](https://www.automicvault.com/pkg/brew/detekt/) - Shares av.db curated category or tags: cli, developer-tools, linting, static-analysis.
- [vermin](https://www.automicvault.com/pkg/brew/vermin/) - Both packages touch the same language runtime or ecosystem. Shared terms: analysis, cli, code, developer, developer-tools.
- [vulture](https://www.automicvault.com/pkg/brew/vulture/) - Both packages touch the same language runtime or ecosystem. Shared terms: analysis, cli, code, developer, developer-tools.
- [cmake-language-server](https://www.automicvault.com/pkg/brew/cmake-language-server/) - Both packages touch the same language runtime or ecosystem. Shared terms: cli, cmake, developer, developer-tools, python.

## Combined YAML source

View the package source record on GitHub. [combined/cmake-lint.yml](https://github.com/automic-vault/db/blob/main/combined/cmake-lint.yml)


## Sources

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