nix-support/binary-tarball.nix: Pass through root paths

Passing through root paths allows external programs to see
which nix and cacert are in a binary tarball,
e.g. to recreate it from substituters

Change-Id: I27431134df53bbc6623484f8a0822004b51f7c87
This commit is contained in:
Artemis Tosini 2024-07-13 23:22:43 +00:00
parent a8f443d960
commit 201e8b6994
Signed by: artemist
GPG key ID: EE5227935FE3FF18

View file

@ -5,16 +5,20 @@
system, system,
}: }:
let let
installerClosureInfo = buildPackages.closureInfo {
rootPaths = [ rootPaths = [
nix nix
cacert cacert
]; ];
}; installerClosureInfo = buildPackages.closureInfo { inherit rootPaths; };
meta.description = "Distribution-independent Lix bootstrap binaries for ${system}"; meta.description = "Distribution-independent Lix bootstrap binaries for ${system}";
in in
buildPackages.runCommand "lix-binary-tarball-${nix.version}" { inherit meta; } '' buildPackages.runCommand "lix-binary-tarball-${nix.version}"
{
inherit meta;
passthru.rootPaths = rootPaths;
}
''
cp ${installerClosureInfo}/registration $TMPDIR/reginfo cp ${installerClosureInfo}/registration $TMPDIR/reginfo
dir=lix-${nix.version}-${system} dir=lix-${nix.version}-${system}
@ -30,4 +34,4 @@ buildPackages.runCommand "lix-binary-tarball-${nix.version}" { inherit meta; } '
--transform "s,$NIX_STORE,$dir/store,S" \ --transform "s,$NIX_STORE,$dir/store,S" \
$TMPDIR/reginfo \ $TMPDIR/reginfo \
$(cat ${installerClosureInfo}/store-paths) $(cat ${installerClosureInfo}/store-paths)
'' ''