]> Git — Sourcephile - haskell/symantic-parser.git/blob - default.nix
set cabal category to Parsing (like megaparsec)
[haskell/symantic-parser.git] / default.nix
1 { pkgs ? import <nixpkgs> {}
2 , ghc ? "ghc901"
3 , withHoogle ? false
4 }:
5 let
6 haskellPackages =
7 if ghc == null
8 then pkgs.haskellPackages
9 else pkgs.haskell.packages.${ghc};
10 hs = haskellPackages.extend (with pkgs.haskell.lib;
11 hself: hsuper: {
12 data-fix = doJailbreak hsuper.data-fix;
13 primitive = doJailbreak hsuper.primitive;
14 assoc = doJailbreak hsuper.assoc;
15 these = doJailbreak hsuper.these;
16 dump-core = dontCheck (unmarkBroken hsuper.dump-core);
17
18 #symantic-parser = enableExecutableProfiling (doCheck ( hself.callCabal2nix "symantic-parser" ./. {}));
19 } //
20 packageSourceOverrides {
21 symantic-parser = ./.;
22 } hself hsuper
23 );
24 in hs.symantic-parser // {
25 shell = hs.shellFor {
26 packages = p: [ p.symantic-parser ];
27 nativeBuildInputs = [
28 pkgs.cabal-install
29 #hs.cabal-install
30 #hs.haskell-language-server
31 #hs.hpc
32 ];
33 buildInputs = [
34 #hs.ghcid
35 #hs.ormolu
36 #hs.hlint
37 #pkgs.nixpkgs-fmt
38 ];
39 inherit withHoogle;
40 };
41 }