flake: factor out binary tarball into its own file
Bit-for-bit identical, and this one is callPackage-able
Change-Id: Ic635687b0054e107271a9c24ae69101f5e0fba9e
This commit is contained in:
parent
99845e0e01
commit
629351163d
29
flake.nix
29
flake.nix
|
@ -116,34 +116,7 @@
|
|||
);
|
||||
|
||||
binaryTarball =
|
||||
nix: pkgs:
|
||||
let
|
||||
inherit (pkgs) buildPackages;
|
||||
installerClosureInfo = buildPackages.closureInfo { rootPaths = [ nix ]; };
|
||||
in
|
||||
|
||||
buildPackages.runCommand "nix-binary-tarball-${version}"
|
||||
{
|
||||
#nativeBuildInputs = lib.optional (system != "aarch64-linux") shellcheck;
|
||||
meta.description = "Distribution-independent Nix bootstrap binaries for ${pkgs.system}";
|
||||
}
|
||||
''
|
||||
cp ${installerClosureInfo}/registration $TMPDIR/reginfo
|
||||
|
||||
dir=nix-${version}-${pkgs.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)
|
||||
'';
|
||||
nix: pkgs: pkgs.callPackage ./nix-support/binary-tarball.nix { inherit nix version; };
|
||||
|
||||
overlayFor =
|
||||
getStdenv: final: prev:
|
||||
|
|
28
nix-support/binary-tarball.nix
Normal file
28
nix-support/binary-tarball.nix
Normal file
|
@ -0,0 +1,28 @@
|
|||
{
|
||||
buildPackages,
|
||||
nix,
|
||||
system,
|
||||
version,
|
||||
}:
|
||||
let
|
||||
installerClosureInfo = buildPackages.closureInfo { rootPaths = [ nix ]; };
|
||||
|
||||
meta.description = "Distribution-independent Nix bootstrap binaries for ${system}";
|
||||
in
|
||||
buildPackages.runCommand "nix-binary-tarball-${version}" { inherit meta; } ''
|
||||
cp ${installerClosureInfo}/registration $TMPDIR/reginfo
|
||||
|
||||
dir=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)
|
||||
''
|
Loading…
Reference in a new issue