Skip to main content
Flake Checker

Keep your Nixpkgs dependencies healthy and up to date

Flake Checker runs health checks on the flake.lock files in your Nix flakes. It confirms that your Nixpkgs inputs are recent, track a supported branch, and come from the NixOS org, and it enforces your own rules with Common Expression Language (CEL) policies. Run it locally with nix run or wire it into CI as a GitHub Action. It's free and open source.

Check for supported branches

Confirms that every explicit Nixpkgs Git ref in your flake.lock tracks a currently supported branch, so that you're never pinned to a channel that's gone unmaintained.

Catch outdated inputs

Flags Nixpkgs inputs that are more than 30 days old by default, so that you pick up the steady stream of package updates and security fixes instead of drifting behind.

Verify the input owner

Checks that your Nixpkgs inputs have NixOS as the GitHub owner or FlakeHub org, catching cases where an input has been quietly re-pointed at a fork.
About CEL: Enforce your own policies with CEL

Enforce your own policies with CEL

Go beyond the built-in checks with Common Expression Language (CEL) conditions over variables like numDaysOld, gitRef, owner, and supportedRefs, so you can hold flakes to exactly the standard you want.
About CEL (opens in a new tab)
Flake Checker Action: Drop it into CI

Drop it into CI

The Flake Checker GitHub Action runs the same checks on every pull request, so that a stale or unsupported Nixpkgs input fails the build before it lands.
Flake Checker Action (opens in a new tab)
See the Action on GitHub: Pairs with the Update Flake Lock Action

Pairs with the Update Flake Lock Action

Let the Update Flake Lock Action open pull requests as new Nixpkgs versions land, then have Flake Checker vet each one, so that your inputs stay both current and within policy.
See the Action on GitHub (opens in a new tab)
DeterminateSystems/flake-checker: Free and open source

Free and open source

Flake Checker is open source and free to use, built in the open by Determinate Systems for the whole Nix community.
DeterminateSystems/flake-checker (opens in a new tab)
  • Introducing the Nix Flake Checker

    Introducing the Nix Flake Checker

    The announcement post, with a walkthrough of the checks it runs and the best practices behind them.

  • Flake Checker on GitHub

    Flake Checker on GitHub (opens in a new tab)

    The flake-checker repository, with installation instructions, CLI reference, and the issue tracker.

  • Flake Checker GitHub Action

    Flake Checker GitHub Action (opens in a new tab)

    The GitHub Action that runs Flake Checker on every pull request in your CI pipeline.

  • Best practices for Nix at work

    Best practices for Nix at work

    How keeping Nixpkgs current fits into a broader set of best practices for using Nix on a team.

Explore more CLI tools