Merge pull request 'Lib/flakes: remove self references' (#4165) from fix-lib into main
Reviewed-on: https://git.clan.lol/clan/clan-core/pulls/4165
This commit is contained in:
@@ -43,8 +43,6 @@ lib.fix (
|
||||
facts = import ./facts.nix { inherit lib; };
|
||||
|
||||
# flakes
|
||||
flakes = clanLib.callLib ./flakes.nix {
|
||||
clan-core = self;
|
||||
};
|
||||
flakes = clanLib.callLib ./flakes.nix { };
|
||||
}
|
||||
)
|
||||
|
||||
@@ -1,16 +1,22 @@
|
||||
{
|
||||
lib,
|
||||
clan-core,
|
||||
...
|
||||
}:
|
||||
{
|
||||
# A flake lock for offline use.
|
||||
# All flake inputs are locked to an existing store path
|
||||
mkOfflineFlakeLock =
|
||||
flakePath:
|
||||
flakeRef:
|
||||
|
||||
let
|
||||
flake =
|
||||
if lib.isAttrs flakeRef then
|
||||
flakeRef
|
||||
else
|
||||
throw "Cannot handle flake of type ${lib.typeOf flakeRef} yet.";
|
||||
flakePath = toString flake;
|
||||
flakeLock = lib.importJSON (flakePath + "/flake.lock");
|
||||
flakeInputs = builtins.removeAttrs clan-core.inputs [ "self" ];
|
||||
flakeInputs = builtins.removeAttrs flake.inputs [ "self" ];
|
||||
inputsToPaths =
|
||||
flakeLock:
|
||||
flakeLock
|
||||
@@ -28,7 +34,7 @@
|
||||
lastModified =
|
||||
# lol, nixpkgs has a different timestamp on the fs???
|
||||
if name == "nixpkgs" then 0 else 1;
|
||||
path = "${clan-core.inputs.${name}}";
|
||||
path = "${flake.inputs.${name}}";
|
||||
type = "path";
|
||||
};
|
||||
}
|
||||
|
||||
@@ -33,7 +33,7 @@ in
|
||||
export NIX_STORE_DIR=$HOME
|
||||
cp -r ${clanCore} $out
|
||||
chmod +w -R $out
|
||||
cp ${mkOfflineFlakeLock clanCore} $out/flake.lock
|
||||
cp ${mkOfflineFlakeLock self} $out/flake.lock
|
||||
nix flake lock $out --extra-experimental-features 'nix-command flakes'
|
||||
clanCoreHash=$(nix hash path ${clanCore} --extra-experimental-features 'nix-command')
|
||||
'';
|
||||
|
||||
Reference in New Issue
Block a user