anchor.diff:  { fetchurl, fetchpatch, stdenv, pkgconfig, libgcrypt, libassuan, libksba
  -, libgpgerror, libiconv, npth, gettext, texinfo, pcsclite, sqlite
  -, buildPackages
  +, libgpgerror, libiconv, npth, gettext, texinfo, buildPackages
   
   # Each of the dependencies below are optional.
   # Gnupg can be built without them at the cost of reduced functionality.
  -, pinentry ? null, guiSupport ? false
  -, adns ? null, gnutls ? null, libusb ? null, openldap ? null
  -, readline ? null, zlib ? null, bzip2 ? null
  +, guiSupport ? true, enableMinimal ? false
  +, adns ? null , bzip2 ? null , gnutls ? null , libusb ? null , openldap ? null
  +, pcsclite ? null , pinentry ? null , readline ? null , sqlite ? null , zlib ?
  +null
   }:
   
   with stdenv.lib;
   
  -assert guiSupport -> pinentry != null;
  +assert guiSupport -> pinentry != null && enableMinimal == false;
   
   stdenv.mkDerivation rec {
     pname = "gnupg";
  
positive.code:   postPatch = ''
      sed -i 's,hkps://hkps.pool.sks-keyservers.net,hkps://keys.openpgp.org,g' \
          configure doc/dirmngr.texi doc/gnupg.info-1
    '' + stdenv.lib.optionalString stdenv.isLinux ''
      sed -i 's,"libpcsclite\.so[^"]*","${stdenv.lib.getLib pcsclite}/lib/libpcsclite.so",g' scd/scdaemon.c
    ''; #" fix Emacs syntax highlighting :-(
  
  
negative.code:     "--with-npth-prefix=${npth}"
    ] ++ optional guiSupport "--with-pinentry-pgm=${pinentry}/${pinentryBinaryPath}";
  
    postInstall = if enableMinimal
    then ''
      rm -r $out/{libexec,sbin,share}
      for f in `find $out/bin -type f -not -name gpg`
      do
        rm $f
      done
    '' else ''
      mkdir -p $out/lib/systemd/user
      for f in doc/examples/systemd-user/*.{service,socket} ; do
        substitute $f $out/lib/systemd/user/$(basename $f) \
  