anchor.diff:      cd ..
       ensureDir "$out/share/emacs"
       mv $pname-$version emacs/site-lisp
  -    mv $out/bin/ghc-mod $out/bin/.ghc-mod-wrapped
  -    cat - > $out/bin/ghc-mod <<EOF
  -    #! ${self.stdenv.shell}
  -    eval exec $out/bin/.ghc-mod-wrapped \$( ${self.ghc.GHCGetPackages} ${self.ghc.version} | tr " " "\n" | tail -n +2 | paste -d " " - - | sed 's/.*/-g "&"/' | tr "\n" " ") "\$@"
  -    EOF
   
  -    mv $out/bin/ghc-modi $out/bin/.ghc-modi-wrapped
  -    cat - > $out/bin/ghc-modi <<EOF
  -    #! ${self.stdenv.shell}
  -    eval exec $out/bin/.ghc-modi-wrapped \$( ${self.ghc.GHCGetPackages} ${self.ghc.version} | tr " " "\n" | tail -n +2 | paste -d " " - - | sed 's/.*/-g "&"/' | tr "\n" " ") "\$@"
  -    EOF
  -
  -    chmod +x $out/bin/ghc-mod
  -    chmod +x $out/bin/ghc-modi
  +    wrapProgram $out/bin/ghc-mod --add-flags \
  +      "\$(${self.ghc.GHCGetPackages} ${self.ghc.version} \"\$(dirname \$0)\" \"-g -package-db -g\")"
  +    wrapProgram $out/bin/ghc-modi --add-flags \
  +      "\$(${self.ghc.GHCGetPackages} ${self.ghc.version} \"\$(dirname \$0)\" \"-g -package-db -g\")"
     '';
     meta = {
       homepage = "http://www.mew.org/~kazu/proj/ghc-mod/";
  
positive.code: { cabal, Cabal, convertible, deepseq, djinnGhc, doctest, emacs
  , filepath, ghcPaths, ghcSybUtils, haskellSrcExts, hlint, hspec
  , ioChoice, monadControl, monadJournal, mtl, split, syb, text, time
  , transformers, transformersBase
  }:
  
  cabal.mkDerivation (self: {
  
negative.code:     ghcSybUtils haskellSrcExts hlint hspec ioChoice monadControl
      monadJournal mtl split syb text time transformers transformersBase
    ];
    buildTools = [ emacs makeWrapper ];
    doCheck = false;
    configureFlags = "--datasubdir=${self.pname}-${self.version}";
    # The method used below to wrap ghc-mod and ghc-modi was borrowed from the
    # wrapper for haddock.
    postInstall = ''
      cd $out/share/$pname-$version
      make
  