anchor.diff: -{ stdenv, fetchurl
  +{ stdenv, fetchurl, desktop-file-utils
   , gtk3, libX11
   , makeWrapper, pkgconfig, perl, autoreconfHook, wrapGAppsHook
   }:
  
positive.code:   # disambiguation
    postInstall = ''
      (
        cd "$out"/bin ;
        for i in *; do ln -s "$i" "sgt-puzzle-$i"; done
      )
    '';
    preConfigure = ''
      perl mkfiles.pl
      export NIX_LDFLAGS="$NIX_LDFLAGS -lX11"
  
negative.code:   version = "20191114.1c0c49d";
  
    src = fetchurl {
      url = "http://www.chiark.greenend.org.uk/~sgtatham/puzzles/puzzles-${version}.tar.gz";
      sha256 = "01fi2f3w71bfbgcfr6gxdp5a9cxh4dshbflv83q2j5rxxs2ll870";
    };
  
    nativeBuildInputs = [ autoreconfHook desktop-file-utils makeWrapper
      pkgconfig perl wrapGAppsHook ];
  
    buildInputs = [ gtk3 libX11 ];
  
    makeFlags = ["prefix=$(out)" "gamesdir=$(out)/bin"];
  
    preInstall = ''
      mkdir -p "$out"/{bin,share/doc/sgtpuzzles,share/icons/hicolor/48x48/apps}
      cp gamedesc.txt LICENCE README "$out/share/doc/sgtpuzzles"
    '';
    # SGT Puzzles use generic names like net, map, etc.
  