auto-upgrade: store flake input refs

This commit is contained in:
Peder Bergebakken Sundt 2024-09-15 20:22:07 +02:00
parent 4e81647fb6
commit f6ffcb2d68
1 changed files with 12 additions and 1 deletions

View File

@ -12,4 +12,15 @@
"--no-write-lock-file" "--no-write-lock-file"
]; ];
}; };
}
# workaround for https://github.com/NixOS/nix/issues/6895
# via https://git.lix.systems/lix-project/lix/issues/400
environment.etc."current-system-flake-inputs.json".source
= pkgs.writers.writeJSON "flake-inputs.json" (
lib.flip lib.mapAttrs inputs (name: input:
# inputs.*.sourceInfo sans outPath, since writeJSON will otherwise serialize sourceInfo like a derivation
lib.filterAttrs (key: val: !builtins.elem key ["outPath"]) (input.sourceInfo or {})
// { store-path = input.outPath; } # comment this line if you don't want to retain a store reference to the flake inputs
)
);
}