ff1a94e523
The nixpkgs-unstable channel's programs.sqlite was used to identify packages producing exactly one binary, and these automatically added to their package definitions wherever possible.
62 lines
1.5 KiB
Nix
62 lines
1.5 KiB
Nix
{ lib, stdenv
|
|
, fetchFromGitHub
|
|
, cmake
|
|
, pkg-config
|
|
, wrapQtAppsHook
|
|
, dnsutils
|
|
, nmap
|
|
, qtbase
|
|
, qtscript
|
|
, qtwebengine
|
|
}:
|
|
|
|
stdenv.mkDerivation rec {
|
|
pname = "nmapsi4";
|
|
version = "0.5-alpha2";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "nmapsi4";
|
|
repo = "nmapsi4";
|
|
rev = "v${version}";
|
|
sha256 = "sha256-q3XfwJ4TGK4E58haN0Q0xRH4GDpKD8VZzyxHe/VwBqY=";
|
|
};
|
|
|
|
nativeBuildInputs = [ cmake pkg-config wrapQtAppsHook ];
|
|
|
|
buildInputs = [ qtbase qtscript qtwebengine ];
|
|
|
|
postPatch = ''
|
|
substituteInPlace src/platform/digmanager.cpp \
|
|
--replace '"dig"' '"${dnsutils}/bin/dig"'
|
|
substituteInPlace src/platform/discover.cpp \
|
|
--replace '"nping"' '"${nmap}/bin/nping"'
|
|
for f in \
|
|
src/platform/monitor/monitor.cpp \
|
|
src/platform/nsemanager.cpp ; do
|
|
|
|
substituteInPlace $f \
|
|
--replace '"nmap"' '"${nmap}/bin/nmap"'
|
|
done
|
|
'';
|
|
|
|
postInstall = ''
|
|
mv $out/share/applications/kde4/*.desktop $out/share/applications
|
|
rmdir $out/share/applications/kde4
|
|
|
|
for f in $out/share/applications/* ; do
|
|
substituteInPlace $f \
|
|
--replace Qt4 Qt5 \
|
|
--replace Exec=nmapsi4 Exec=$out/bin/nmapsi4 \
|
|
--replace "Exec=kdesu nmapsi4" "Exec=kdesu $out/bin/nmapsi4"
|
|
done
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "Qt frontend for nmap";
|
|
mainProgram = "nmapsi4";
|
|
license = licenses.gpl2;
|
|
maintainers = with maintainers; [ peterhoeg ];
|
|
inherit (src.meta) homepage;
|
|
};
|
|
}
|