From 278d3050ae85e959e4c6485b5ad43bbba96eb829 Mon Sep 17 00:00:00 2001 From: Aneesh Agrawal Date: Thu, 22 Sep 2016 13:57:34 -0400 Subject: nmap: use python infra's .withPackages --- pkgs/tools/security/nmap/default.nix | 26 +++++++++++--------------- 1 file changed, 11 insertions(+), 15 deletions(-) (limited to 'pkgs/tools/security/nmap/default.nix') diff --git a/pkgs/tools/security/nmap/default.nix b/pkgs/tools/security/nmap/default.nix index ff32ba6fa25..847faa2479e 100644 --- a/pkgs/tools/security/nmap/default.nix +++ b/pkgs/tools/security/nmap/default.nix @@ -1,13 +1,12 @@ { stdenv, fetchurl, libpcap, pkgconfig, openssl , graphicalSupport ? false -, libX11 ? null , gtk2 ? null +, libX11 ? null , withPython ? false # required for the `ndiff` binary -, python2Packages ? null -, makeWrapper ? null +, python2 ? null }: -assert withPython -> python2Packages != null; +assert withPython -> python2 != null; with stdenv.lib; @@ -17,6 +16,10 @@ let # 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"; @@ -33,17 +36,10 @@ in stdenv.mkDerivation rec { ++ optional (!graphicalSupport) "--without-zenmap" ; - postInstall = optionalString pythonSupport '' - 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 $pygobject)/gtk-2.0 --prefix PYTHONPATH : $(toPythonPath $pycairo)/gtk-2.0 - ''; - - buildInputs = with python2Packages; [ libpcap pkgconfig openssl ] - ++ optionals pythonSupport [ 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"; -- cgit 1.4.1