nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ lib
2, stdenv
3, fetchurl
4, jdk
5, jre
6, swt
7, makeWrapper
8, xorg
9, dpkg
10}:
11
12stdenv.mkDerivation rec {
13 pname = "ipscan";
14 version = "3.9.0";
15
16 src = fetchurl {
17 url = "https://github.com/angryip/ipscan/releases/download/${version}/ipscan_${version}_all.deb";
18 sha256 = "sha256-HpsEp5XSz118cbV2wT81hzQT4cgDEBnpUbpl45ZVvlg=";
19 };
20
21 sourceRoot = ".";
22 unpackCmd = "${dpkg}/bin/dpkg-deb -x $src .";
23
24 nativeBuildInputs = [ makeWrapper ];
25
26 buildInputs = [ jdk ];
27
28 installPhase = ''
29 mkdir -p $out/share
30 cp usr/lib/ipscan/ipscan-any-${version}.jar $out/share/${pname}-${version}.jar
31
32 makeWrapper ${jre}/bin/java $out/bin/ipscan \
33 --prefix LD_LIBRARY_PATH : "$out/lib/:${lib.makeLibraryPath [ swt xorg.libXtst ]}" \
34 --add-flags "-Xmx256m -cp $out/share/${pname}-${version}.jar:${swt}/jars/swt.jar net.azib.ipscan.Main"
35
36 mkdir -p $out/share/applications
37 cp usr/share/applications/ipscan.desktop $out/share/applications/ipscan.desktop
38 substituteInPlace $out/share/applications/ipscan.desktop --replace "/usr/bin" "$out/bin"
39
40 mkdir -p $out/share/pixmaps
41 cp usr/share/pixmaps/ipscan.png $out/share/pixmaps/ipscan.png
42 '';
43
44 meta = with lib; {
45 description = "Fast and friendly network scanner";
46 homepage = "https://angryip.org";
47 changelog = "https://github.com/angryip/ipscan/blob/${version}/CHANGELOG";
48 sourceProvenance = with sourceTypes; [ binaryBytecode ];
49 license = licenses.gpl2Only;
50 platforms = [ "x86_64-linux" ];
51 maintainers = with maintainers; [ kylesferrazza ];
52 };
53}