Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at 16.09 44 lines 1.5 kB view raw
1{ stdenv, fetchurl, libpcap, pkgconfig, openssl 2, graphicalSupport ? false 3, libX11 ? null 4, gtk ? null 5, pythonPackages 6, makeWrapper ? null 7}: 8 9with stdenv.lib; 10 11let 12 inherit (pythonPackages) python pygtk pygobject pycairo pysqlite; 13in stdenv.mkDerivation rec { 14 name = "nmap${optionalString graphicalSupport "-graphical"}-${version}"; 15 version = "7.12"; 16 17 src = fetchurl { 18 url = "http://nmap.org/dist/nmap-${version}.tar.bz2"; 19 sha256 = "014vagh9ak10hidwzp9s6g30y5h5fhsh8wykcnc1hnn9hwm0ipv3"; 20 }; 21 22 patches = ./zenmap.patch; 23 24 configureFlags = optionalString (!graphicalSupport) "--without-zenmap"; 25 26 postInstall = '' 27 wrapProgram $out/bin/ndiff --prefix PYTHONPATH : "$(toPythonPath $out)" --prefix PYTHONPATH : "$PYTHONPATH" 28 '' + optionalString graphicalSupport '' 29 wrapProgram $out/bin/zenmap --prefix PYTHONPATH : "$(toPythonPath $out)" --prefix PYTHONPATH : "$PYTHONPATH" --prefix PYTHONPATH : $(toPythonPath ${pygtk})/gtk-2.0 --prefix PYTHONPATH : $(toPythonPath ${pygobject})/gtk-2.0 --prefix PYTHONPATH : $(toPythonPath ${pycairo})/gtk-2.0 30 ''; 31 32 buildInputs = [ libpcap pkgconfig openssl makeWrapper python ] 33 ++ optionals graphicalSupport [ 34 libX11 gtk pygtk pysqlite pygobject pycairo 35 ]; 36 37 meta = { 38 description = "A free and open source utility for network discovery and security auditing"; 39 homepage = http://www.nmap.org; 40 license = licenses.gpl2; 41 platforms = platforms.all; 42 maintainers = with maintainers; [ mornfall thoughtpolice fpletz ]; 43 }; 44}