![Bjørn Forsman](/assets/img/avatar_default.png)
This reverts commit 278d3050ae
because it
breaks zenmap:
$ zenmap
Could not import the zenmapGUI.App module: 'No module named zenmapGUI.App'.
I checked in these directories:
/nix/store/2hiz11plgjdrk2mziwc2jcxqalqh9hii-nmap-graphical-7.12/bin
/home/bfo/forks/nixpkgs
/nix/store/0l4lriqf07qah8c0kh9kcyc8l5iyij16-python-2.7.12/lib/python27.zip
/nix/store/0l4lriqf07qah8c0kh9kcyc8l5iyij16-python-2.7.12/lib/python2.7
/nix/store/0l4lriqf07qah8c0kh9kcyc8l5iyij16-python-2.7.12/lib/python2.7/plat-linux2
/nix/store/0l4lriqf07qah8c0kh9kcyc8l5iyij16-python-2.7.12/lib/python2.7/lib-tk
/nix/store/0l4lriqf07qah8c0kh9kcyc8l5iyij16-python-2.7.12/lib/python2.7/lib-old
/nix/store/0l4lriqf07qah8c0kh9kcyc8l5iyij16-python-2.7.12/lib/python2.7/lib-dynload
/nix/store/0l4lriqf07qah8c0kh9kcyc8l5iyij16-python-2.7.12/lib/python2.7/site-packages
If you installed Zenmap in another directory, you may have to add the
modules directory to the PYTHONPATH environment variable.
56 lines
1.9 KiB
Nix
56 lines
1.9 KiB
Nix
{ stdenv, fetchurl, libpcap, pkgconfig, openssl
|
|
, graphicalSupport ? false
|
|
, libX11 ? null
|
|
, gtk2 ? null
|
|
, withPython ? false # required for the `ndiff` binary
|
|
, python2Packages ? null
|
|
, makeWrapper ? null
|
|
}:
|
|
|
|
assert withPython -> python2Packages != null;
|
|
|
|
with stdenv.lib;
|
|
|
|
let
|
|
|
|
# Zenmap (the graphical program) also requires Python,
|
|
# so automatically enable pythonSupport if graphicalSupport is requested.
|
|
pythonSupport = withPython || graphicalSupport;
|
|
|
|
in stdenv.mkDerivation rec {
|
|
name = "nmap${optionalString graphicalSupport "-graphical"}-${version}";
|
|
version = "7.31";
|
|
|
|
src = fetchurl {
|
|
url = "https://nmap.org/dist/nmap-${version}.tar.bz2";
|
|
sha256 = "0hiqb28950kn4bjsmw0ksfyss7j2qdmgrj3xsjf7073pq01lx7yb";
|
|
};
|
|
|
|
patches = ./zenmap.patch;
|
|
|
|
configureFlags = []
|
|
++ optional (!pythonSupport) "--without-ndiff"
|
|
++ 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
|
|
];
|
|
|
|
meta = {
|
|
description = "A free and open source utility for network discovery and security auditing";
|
|
homepage = http://www.nmap.org;
|
|
license = licenses.gpl2;
|
|
platforms = platforms.all;
|
|
maintainers = with maintainers; [ mornfall thoughtpolice fpletz ];
|
|
};
|
|
}
|