Linter for gitignore, dockerignore and other ignore files
  • Crystal 95.4%
  • Shell 3.3%
  • Dockerfile 1.1%
  • Makefile 0.2%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Damián Búho 6cc6327c05
Some checks are pending
published / artifacts-are-ok (push) Blocked by required conditions
published / binaries-are-released (amd64, linux) (push) Blocked by required conditions
published / container-is-ok (push) Blocked by required conditions
published / container-is-verified (push) Blocked by required conditions
published / container-ready-to-test (push) Blocked by required conditions
published / image-has-sbom (push) Blocked by required conditions
published / image-is-attested (kiota) (push) Blocked by required conditions
published / image-is-ready (push) Blocked by required conditions
published / image-is-secure (push) Blocked by required conditions
published / image-is-signed (push) Blocked by required conditions
published / images-are-ok (push) Blocked by required conditions
published / publish-image (push) Blocked by required conditions
published / published (push) Blocked by required conditions
published / ready-to-publish (push) Blocked by required conditions
published / secrets-ready (push) Blocked by required conditions
published / signing-is-ready (push) Has been skipped
published / fetched (push) Successful in 1s
published / projectfile-is-valid (push) Successful in 4s
published / source-is-secure (push) Successful in 9s
published / source-is-tested (push) Successful in 9s
published / source-is-compliant (push) Successful in 9s
published / projectfile-is-ok (push) Successful in 5s
published / binaries-are-built (amd64, linux) (push) Successful in 20s
published / binaries-are-ok (push) Successful in 0s
published / source-passes-lint (push) Successful in 43s
published / source-is-ok (push) Successful in 0s
published / documentation-passes-lint (push) Successful in 51s
published / documentation-is-ok (push) Successful in 0s
published / inputs-are-ok (push) Successful in 0s
published / image-is-built (push) Has started running
test: tolerate missing pf-cli in stderr assertions
2026-09-14 17:44:27 -03:00
.compose chore: init 2026-08-06 20:11:35 -03:00
.container chore: regenerate .pots 2026-09-07 02:01:36 -03:00
.forgejo/workflows feat(forge): declare and publish to GitHub, enable supply-chain signing 2026-09-14 13:58:41 -03:00
.github/workflows chore: refresh pinned GHA action SHAs via pf-ci generate 2026-09-14 17:44:10 -03:00
.makefile feat(forge): declare and publish to GitHub, enable supply-chain signing 2026-09-14 13:58:41 -03:00
.scripts feat(release): stamp the version and publish a binary on tag 2026-08-22 00:51:29 -03:00
docs fix(docs): correct table style and terminology lint findings 2026-09-14 14:02:19 -03:00
LICENSES chore: init 2026-08-06 20:11:35 -03:00
spec test: tolerate missing pf-cli in stderr assertions 2026-09-14 17:44:27 -03:00
specifications chore: init 2026-08-06 20:11:35 -03:00
src feat: add per-rule severity overrides 2026-09-13 21:31:38 -03:00
.claudeignore chore: sorting for claudeignore 2026-09-13 12:48:20 -03:00
.containerignore chore: sorting for containerignore 2026-09-13 12:54:35 -03:00
.dockerignore chore: clean .gitlab from dockerignores 2026-09-14 00:37:45 -03:00
.gitattributes chore: clean j2 from attributes 2026-09-14 00:36:29 -03:00
.gitignore chore: sorting for gitignore 2026-09-13 12:45:21 -03:00
.gitmodules build: hard .gitmodules before big refactoring of m6e 2026-09-02 18:39:57 -03:00
AI_POLICY.md chore(docs): prevent user data from triggering textlint 2026-08-19 23:23:41 -03:00
CITATION.cff chore(version): 1.2.3 2026-09-14 14:44:18 -03:00
CODE_OF_CONDUCT.md docs: cleanup code of conduct 2026-08-18 02:17:34 -03:00
CODEOWNERS chore: init 2026-08-06 20:11:35 -03:00
CONTRIBUTING.md feat(forge): declare and publish to GitHub, enable supply-chain signing 2026-09-14 13:58:41 -03:00
Dockerfile fix(container): declare the full b19 build-arg surface 2026-08-27 21:23:03 -03:00
FEATURES.md fix(docs): correct table style and terminology lint findings 2026-09-14 14:02:19 -03:00
lefthook.yaml chore: correct pf-ci name in comments 2026-08-30 22:26:12 -03:00
LICENSE chore: init 2026-08-06 20:11:35 -03:00
Makefile chore: init 2026-08-06 20:11:35 -03:00
projectfile.yaml chore(version): 1.2.3 2026-09-14 14:44:18 -03:00
README.md feat(forge): declare and publish to GitHub, enable supply-chain signing 2026-09-14 13:58:41 -03:00
SECURITY.md docs: clean up security.md (temporarily disable how to link) 2026-08-18 01:37:14 -03:00
shard.lock chore: init 2026-08-06 20:11:35 -03:00
shard.lock.license chore: init 2026-08-06 20:11:35 -03:00
shard.yml chore: init 2026-08-06 20:11:35 -03:00
SUPPORT.md feat(forge): declare and publish to GitHub, enable supply-chain signing 2026-09-14 13:58:41 -03:00

