summaryrefslogtreecommitdiffstats
path: root/corepkgs
diff options
context:
space:
mode:
authorGergely Risko <gergely@risko.hu>2013-05-14 15:10:14 +0200
committerEelco Dolstra <eelco.dolstra@logicblox.com>2013-07-12 11:29:37 +0200
commit25a00cae5bf702b9e844b05923a9c59de9df6788 (patch)
tree161dce3706f6a840701aafb036ed2e3daa651459 /corepkgs
parent620d57f036be5a8b8fa04ee1a2aa2329e652e0f0 (diff)
Add gzip support for channel unpacking
Diffstat (limited to 'corepkgs')
-rw-r--r--corepkgs/config.nix.in1
-rw-r--r--corepkgs/unpack-channel.nix7
2 files changed, 6 insertions, 2 deletions
diff --git a/corepkgs/config.nix.in b/corepkgs/config.nix.in
index 6f6ec6de1..3819dc96c 100644
--- a/corepkgs/config.nix.in
+++ b/corepkgs/config.nix.in
@@ -7,6 +7,7 @@ in {
shell = "@shell@";
coreutils = "@coreutils@";
bzip2 = "@bzip2@";
+ gzip = "@gzip@";
xz = "@xz@";
tar = "@tar@";
tarFlags = "@tarFlags@";
diff --git a/corepkgs/unpack-channel.nix b/corepkgs/unpack-channel.nix
index 5c2a61e66..b309fc41e 100644
--- a/corepkgs/unpack-channel.nix
+++ b/corepkgs/unpack-channel.nix
@@ -6,9 +6,12 @@ let
''
mkdir $out
cd $out
- pat="\.xz\$"
- if [[ "$src" =~ $pat ]]; then
+ xzpat="\.xz\$"
+ gzpat="\.gz\$"
+ if [[ "$src" =~ $xzpat ]]; then
${xz} -d < $src | ${tar} xf - ${tarFlags}
+ else if [[ "$src" =~ $gzpat ]]; then
+ ${gzip} -d < $src | ${tar} xf - ${tarFlags}
else
${bzip2} -d < $src | ${tar} xf - ${tarFlags}
fi