innoextract: support extraction of multi-file archives

This commit is contained in:
Peter Hoeg 2018-01-18 15:27:39 +08:00
parent 0e23e81cc0
commit 99483fbc44

View File

@ -1,4 +1,6 @@
{stdenv, fetchurl, cmake, python, doxygen, lzma, boost}: { stdenv, fetchurl, cmake, doxygen, makeWrapper, python
, boost, lzma
, withGog ? false, unar ? null }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "innoextract-1.6"; name = "innoextract-1.6";
@ -8,14 +10,23 @@ stdenv.mkDerivation rec {
sha256 = "0gh3q643l8qlwla030cmf3qdcdr85ixjygkb7j4dbm7zbwa3yik6"; sha256 = "0gh3q643l8qlwla030cmf3qdcdr85ixjygkb7j4dbm7zbwa3yik6";
}; };
buildInputs = [ python doxygen lzma boost ]; buildInputs = [ python lzma boost ];
nativeBuildInputs = [ cmake ];
nativeBuildInputs = [ cmake makeWrapper ];
enableParallelBuilding = true;
# we need unar to for multi-archive extraction
postFixup = stdenv.lib.optionalString withGog ''
wrapProgram $out/bin/innoextract \
--prefix PATH : ${stdenv.lib.makeBinPath [ unar ]}
'';
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "A tool to unpack installers created by Inno Setup"; description = "A tool to unpack installers created by Inno Setup";
homepage = http://constexpr.org/innoextract/; homepage = http://constexpr.org/innoextract/;
platforms = platforms.linux;
license = licenses.zlib; license = licenses.zlib;
maintainers = with maintainers; [ abbradar ]; maintainers = with maintainers; [ abbradar ];
platforms = platforms.linux;
}; };
} }