anchor.diff:  { stdenv, fetchurl, libpcap, pkgconfig, openssl
   , graphicalSupport ? false
  +, gtk2 ? null
   , libX11 ? null
  -, gtk2 ? 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;
   
  
positive.code:   # 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}";
  
negative.code:     ++ optional (!graphicalSupport) "--without-zenmap"
      ;
  
    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";
  