summary refs log tree commit diff
path: root/pkgs/tools/archivers/unzip
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2014-09-08 22:32:11 +0200
committerEelco Dolstra <eelco.dolstra@logicblox.com>2014-09-08 22:32:11 +0200
commit88822dc23ca04de51adeb9e1d6af3477455bf0ed (patch)
tree28b9f30c3a7bd1d38e7c761c826915262d155090 /pkgs/tools/archivers/unzip
parente4e39f26baf47de7aec1577a6c7c2fcc6f4e2b7d (diff)
parent82797f98f2917e164db8691b516ed7f354b40ff4 (diff)
downloadnixpkgs-88822dc23ca04de51adeb9e1d6af3477455bf0ed.tar
nixpkgs-88822dc23ca04de51adeb9e1d6af3477455bf0ed.tar.gz
nixpkgs-88822dc23ca04de51adeb9e1d6af3477455bf0ed.tar.bz2
nixpkgs-88822dc23ca04de51adeb9e1d6af3477455bf0ed.tar.lz
nixpkgs-88822dc23ca04de51adeb9e1d6af3477455bf0ed.tar.xz
nixpkgs-88822dc23ca04de51adeb9e1d6af3477455bf0ed.tar.zst
nixpkgs-88822dc23ca04de51adeb9e1d6af3477455bf0ed.zip
Merge branch 'p/orig-modular-stdenv' of github.com:vcunat/nixpkgs into staging
Diffstat (limited to 'pkgs/tools/archivers/unzip')
-rw-r--r--pkgs/tools/archivers/unzip/default.nix24
-rw-r--r--pkgs/tools/archivers/unzip/setup-hook.sh5
2 files changed, 17 insertions, 12 deletions
diff --git a/pkgs/tools/archivers/unzip/default.nix b/pkgs/tools/archivers/unzip/default.nix
index f939c968c44..7f2c81e2797 100644
--- a/pkgs/tools/archivers/unzip/default.nix
+++ b/pkgs/tools/archivers/unzip/default.nix
@@ -1,14 +1,21 @@
 { stdenv, fetchurl, bzip2
 , enableNLS ? false, libnatspec }:
 
-stdenv.mkDerivation ({
+stdenv.mkDerivation {
   name = "unzip-6.0";
-  
+
   src = fetchurl {
     url = mirror://sourceforge/infozip/unzip60.tar.gz;
     sha256 = "0dxx11knh3nk95p2gg2ak777dd11pr7jx5das2g49l262scrcv83";
   };
 
+  patches = stdenv.lib.optional enableNLS
+    (fetchurl {
+      url = "http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-arch/unzip/files/unzip-6.0-natspec.patch?revision=1.1";
+      name = "unzip-6.0-natspec.patch";
+      sha256 = "67ab260ae6adf8e7c5eda2d1d7846929b43562943ec4aff629bd7018954058b1";
+    });
+
   nativeBuildInputs = [ bzip2 ];
   buildInputs = [ bzip2 ] ++ stdenv.lib.optional enableNLS libnatspec;
 
@@ -24,19 +31,12 @@ stdenv.mkDerivation ({
 
   installFlags = "prefix=$(out)";
 
+  setupHook = ./setup-hook.sh;
+
   meta = {
     homepage = http://www.info-zip.org;
     description = "An extraction utility for archives compressed in .zip format";
     license = "free"; # http://www.info-zip.org/license.html
     platforms = stdenv.lib.platforms.all;
   };
-} // (if enableNLS then {
-  patches =
-    [ ( fetchurl {
-        url =
-        "http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-arch/unzip/files/unzip-6.0-natspec.patch?revision=1.1";
-        name = "unzip-6.0-natspec.patch";
-        sha256 = "67ab260ae6adf8e7c5eda2d1d7846929b43562943ec4aff629bd7018954058b1";
-      })
-    ];
-} else {}))
+}
diff --git a/pkgs/tools/archivers/unzip/setup-hook.sh b/pkgs/tools/archivers/unzip/setup-hook.sh
new file mode 100644
index 00000000000..4cad0fe7e91
--- /dev/null
+++ b/pkgs/tools/archivers/unzip/setup-hook.sh
@@ -0,0 +1,5 @@
+unpackCmdHooks+=(_tryUnzip)
+_tryUnzip() {
+    if ! [[ "foo.zip" =~ \.zip$ ]]; then return 1; fi
+    unzip -qq "$curSrc"
+}