diff options
author | Thomas Tuegel <ttuegel@gmail.com> | 2016-10-06 09:51:02 -0500 |
---|---|---|
committer | Thomas Tuegel <ttuegel@gmail.com> | 2016-10-06 09:51:02 -0500 |
commit | 2e255a2edddfe5ca0e44f55d6e4bd82737cbb884 (patch) | |
tree | c785d80650dc2d074244525401246fc6ef07a468 /pkgs/tools/security | |
parent | e3deccc0d7a42b0ae1d5e337cd6b0b9488c2295a (diff) | |
parent | 16dafb018e09363bfae3949a8261c18ee7880781 (diff) | |
download | nixlib-2e255a2edddfe5ca0e44f55d6e4bd82737cbb884.tar nixlib-2e255a2edddfe5ca0e44f55d6e4bd82737cbb884.tar.gz nixlib-2e255a2edddfe5ca0e44f55d6e4bd82737cbb884.tar.bz2 nixlib-2e255a2edddfe5ca0e44f55d6e4bd82737cbb884.tar.lz nixlib-2e255a2edddfe5ca0e44f55d6e4bd82737cbb884.tar.xz nixlib-2e255a2edddfe5ca0e44f55d6e4bd82737cbb884.tar.zst nixlib-2e255a2edddfe5ca0e44f55d6e4bd82737cbb884.zip |
Merge branch 'staging'
Diffstat (limited to 'pkgs/tools/security')
-rw-r--r-- | pkgs/tools/security/nmap/default.nix | 37 |
1 files changed, 22 insertions, 15 deletions
diff --git a/pkgs/tools/security/nmap/default.nix b/pkgs/tools/security/nmap/default.nix index 3bc5d4158346..847faa2479e2 100644 --- a/pkgs/tools/security/nmap/default.nix +++ b/pkgs/tools/security/nmap/default.nix @@ -1,15 +1,25 @@ { stdenv, fetchurl, libpcap, pkgconfig, openssl , graphicalSupport ? false -, libX11 ? null , gtk2 ? null -, pythonPackages -, makeWrapper ? null +, libX11 ? null +, withPython ? false # required for the `ndiff` binary +, python2 ? null }: +assert withPython -> python2 != null; + with stdenv.lib; let - inherit (pythonPackages) python pygtk pygobject2 pycairo pysqlite; + + # Zenmap (the graphical program) also requires Python, + # so automatically enable pythonSupport if graphicalSupport is requested. + pythonSupport = withPython || graphicalSupport; + + pythonEnv = python2.withPackages(ps: with ps; [] + ++ optionals graphicalSupport [ pycairo pygobject2 pygtk pysqlite ] + ); + in stdenv.mkDerivation rec { name = "nmap${optionalString graphicalSupport "-graphical"}-${version}"; version = "7.12"; @@ -21,18 +31,15 @@ in stdenv.mkDerivation rec { patches = ./zenmap.patch; - configureFlags = optionalString (!graphicalSupport) "--without-zenmap"; - - postInstall = '' - wrapProgram $out/bin/ndiff --prefix PYTHONPATH : "$(toPythonPath $out)" --prefix PYTHONPATH : "$PYTHONPATH" - '' + optionalString graphicalSupport '' - wrapProgram $out/bin/zenmap --prefix PYTHONPATH : "$(toPythonPath $out)" --prefix PYTHONPATH : "$PYTHONPATH" --prefix PYTHONPATH : $(toPythonPath ${pygtk})/gtk-2.0 --prefix PYTHONPATH : $(toPythonPath ${pygobject2})/gtk-2.0 --prefix PYTHONPATH : $(toPythonPath ${pycairo})/gtk-2.0 - ''; + configureFlags = [] + ++ optional (!pythonSupport) "--without-ndiff" + ++ optional (!graphicalSupport) "--without-zenmap" + ; - buildInputs = [ libpcap pkgconfig openssl makeWrapper python ] - ++ optionals graphicalSupport [ - libX11 gtk2 pygtk pysqlite pygobject2 pycairo - ]; + buildInputs = [ libpcap pkgconfig openssl ] + ++ optional pythonSupport pythonEnv + ++ optionals graphicalSupport [ gtk2 libX11 ] + ; meta = { description = "A free and open source utility for network discovery and security auditing"; |