forked from lix-project/lix
Artemis Tosini
201e8b6994
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
38 lines
938 B
Nix
38 lines
938 B
Nix
{
|
|
buildPackages,
|
|
cacert,
|
|
nix,
|
|
system,
|
|
}:
|
|
let
|
|
rootPaths = [
|
|
nix
|
|
cacert
|
|
];
|
|
installerClosureInfo = buildPackages.closureInfo { inherit rootPaths; };
|
|
|
|
meta.description = "Distribution-independent Lix bootstrap binaries for ${system}";
|
|
in
|
|
buildPackages.runCommand "lix-binary-tarball-${nix.version}"
|
|
{
|
|
inherit meta;
|
|
passthru.rootPaths = rootPaths;
|
|
}
|
|
''
|
|
cp ${installerClosureInfo}/registration $TMPDIR/reginfo
|
|
|
|
dir=lix-${nix.version}-${system}
|
|
fn=$out/$dir.tar.xz
|
|
mkdir -p $out/nix-support
|
|
echo "file binary-dist $fn" >> $out/nix-support/hydra-build-products
|
|
tar cvfJ $fn \
|
|
--owner=0 --group=0 --mode=u+rw,uga+r \
|
|
--mtime='1970-01-01' \
|
|
--absolute-names \
|
|
--hard-dereference \
|
|
--transform "s,$TMPDIR/reginfo,$dir/.reginfo," \
|
|
--transform "s,$NIX_STORE,$dir/store,S" \
|
|
$TMPDIR/reginfo \
|
|
$(cat ${installerClosureInfo}/store-paths)
|
|
''
|