aboutsummaryrefslogtreecommitdiff
path: root/corepkgs
diff options
context:
space:
mode:
Diffstat (limited to 'corepkgs')
-rw-r--r--corepkgs/config.nix.in3
-rw-r--r--corepkgs/nar.nix9
2 files changed, 7 insertions, 5 deletions
diff --git a/corepkgs/config.nix.in b/corepkgs/config.nix.in
index b324d732a..1be4bd090 100644
--- a/corepkgs/config.nix.in
+++ b/corepkgs/config.nix.in
@@ -6,7 +6,8 @@ in {
perl = "@perl@";
shell = "@shell@";
coreutils = "@coreutils@";
- bzip2 = fromEnv "NIX_BZIP2" "@bzip2@";
+ bzip2 = "@bzip2@";
+ xz = "@xz@";
tar = "@tar@";
tr = "@tr@";
nixBinDir = fromEnv "NIX_BIN_DIR" "@bindir@";
diff --git a/corepkgs/nar.nix b/corepkgs/nar.nix
index 4747dc31d..c5155dcc9 100644
--- a/corepkgs/nar.nix
+++ b/corepkgs/nar.nix
@@ -8,14 +8,15 @@ let
echo "packing ‘$storePath’..."
mkdir $out
- dst=$out/tmp.nar.bz2
+ dst=$out/tmp.nar.xz
set -o pipefail
- nix-store --dump "$storePath" | ${bzip2} > $dst
+ nix-store --dump "$storePath" | ${xz} -9 > $dst
- nix-hash --flat --type $hashAlgo --base32 $dst > $out/narbz2-hash
+ hash=$(nix-hash --flat --type $hashAlgo --base32 $dst)
+ echo -n $hash > $out/nar-compressed-hash
- mv $out/tmp.nar.bz2 $out/$(cat $out/narbz2-hash).nar.bz2
+ mv $dst $out/$hash.nar.xz
'';
in