anchor.diff:  , maintainers ? []
   , doHaddock ? true
   , passthru ? {}
  -, pkgconfigDepends ? []
  +, pkgconfigDepends ? [], libraryPkgconfigDepends ? [], executablePkgconfigDepends ? [], testPkgconfigDepends ? []
   , platforms ? ghc.meta.platforms
  -, testDepends ? []
  +, testDepends ? [], testHaskellDepends ? [], testSystemDepends ? []
   , testTarget ? ""
   , broken ? false
   , preUnpack ? "", postUnpack ? ""
  
positive.code: , version, revision ? null
  , sha256 ? null
  , src ? fetchurl { url = "mirror://hackage/${pname}-${version}.tar.gz"; inherit sha256; }
  , buildDepends ? []
  , buildTarget ? ""
  , buildTools ? []
  , configureFlags ? []
  , description ? ""
  , doCheck ? stdenv.lib.versionOlder "7.4" ghc.version
  
negative.code:   isHaskellPkg = x: (x ? pname) && (x ? version) && (x ? env);
    isSystemPkg = x: !isHaskellPkg x;
  
    propagatedBuildInputs = buildDepends ++ libraryHaskellDepends ++ executableHaskellDepends;
    otherBuildInputs = extraLibraries ++ librarySystemDepends ++ executableSystemDepends ++
                       buildTools ++ libraryToolDepends ++ executableToolDepends ++
                       optionals (pkgconfigDepends != []) ([pkgconfig] ++ pkgconfigDepends ++ libraryPkgconfigDepends ++ executablePkgconfigDepends) ++
                       optionals doCheck (testDepends ++ testHaskellDepends ++ testSystemDepends);
    allBuildInputs = propagatedBuildInputs ++ otherBuildInputs;
  
    haskellBuildInputs = stdenv.lib.filter isHaskellPkg allBuildInputs;
  