Skip to content

I think this is Error is Preventing new packages from being added and old ones from being updated #1128

Description

@wriver4

Run ./ci/test.sh
./ci/test.sh
shell: /usr/bin/bash -e {0}
env:
NIX_PATH: nixpkgs=channel:nixos-unstable
TMPDIR: /home/runner/work/_temp
unpacking 'https://nixos.org/channels/nixos-unstable/nixexprs.tar.xz' into the Git cache...
these 154 paths will be fetched (201.62 MiB download, 950.79 MiB unpacked):

The job is failing because the workflow is installing a Nix version that’s too old for the nixpkgs revision being evaluated. The log shows nixpkgs aborting evaluation with:

“This version of Nixpkgs requires … builtins.nixVersion reports at least 2.18

So the fix is to ensure GitHub Actions installs Nix ≥ 2.18 (ideally a recent stable Nix) before running ./ci/test.sh.

Fix (recommended): pin a recent Nix in the workflow

In .github/workflows/pr.yml at ref 65467e7e723605745767c84998564332bcc0a8a6, update the cachix/install-nix-action@v30 step to install a sufficiently new Nix:

- uses: cachix/install-nix-action@v30
  with:
    nix_path: nixpkgs=channel:nixos-unstable
    install_url: https://releases.nixos.org/nix/nix-2.24.12/install
    extra_nix_config: |
      experimental-features = nix-command flakes

Notes:

  • Any Nix >= 2.18 works; choosing a recent stable (example above) prevents this from regressing again when nixpkgs raises requirements.
  • This error is independent of individual NUR repos being evaluated; they’re failing because nixpkgs evaluation stops early due to the Nix version gate.

Optional cleanup

Your logs also include repeated warnings:

warning: unknown setting 'always-allow-substitutes'

That warning doesn’t cause the failure, but it suggests some config in the CI environment is setting an option unsupported by the installed Nix. Pinning to a newer Nix often resolves this too (or at least makes it consistent).

Why this is the correct fix

The failing command is nix-env ... -I nixpkgs=/nix/store/... invoked by the NUR evaluation tool, and nixpkgs itself is aborting with the explicit “requires Nix >= 2.18” message. Updating the workflow’s Nix installation is the direct solution.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions