{"id":21660080,"url":"https://github.com/DeterminateSystems/flake-checker-action","last_synced_at":"2025-07-17T23:30:44.912Z","repository":{"id":173709873,"uuid":"649661078","full_name":"DeterminateSystems/flake-checker-action","owner":"DeterminateSystems","description":"A GitHub Action that performs health checks for your Nix flake.lock files","archived":false,"fork":false,"pushed_at":"2024-09-24T01:23:43.000Z","size":4914,"stargazers_count":51,"open_issues_count":3,"forks_count":4,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-10-30T02:48:18.928Z","etag":null,"topics":["code-quality","dependency-management","flakes","nix","nixos"],"latest_commit_sha":null,"homepage":"https://github.com/marketplace/actions/nix-flake-checker","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DeterminateSystems.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-06-05T11:10:57.000Z","updated_at":"2024-10-16T04:15:01.000Z","dependencies_parsed_at":null,"dependency_job_id":"b7423f08-aa6b-4975-bead-5d1ce3ac7dd2","html_url":"https://github.com/DeterminateSystems/flake-checker-action","commit_stats":{"total_commits":59,"total_committers":4,"mean_commits":14.75,"dds":"0.30508474576271183","last_synced_commit":"078f5f7f47ee188aa6cb472527ca5984e195222d"},"previous_names":["determinatesystems/flake-checker-action"],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeterminateSystems%2Fflake-checker-action","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeterminateSystems%2Fflake-checker-action/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeterminateSystems%2Fflake-checker-action/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DeterminateSystems%2Fflake-checker-action/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DeterminateSystems","download_url":"https://codeload.github.com/DeterminateSystems/flake-checker-action/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":225893368,"owners_count":17540914,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["code-quality","dependency-management","flakes","nix","nixos"],"created_at":"2024-11-25T09:32:10.518Z","updated_at":"2025-07-17T23:30:44.904Z","avatar_url":"https://github.com/DeterminateSystems.png","language":"TypeScript","funding_links":[],"categories":["TypeScript","Github Actions"],"sub_categories":[],"readme":"# The Nix Flake Checker Action\n\nThis repo houses a [Github Action][action] from [Determinate Systems][detsys] that performs health checks on your repos' [`flake.lock`][lock] files.\nSpecifically, it wraps the [Nix Flake Checker][flake-checker] tool, which verifies that your root [Nixpkgs] inputs:\n\n- Have been updated within the last 30 days\n- Have the [`NixOS`][nixos-org] GitHub org as their owner\n- Are from a supported Git branch\n\nHere's an example configuration that uses `flake-checker-action` as part of a broader Actions workflow involving Nix.\n\n```yaml\non:\n  pull_request:\n  push:\n    branches: [main]\n\njobs:\n  build:\n    name: Build Nix targets\n    runs-on: ubuntu-22.04\n    steps:\n      - uses: actions/checkout@v3\n      - name: Check Nix flake inputs\n        uses: DeterminateSystems/flake-checker-action@main # This action\n      - name: Install Nix\n        uses: DeterminateSystems/determinate-nix-action@v3\n      - name: Build default package\n        run: nix build\n```\n\n## Configuration\n\nThe Nix Flake Checker Action has a number of configuration parameters that you can set in the `with` block:\n\n| Parameter                   | Description                                                                                                                                                                                                                                                                           | Default      |\n| :-------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | :----------- |\n| `condition`                 | An optional Common Expression Language (CEL) condition expressing your flake policy. Supersedes all `check-*` parameters.                                                                                                                                                             |              |\n| `flake-lock-path`           | The path to the `flake.lock` file you want to check.                                                                                                                                                                                                                                  | `flake.lock` |\n| `check-outdated`            | Whether to check that the root Nixpkgs input is less than 30 days old.                                                                                                                                                                                                                | `true`       |\n| `check-owner`               | Whether to check that the root Nixpkgs input has the `NixOS` GitHub org as its owner.                                                                                                                                                                                                 | `true`       |\n| `check-supported`           | Whether to check that the root Nixpkgs input has a supported Git ref. Currently supported refs: `nixos-22.11`, `nixos-22.11-small`, `nixos-23.05`, `nixos-23.05-small`, `nixos-unstable`, `nixos-unstable-small`, `nixpkgs-22.11-darwin`, `nixpkgs-23.05-darwin`, `nixpkgs-unstable`. | `true`       |\n| `nixpkgs-keys`              | The names of the Nixpkgs inputs you want to check. By default the checker only checks the `nixpkgs` but you can specify multiple names as a comma-separated list, such as `nixpkgs,nixpkgs-macos,nixpkgs-unstable`.                                                                   | `nixpkgs`    |\n| `ignore-missing-flake-lock` | Whether to ignore a missing `flake.lock` file, where the path to the file is the value of `flake-lock-path` parameter. If set to `false` (the default is `true`), the Action throws an error and the job fails if the lockfile is missing.                                            | `true`       |\n| `fail-mode`                 | Fail with an exit code of 1 if any issues are encountered.                                                                                                                                                                                                                            | `false`      |\n| `send-statistics`           | Anonymously report the number of issues detected by the flake checker. This reporting helps measure the effectiveness of the flake checker. Set to `false` to disable.                                                                                                                | `true`       |\n\nHere's an example non-default configuration:\n\n```yaml\n- name: Check Nix flake inputs\n  uses: DeterminateSystems/flake-checker-action@v2\n  with:\n    flake-lock-path: ./nix/flake.lock\n    check-owner: false\n    ignore-missing-flake-lock: false\n    fail-mode: true\n```\n\n[action]: https://github.com/features/actions\n[detsys]: https://determinate.systems\n[flake-checker]: https://github.com/DeterminateSystems/flake-checker\n[lock]: https://zero-to-nix.com/concepts/flakes#lockfile\n[nixos-org]: https://github.com/NixOS\n[nixpkgs]: https://github.com/NixOS/nixpkgs\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDeterminateSystems%2Fflake-checker-action","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FDeterminateSystems%2Fflake-checker-action","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDeterminateSystems%2Fflake-checker-action/lists"}