Merge pull request #33999 from peterhoeg/f/inno
innoextract: support extraction of multi-file archives
This commit is contained in:
commit
2483a0d0c1
@ -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;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -1,8 +1,10 @@
|
|||||||
{ stdenv, fetchurl, gnustep, unzip, bzip2, zlib, icu, openssl }:
|
{ stdenv, fetchurl, gnustep, unzip, bzip2, zlib, icu, openssl }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
let
|
||||||
name = "${pname}-${version}";
|
|
||||||
pname = "unar";
|
pname = "unar";
|
||||||
|
|
||||||
|
in stdenv.mkDerivation rec {
|
||||||
|
name = "${pname}-${version}";
|
||||||
version = "1.10.1";
|
version = "1.10.1";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
@ -10,23 +12,20 @@ stdenv.mkDerivation rec {
|
|||||||
sha256 = "0aq9zlar5vzr5qxphws8dm7ax60bsfsw77f4ciwa5dq5lla715j0";
|
sha256 = "0aq9zlar5vzr5qxphws8dm7ax60bsfsw77f4ciwa5dq5lla715j0";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs = [
|
buildInputs = [ gnustep.base bzip2 icu openssl zlib ];
|
||||||
gnustep.make unzip gnustep.base bzip2.dev
|
|
||||||
zlib.dev icu.dev openssl.dev
|
nativeBuildInputs = [ gnustep.make unzip ];
|
||||||
];
|
|
||||||
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
substituteInPlace Makefile.linux \
|
for f in Makefile.linux ../UniversalDetector/Makefile.linux ; do
|
||||||
|
substituteInPlace $f \
|
||||||
--replace "CC = gcc" "CC=cc" \
|
--replace "CC = gcc" "CC=cc" \
|
||||||
--replace "CXX = g++" "CXX=c++" \
|
--replace "CXX = g++" "CXX=c++" \
|
||||||
--replace "OBJCC = gcc" "OBJCC=cc" \
|
--replace "OBJCC = gcc" "OBJCC=cc" \
|
||||||
--replace "OBJCXX = g++" "OBJCXX=c++"
|
--replace "OBJCXX = g++" "OBJCXX=c++"
|
||||||
|
done
|
||||||
substituteInPlace ../UniversalDetector/Makefile.linux \
|
|
||||||
--replace "CC = gcc" "CC=cc" \
|
|
||||||
--replace "CXX = g++" "CXX=c++" \
|
|
||||||
--replace "OBJCC = gcc" "OBJCC=c" \
|
|
||||||
--replace "OBJCXX = g++" "OBJCXX=c++"
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
makefile = "Makefile.linux";
|
makefile = "Makefile.linux";
|
||||||
@ -34,17 +33,16 @@ stdenv.mkDerivation rec {
|
|||||||
sourceRoot = "./The Unarchiver/XADMaster";
|
sourceRoot = "./The Unarchiver/XADMaster";
|
||||||
|
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir -p $out/bin
|
runHook preInstall
|
||||||
cp lsar $out/bin
|
|
||||||
cp unar $out/bin
|
|
||||||
|
|
||||||
mkdir -p $out/share/man/man1
|
install -Dm755 -t $out/bin lsar unar
|
||||||
cp ../Extra/lsar.1 $out/share/man/man1
|
install -Dm644 -t $out/share/man/man1 ../Extra/{lsar,unar}.1
|
||||||
cp ../Extra/unar.1 $out/share/man/man1
|
|
||||||
|
|
||||||
mkdir -p $out/etc/bash_completion.d
|
mkdir -p $out/etc/bash_completion.d
|
||||||
cp ../Extra/lsar.bash_completion $out/etc/bash_completion.d/lsar
|
cp ../Extra/lsar.bash_completion $out/etc/bash_completion.d/lsar
|
||||||
cp ../Extra/unar.bash_completion $out/etc/bash_completion.d/unar
|
cp ../Extra/unar.bash_completion $out/etc/bash_completion.d/unar
|
||||||
|
|
||||||
|
runHook postInstall
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with stdenv.lib; {
|
meta = with stdenv.lib; {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user