summary refs log tree commit diff
path: root/pkgs/development/libraries/haskell/ghc-mod/5.0.1.nix
blob: ad9207214513f2b5e3ecc9e5bf2de728e11537fb (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# This file was auto-generated by cabal2nix. Please do NOT edit manually!

{ 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: {
  pname = "ghc-mod";
  version = "5.0.1";
  sha256 = "01awsi5rfzq6433shfvvnr69ifxb7h8v90mlknxv3dl34zmrhv19";
  isLibrary = true;
  isExecutable = true;
  buildDepends = [
    Cabal convertible deepseq djinnGhc filepath ghcPaths ghcSybUtils
    haskellSrcExts hlint ioChoice monadControl monadJournal mtl split
    syb text time transformers transformersBase
  ];
  testDepends = [
    Cabal convertible deepseq djinnGhc doctest filepath ghcPaths
    ghcSybUtils haskellSrcExts hlint hspec ioChoice monadControl
    monadJournal mtl split syb text time transformers transformersBase
  ];
  buildTools = [ emacs ];
  doCheck = false;
  configureFlags = "--datasubdir=${self.pname}-${self.version}";
  postInstall = ''
    cd $out/share/$pname-$version
    make
    rm Makefile
    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
  '';
  meta = {
    homepage = "http://www.mew.org/~kazu/proj/ghc-mod/";
    description = "Happy Haskell Programming";
    license = self.stdenv.lib.licenses.bsd3;
    platforms = self.ghc.meta.platforms;
    maintainers = with self.stdenv.lib.maintainers; [
      andres bluescreen303 ocharles
    ];
  };
})