at 24.11-pre 76 lines 1.9 kB view raw
1{ lib 2, stdenv 3, symlinkJoin 4, fetchurl 5, fetchzip 6, scons 7, zlib 8, libiconv 9}: 10 11stdenv.mkDerivation rec { 12 pname = "nsis"; 13 version = "3.06.1"; 14 15 src = 16 fetchurl { 17 url = "mirror://sourceforge/project/nsis/NSIS%203/${version}/nsis-${version}-src.tar.bz2"; 18 sha256 = "1w1z2m982l6j8lw8hy91c3979wbnqglcf4148f9v79vl32znhpcv"; 19 }; 20 srcWinDistributable = 21 fetchzip { 22 url = "mirror://sourceforge/project/nsis/NSIS%203/${version}/nsis-${version}.zip"; 23 sha256 = "04qm9jqbcybpwcrjlksggffdyafzwxxcaz9xhjw8w5rb95x7lw5q"; 24 }; 25 26 postUnpack = '' 27 mkdir -p $out/share/nsis 28 cp -avr ${srcWinDistributable}/{Contrib,Include,Plugins,Stubs} \ 29 $out/share/nsis 30 chmod -R u+w $out/share/nsis 31 ''; 32 33 nativeBuildInputs = [ scons ]; 34 buildInputs = [ zlib ] ++ lib.optionals stdenv.isDarwin [ libiconv ]; 35 36 CPPPATH = symlinkJoin { 37 name = "nsis-includes"; 38 paths = [ zlib.dev ] ++ lib.optionals stdenv.isDarwin [ libiconv ]; 39 }; 40 41 LIBPATH = symlinkJoin { 42 name = "nsis-libs"; 43 paths = [ zlib ] ++ lib.optionals stdenv.isDarwin [ libiconv ]; 44 }; 45 46 sconsFlags = [ 47 "SKIPSTUBS=all" 48 "SKIPPLUGINS=all" 49 "SKIPUTILS=all" 50 "SKIPMISC=all" 51 "NSIS_CONFIG_CONST_DATA=no" 52 ] ++ lib.optional stdenv.isDarwin "APPEND_LINKFLAGS=-liconv"; 53 54 preBuild = '' 55 sconsFlagsArray+=( 56 "PATH=$PATH" 57 "CC=$CC" 58 "CXX=$CXX" 59 "APPEND_CPPPATH=$CPPPATH/include" 60 "APPEND_LIBPATH=$LIBPATH/lib" 61 ) 62 ''; 63 64 prefixKey = "PREFIX="; 65 installTargets = [ "install-compiler" ]; 66 67 meta = with lib; { 68 description = "A free scriptable win32 installer/uninstaller system that doesn't suck and isn't huge"; 69 homepage = "https://nsis.sourceforge.io/"; 70 license = licenses.zlib; 71 platforms = platforms.unix; 72 maintainers = with maintainers; [ pombeirp ]; 73 mainProgram = "makensis"; 74 broken = stdenv.isDarwin; 75 }; 76}