2021-04-30 01:36:54 +01:00
|
|
|
{ lib
|
|
|
|
, stdenv
|
|
|
|
, symlinkJoin
|
2020-08-19 19:14:31 +01:00
|
|
|
, fetchurl
|
|
|
|
, fetchzip
|
|
|
|
, sconsPackages
|
|
|
|
, zlib
|
2021-04-30 01:36:54 +01:00
|
|
|
, libiconv
|
2020-08-19 19:14:31 +01:00
|
|
|
}:
|
2019-03-06 21:21:08 +00:00
|
|
|
|
2019-03-14 16:59:21 +00:00
|
|
|
stdenv.mkDerivation rec {
|
2019-08-15 13:41:18 +01:00
|
|
|
pname = "nsis";
|
2020-08-19 19:14:31 +01:00
|
|
|
version = "3.06.1";
|
2019-03-06 21:21:08 +00:00
|
|
|
|
|
|
|
src =
|
|
|
|
fetchurl {
|
2019-03-14 19:32:53 +00:00
|
|
|
url = "mirror://sourceforge/project/nsis/NSIS%203/${version}/nsis-${version}-src.tar.bz2";
|
2020-08-19 19:14:31 +01:00
|
|
|
sha256 = "1w1z2m982l6j8lw8hy91c3979wbnqglcf4148f9v79vl32znhpcv";
|
2019-03-06 21:21:08 +00:00
|
|
|
};
|
|
|
|
srcWinDistributable =
|
|
|
|
fetchzip {
|
2019-03-14 19:32:53 +00:00
|
|
|
url = "mirror://sourceforge/project/nsis/NSIS%203/${version}/nsis-${version}.zip";
|
2020-08-19 19:14:31 +01:00
|
|
|
sha256 = "04qm9jqbcybpwcrjlksggffdyafzwxxcaz9xhjw8w5rb95x7lw5q";
|
2019-03-06 21:21:08 +00:00
|
|
|
};
|
|
|
|
|
2019-03-14 16:53:36 +00:00
|
|
|
postUnpack = ''
|
|
|
|
mkdir -p $out/share/nsis
|
|
|
|
cp -avr ${srcWinDistributable}/{Contrib,Include,Plugins,Stubs} \
|
|
|
|
$out/share/nsis
|
2020-02-02 09:19:25 +00:00
|
|
|
chmod -R u+w $out/share/nsis
|
2019-03-14 16:53:36 +00:00
|
|
|
'';
|
|
|
|
|
2020-07-18 00:30:28 +01:00
|
|
|
nativeBuildInputs = [ sconsPackages.scons_3_1_2 ];
|
2021-04-30 01:36:54 +01:00
|
|
|
buildInputs = [ zlib ] ++ lib.optionals stdenv.isDarwin [ libiconv ];
|
|
|
|
|
|
|
|
CPPPATH = symlinkJoin {
|
|
|
|
name = "nsis-includes";
|
|
|
|
paths = [ zlib.dev ] ++ lib.optionals stdenv.isDarwin [ libiconv ];
|
|
|
|
};
|
|
|
|
|
|
|
|
LIBPATH = symlinkJoin {
|
|
|
|
name = "nsis-libs";
|
|
|
|
paths = [ zlib ] ++ lib.optionals stdenv.isDarwin [ libiconv ];
|
|
|
|
};
|
2019-03-06 21:21:08 +00:00
|
|
|
|
2019-03-14 16:53:36 +00:00
|
|
|
sconsFlags = [
|
|
|
|
"SKIPSTUBS=all"
|
|
|
|
"SKIPPLUGINS=all"
|
|
|
|
"SKIPUTILS=all"
|
|
|
|
"SKIPMISC=all"
|
|
|
|
"NSIS_CONFIG_CONST_DATA=no"
|
2021-04-30 01:36:54 +01:00
|
|
|
] ++ lib.optional stdenv.isDarwin "APPEND_LINKFLAGS=-liconv";
|
2019-03-14 16:53:36 +00:00
|
|
|
|
|
|
|
preBuild = ''
|
2021-04-30 01:36:54 +01:00
|
|
|
sconsFlagsArray+=(
|
|
|
|
"PATH=$PATH"
|
|
|
|
"CC=$CC"
|
|
|
|
"CXX=$CXX"
|
|
|
|
"APPEND_CPPPATH=$CPPPATH/include"
|
|
|
|
"APPEND_LIBPATH=$LIBPATH/lib"
|
|
|
|
)
|
2019-03-14 16:53:36 +00:00
|
|
|
'';
|
2019-03-06 21:21:08 +00:00
|
|
|
|
2019-03-14 16:53:36 +00:00
|
|
|
prefixKey = "PREFIX=";
|
2019-11-04 12:33:53 +00:00
|
|
|
installTargets = [ "install-compiler" ];
|
2019-03-06 21:21:08 +00:00
|
|
|
|
2021-01-11 07:54:33 +00:00
|
|
|
meta = with lib; {
|
2020-10-26 04:08:40 +00:00
|
|
|
description = "A free scriptable win32 installer/uninstaller system that doesn't suck and isn't huge";
|
2020-04-01 02:11:51 +01:00
|
|
|
homepage = "https://nsis.sourceforge.io/";
|
2019-03-06 21:21:08 +00:00
|
|
|
license = licenses.zlib;
|
2021-04-30 01:36:54 +01:00
|
|
|
platforms = platforms.unix;
|
2019-03-06 21:21:08 +00:00
|
|
|
maintainers = with maintainers; [ pombeirp ];
|
|
|
|
};
|
|
|
|
}
|