about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--configure.ac2
-rw-r--r--corepkgs/config.nix.in1
-rw-r--r--corepkgs/unpack-channel.nix7
-rw-r--r--nix.spec.in1
4 files changed, 8 insertions, 3 deletions
diff --git a/configure.ac b/configure.ac
index 54b8dff08bb2..e963fbc9f5d0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -183,10 +183,10 @@ NEED_PROG(perl, perl)
 NEED_PROG(sed, sed)
 NEED_PROG(tar, tar)
 NEED_PROG(bzip2, bzip2)
+NEED_PROG(gzip, gzip)
 NEED_PROG(xz, xz)
 AC_PATH_PROG(dot, dot)
 AC_PATH_PROG(dblatex, dblatex)
-AC_PATH_PROG(gzip, gzip)
 AC_PATH_PROG(pv, pv, pv)
 
 
diff --git a/corepkgs/config.nix.in b/corepkgs/config.nix.in
index 6f6ec6de1a30..3819dc96c164 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 5c2a61e66946..b309fc41ec01 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
diff --git a/nix.spec.in b/nix.spec.in
index a6a0b370da33..d09140562672 100644
--- a/nix.spec.in
+++ b/nix.spec.in
@@ -22,6 +22,7 @@ Requires: /usr/bin/perl
 Requires: curl
 Requires: perl-DBD-SQLite
 Requires: bzip2
+Requires: gzip
 Requires: xz
 BuildRequires: bzip2-devel
 BuildRequires: sqlite-devel