anchor.diff:    isHaskellPkg = x: (x ? pname) && (x ? version) && (x ? env);
     isSystemPkg = x: !isHaskellPkg x;
   
  -  propagatedBuildInputs = buildDepends;
  -  otherBuildInputs = extraLibraries ++
  -                     buildTools ++
  -                     optionals (pkgconfigDepends != []) ([pkgconfig] ++ pkgconfigDepends) ++
  -                     optionals doCheck testDepends;
  +  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;
  
positive.code: , maintainers ? []
  , doHaddock ? true
  , passthru ? {}
  , pkgconfigDepends ? []
  , platforms ? ghc.meta.platforms
  , testDepends ? []
  , testTarget ? ""
  , broken ? false
  , preUnpack ? "", postUnpack ? ""
  
negative.code:     (optionalString (enableSharedExecutables && stdenv.isLinux) "--ghc-option=-optl=-Wl,-rpath=$out/lib/${ghc.name}/${pname}-${version}")
      (optionalString (enableSharedExecutables && stdenv.isDarwin) "--ghc-option=-optl=-Wl,-headerpad_max_install_names")
      (optionalString enableParallelBuilding "--ghc-option=-j$NIX_BUILD_CORES")
      (optionalString useCpphs "--with-cpphs=${cpphs}/bin/cpphs --ghc-options=-cpp --ghc-options=-pgmP${cpphs}/bin/cpphs --ghc-options=-optP--cpp")
      (enableFeature enableSplitObjs "split-objs")
      (enableFeature enableLibraryProfiling "library-profiling")
      (enableFeature enableSharedLibraries "shared")
  