Español · Українська

Ignorelint

Linter for gitignore, dockerignore and 20+ other ignore files

Stand with Ukraine Projectfile inside License Commit style Workflow Versioning PRs welcome Citation REUSE compliance

Project status Last commit on GitHub Last commit on kiota.ch

Publish pipeline on GitHub Vulnerability audit on GitHub Dependency freshness on GitHub Analysis sweep on GitHub

Publish pipeline on kiota.ch Vulnerability audit on kiota.ch Dependency freshness on kiota.ch Analysis sweep on kiota.ch

Features

  • Autofix that preserves file meaning
  • Dead-rule detection against the live filesystem
  • Whole-tree discovery for monorepos
  • Output pipelines can parse
  • Policy lives in projectfile.yaml
  • Suppressions for intentional exceptions

Inherited from B19/Ubuntu

  • Persistent APT cache across builds
  • Service process management with log routing (b19-exec)
  • Cached artifact downloads with integrity verification
  • Timed command execution with failure reporting (b19-run)
  • Run-once initialization (bootstrap.d)
  • Modular build hooks (build.d)
  • Automatic CPU count detection
  • Declarative dependency management (b19-deps)
  • Pluggable startup system (entrypoint.d)
  • Feature toggles for all subsystems
  • Built-in health monitoring (healthcheck.d)
  • Multilingual shell output (b19-i18n)
  • Image lineage tracking
  • Structured, level-filtered logging (b19-log)
  • Non-root container by default
  • Air-gapped / offline build and runtime support
  • Runtime overlay injection
  • Reproducible base image (pinned by digest)
  • Port validation
  • Unified lifecycle runner family
  • Docker secrets auto-loading
  • Interactive shell hooks
  • Graceful signal handling
  • Jinja2 configuration templates (minijinja-cli)
  • Built-in test framework (test.d)
  • Pre-installed utility tools
  • XDG Base Directory paths

See FEATURES.md for the full list.

What this provides

  • Executable ignorelint
  • Container image ghcr.io/damian-buho/damian-buho/ignorelint:latest

Installation

Pull the published container image:

Pull from GHCR

docker pull ghcr.io/damian-buho/damian-buho/ignorelint:latest

Stable releases also publish X.Y.Z, X.Y and X tags — pull the precision you want to pin.

If the registries above are unreachable, pull from the origin instead:

Pull from Kiota

docker pull kiota.ch/damian-buho/ignorelint:latest

Usage

Run a tool from the image against the current directory:

From GHCR

docker run --rm --volume "$PWD:/work" --workdir /work ghcr.io/damian-buho/damian-buho/ignorelint:latest <tool> [args]

Building

Run make with no arguments for the default target; run make help to list every target.

For the local dev loop, make dev-container brings up the dev-container.

Pipeline entry points:

  • make analyze — Run the heavy analysis sweep (mutation testing, benchmarks)
  • make audited — Re-scan the pinned dependencies and published artifacts for new vulnerabilities
  • make check-outdated — Report every pinned dependency that lags upstream
  • make ready-to-publish — Run the pseudo-CI pipeline locally — build, test and scan, without publishing

Policies

License

This project is licensed under MIT — see the LICENSE file for details.