Merge pull request #336488 from rhelmot/freebsd-stdenv-no-features

stdenv/freebsd: build bootstrap files without recursive-nix feature

authored by philiptaron.tngl.sh and committed by GitHub 3014c8be 95cd4025

+7 -10
+7 -10
pkgs/stdenv/freebsd/make-bootstrap-tools.nix
··· 1 1 { pkgs ? import ../../.. {} }: 2 2 let 3 - inherit (pkgs) runCommand lib; 3 + inherit (pkgs) runCommand closureInfo; 4 4 # splicing doesn't seem to work right here 5 - inherit (pkgs.buildPackages) nix rsync; 5 + inherit (pkgs.buildPackages) dumpnar rsync; 6 6 pack-all = 7 7 packCmd: name: pkgs: fixups: 8 8 (runCommand name { 9 - requiredSystemFeatures = [ "recursive-nix" ]; 10 - nativeBuildInputs = [ nix rsync ]; 9 + nativeBuildInputs = [ rsync dumpnar ]; 11 10 } '' 12 11 base=$PWD 13 - requisites="$(nix-store --query --requisites ${lib.concatStringsSep " " pkgs} | tac)" 14 - 15 - rm -f $base/nix-support/propagated-build-inputs 12 + requisites="$(cat ${closureInfo { rootPaths = pkgs; }}/store-paths)" 16 13 for f in $requisites; do 17 14 cd $f 18 - rsync --chmod="+w" -av . $base 15 + rsync --safe-links --chmod="+w" -av . $base 19 16 done 20 17 cd $base 21 18 ··· 28 25 cat $f >>"$base/nix-support/$f" 29 26 done 30 27 done 28 + rm -f $base/nix-support/propagated-build-inputs 31 29 cd $base 32 30 33 31 ${fixups} 34 32 35 - rm .nix-socket 36 33 ${packCmd} 37 34 ''); 38 - nar-all = pack-all "nix-store --dump . | xz -9 -e -T $NIX_BUILD_CORES >$out"; 35 + nar-all = pack-all "dumpnar . | xz -9 -e -T $NIX_BUILD_CORES >$out"; 39 36 tar-all = pack-all "XZ_OPT=\"-9 -e -T $NIX_BUILD_CORES\" tar cJf $out --hard-dereference --sort=name --numeric-owner --owner=0 --group=0 --mtime=@1 ."; 40 37 coreutils-big = pkgs.coreutils.override { singleBinary = false; }; 41 38 mkdir = runCommand "mkdir" { coreutils = coreutils-big; } ''