anchor.diff:  , lib
   , fetchurl
   , autoPatchelfHook
  +, makeWrapper
  +# minimum dependencies
   , alsaLib
  +, fontconfig
   , freetype
  -, fontconfig
  +, libffi
  +, xorg
   , zlib
  -, xorg
  -, libffi
  +# runtime dependencies
  +, cups
  +# runtime dependencies for GTK+ Look and Feel
  +, gtkSupport ? true
  +, cairo
  +, glib
  +, gtk3
   }:
   
   let
     cpuName = stdenv.hostPlatform.parsed.cpu.name;
  +  runtimeDependencies = [
  +    cups
  +  ] ++ lib.optionals gtkSupport [
  +    cairo glib gtk3
  +  ];
  +  runtimeLibraryPath = lib.makeLibraryPath runtimeDependencies;
   in
   
   let result = stdenv.mkDerivation rec {
  
positive.code:     cat <<EOF >> "$out/nix-support/setup-hook"
      if [ -z "\''${JAVA_HOME-}" ]; then export JAVA_HOME=$out; fi
      EOF
    '';
  
    preFixup = ''
  
negative.code:   };
  
    buildInputs = [
      alsaLib # libasound.so wanted by lib/libjsound.so
      fontconfig
      freetype
      stdenv.cc.cc.lib # libstdc++.so.6
      xorg.libX11
      xorg.libXext
      xorg.libXi
      xorg.libXrender
      xorg.libXtst
      zlib
    ] ++ lib.optional stdenv.isAarch32 libffi;
  
    nativeBuildInputs = [ autoPatchelfHook makeWrapper ];
  
    # See: https://github.com/NixOS/patchelf/issues/10
    dontStrip = 1;
  