anchor.diff:      (pakName: attrs: mkPak (attrs // {inherit pakName;}))
     {
       pak64 = {
  -      # No release for 120.1 yet!
  -      srcPath = "120-0/simupak64-120-0-1";
  -      sha256 = "0y5v1ncpjyhjkkznqmk13kg5d0slhjbbvg1y8q5jxhmhlkghk9q2";
  +      srcPath = "120-2/simupak64-120-2";
  +      sha256 = "1s310pssar4s1nf6gi9cizbx4m75avqm2qk039ha5rk8jk4lzkmk";
       };
       "pak64.japan" = {
  -      # No release for 120.1 yet!
  +      # No release for 120.2 yet!
         srcPath = "120-0/simupak64.japan-120-0-1";
         sha256 = "14swy3h4ij74bgaw7scyvmivfb5fmp21nixmhlpk3mav3wr3167i";
       };
   
       pak128 = {
  -      srcPath = "pak128%20for%20ST%20120%20%282.5.3%2C%20minor%20changes%29/pak128-2.5.3--ST120";
  -      sha256 = "19c66wvfg6rn7s9awi99cfp83hs9d8dmsjlmgn8m91a19fp9isdh";
  +      srcPath = "pak128%20for%20ST%20120.2.2%20%282.7%2C%20minor%20changes%29/pak128";
  +      sha256 = "1x6g6yfv1hvjyh3ciccly1i2k2n2b63dw694gdg4j90a543rmclg";
       };
       "pak128.britain" = {
  -      srcPath = "pak128.Britain%20for%20${ver2_dash}/pak128.Britain.1.17-${ver2_dash}";
  +      srcPath = "pak128.Britain%20for%20120-1/pak128.Britain.1.17-120-1";
         sha256 = "1nviwqizvch9n3n826nmmi7c707dxv0727m7lhc1n2zsrrxcxlr5";
       };
       "pak128.cs" = { # note: it needs pak128 to work
  
positive.code: 
  let
    # Choose your "paksets" of objects, images, text, music, etc.
    paksets = config.simutrans.paksets or "pak64 pak128";
  
    result = with stdenv.lib; withPaks (
      if paksets == "*" then attrValues pakSpec # taking all
  
negative.code:     };
      "pak128.german" = {
        url = "mirror://sourceforge/simutrans/PAK128.german/"
          + "PAK128.german_0.10.x_for_ST_120.x/PAK128.german_0.10.3_for_ST_120.x.zip";
        sha256 = "1379zcviyf3v0wsli33sqa509k6zlw6fkk57vahc44mrnhka5fpb";
      };
  
      /* This release contains accented filenames that prevent unzipping.
  