# Install gitlab-ci-linter with Homebrew, Nix

Command-line tool to lint GitLab CI YAML files. Version 2.4.0 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:gitlab-ci-linter
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install gitlab-ci-linter
```

  Evidence: local Homebrew formula metadata

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#gitlab-ci-linter
```

  Evidence: nixpkgs package indexes: pkgs/by-name/gi/gitlab-ci-linter/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:gitlab-ci-linter
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/gitlab-ci-linter>
- **Version:** 2.4.0
- **Source summary:** Command-line tool to lint GitLab CI YAML files
- **Homepage:** <https://gitlab.com/orobardet/gitlab-ci-linter>
- **Repository:** <https://gitlab.com/orobardet/gitlab-ci-linter>
- **Upstream docs:** <https://gitlab.com/orobardet/gitlab-ci-linter/-/blob/master/README.md>
- **License:** MIT
- **Source archive:** <https://gitlab.com/orobardet/gitlab-ci-linter/-/archive/v2.4.0/gitlab-ci-linter-v2.4.0.tar.bz2>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- gitlab-ci-linter (cli)
- gitlab-ci-linter (alias)

## Build dependencies

- go

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 2.4.0
- Local data: ok
- Upstream repository: https://gitlab.com/orobardet/gitlab-ci-linter
- info: No package-manager update timestamp was available.
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

gitlab-ci-linter is a small Go command-line tool that validates a local `.gitlab-ci.yml` file by calling a GitLab instance's CI lint API. It is designed to catch invalid GitLab CI configuration before a developer commits or pushes changes.

### Project history

The GitLab project was created in March 2017. Its README makes the architectural boundary explicit: the tool does not implement its own GitLab CI linter, but delegates validation to the GitLab API that belongs to the target project.

The project adapted to GitLab API evolution after the older `/ci/lint` endpoint was deprecated in GitLab 15.7 and removed in GitLab 16.0; the README documents use of the `projects/:project_path_or_id/ci/lint` endpoint and project path or project ID options.

### Adoption history

Adoption appears specialized: the GitLab project metadata collected for this enrichment reported 53 stars. Its practical audience is teams that want local or pre-commit validation against gitlab.com or a private GitLab instance rather than waiting for a failed pipeline.

### How it is used

Practitioners run `gitlab-ci-linter` from inside a Git repository with a GitLab origin and a `.gitlab-ci.yml` file. The README documents installation as a Git pre-commit hook, optional use through the `pre-commit` framework, explicit GitLab URL and project options, and authentication through a personal access token or `.netrc` account field.

### Why package nerds care

For package-manager users, gitlab-ci-linter is a classic sharp-edged CLI: a cross-platform binary, a narrow API-backed job, and enough configuration to work with self-hosted GitLab. It fills the gap between static YAML syntax checks and a real GitLab CI validation request.

### Timeline

- 2017: GitLab project created.
- 2017: README documented local `.gitlab-ci.yml` validation through GitLab's lint API.
- 2022: GitLab 15.7 deprecated the older `/ci/lint` endpoint.
- 2023: GitLab 16.0 removed the older endpoint, leading the tool's documented flow to use the project-scoped lint endpoint.

### Related projects

- Related projects and services include GitLab CI, GitLab's CI lint API, the `pre-commit` framework, Cloudsmith packages, and Docker-based CLI distribution.

### Sources

- <https://docs.gitlab.com/ee/api/lint.html>
- <https://formulae.brew.sh/formula/gitlab-ci-linter>
- <https://gitlab.com/api/v4/projects/orobardet%2Fgitlab-ci-linter>
- <https://gitlab.com/orobardet/gitlab-ci-linter>
- <https://gitlab.com/orobardet/gitlab-ci-linter/-/raw/master/README.md>


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


## Credential files

- Unix: ~/.netrc
- Windows: ~/_netrc
## Source Database Details

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

## Other Package-Manager Records

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


## Related links

- [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.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [go](https://www.automicvault.com/pkg/brew/go/) - Build dependency declared by Homebrew.
- [gitlab-ci-local](https://www.automicvault.com/pkg/brew/gitlab-ci-local/) - Shares av.db curated category or tags: ci, ci-cd, cli, developer-tools, gitlab.
- [gitlab-runner](https://www.automicvault.com/pkg/brew/gitlab-runner/) - Shares av.db curated category or tags: ci, ci-cd, cli, developer-tools, gitlab.
- [actionlint](https://www.automicvault.com/pkg/brew/actionlint/) - Shares av.db curated category or tags: ci, ci-cd, cli, developer-tools.
- [actions-up](https://www.automicvault.com/pkg/brew/actions-up/) - Shares av.db curated category or tags: ci, ci-cd, cli, developer-tools.
- [codecov-cli](https://www.automicvault.com/pkg/brew/codecov-cli/) - Shares av.db curated category or tags: ci, ci-cd, cli, developer-tools.
- [jenkins-job-builder](https://www.automicvault.com/pkg/brew/jenkins-job-builder/) - Shares av.db curated category or tags: ci-cd, cli, developer-tools, yaml.
- [act](https://www.automicvault.com/pkg/brew/act/) - Shares av.db curated category or tags: ci-cd, cli, developer-tools.
- [action-validator](https://www.automicvault.com/pkg/brew/action-validator/) - Shares av.db curated category or tags: cli, developer-tools, linter, yaml.
- [gitlab-release-cli](https://www.automicvault.com/pkg/brew/gitlab-release-cli/) - Package names and metadata indicate a similar tool family. Shared terms: ci, cli, developer, developer-tools, gitlab.
- [glab](https://www.automicvault.com/pkg/brew/glab/) - Local package facts share a topical domain. Shared terms: ci-cd, cli, command-line, developer, developer-tools.

## Combined YAML source

View the package source record on GitHub. [combined/gitlab-ci-linter.yml](https://github.com/automic-vault/db/blob/main/combined/gitlab-ci-linter.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
