ci: pin Nix to 2.31.5 to fix lazy-trees IFD failure
Some checks failed
Check / eval-and-lint (push) Failing after 1m5s
Some checks failed
Check / eval-and-lint (push) Failing after 1m5s
flake check kept failing with "path '…-source' is not valid" while evaluating the home-manager fontconfig text (Stylix/base16.nix do import-from-derivation). Root cause: the installer pulled the latest Nix (2.34), whose lazy-trees / git-cache behaviour doesn't materialise flake-input source paths into the store, so the IFD reads can't find them. Pin the install to 2.31.5 — the version that wrote flake.lock locally and evaluates the flake cleanly all session. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -54,13 +54,20 @@ jobs:
|
||||
# nixbld from its bundled nix.conf, aborting unless that group exists
|
||||
# AND has members. Create the nixbld group + build users (what a
|
||||
# multi-user install does) before running it.
|
||||
#
|
||||
# Pin the Nix version: the latest (2.34) uses lazy-trees / a git
|
||||
# cache that doesn't materialise flake-input `-source` paths into
|
||||
# the store, so Stylix's import-from-derivation reads fail with
|
||||
# "path '…-source' is not valid". 2.31.5 matches the Nix that wrote
|
||||
# flake.lock locally and evaluates the flake cleanly.
|
||||
run: |
|
||||
NIX_VERSION=2.31.5
|
||||
groupadd -r nixbld 2>/dev/null || true
|
||||
for i in $(seq 1 10); do
|
||||
useradd -r -g nixbld -G nixbld -d /var/empty \
|
||||
-s /usr/sbin/nologin -c "Nix build user $i" "nixbld$i" 2>/dev/null || true
|
||||
done
|
||||
curl -L https://nixos.org/nix/install | sh -s -- --no-daemon
|
||||
curl -L "https://releases.nixos.org/nix/nix-${NIX_VERSION}/install" | sh -s -- --no-daemon
|
||||
echo "$HOME/.nix-profile/bin" >> "$GITHUB_PATH"
|
||||
|
||||
- name: nix flake check --no-build
|
||||
|
||||
Reference in New Issue
Block a user