about summary refs log tree commit diff
path: root/corepkgs
diff options
context:
space:
mode:
authorGergely Risko <gergely@risko.hu>2013-05-14T13·10+0200
committerEelco Dolstra <eelco.dolstra@logicblox.com>2013-07-12T09·29+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 6f6ec6de1a..3819dc96c1 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 5c2a61e669..b309fc41ec 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