]> Git — Sourcephile - haskell/symantic-parser.git/blob - default.nix
bug: a ref outside its def must be supported
[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 {
13 data-fix = doJailbreak hsuper.data-fix;
14 primitive = doJailbreak hsuper.primitive;
15 assoc = doJailbreak hsuper.assoc;
16 these = doJailbreak hsuper.these;
17 dump-core = dontCheck (unmarkBroken hsuper.dump-core);
18 #profunctors = doJailbreak (unmarkBroken hsuper.profunctors);
19 profunctors = dontCheck (unmarkBroken (doJailbreak (hsuper.callHackageDirect
20 { pkg = "profunctors";
21 ver = "5.6.2";
22 sha256 = "sha256-Vrlp6lvMNi+Bk+AHBMbnQE9NVzdASrcrFaWbkJew9qU=";
23 } {})));
24 system-fileio = doJailbreak hsuper.system-fileio;
25 turtle = doJailbreak hsuper.turtle;
26
27 #symantic-parser = enableExecutableProfiling (doCheck ( hself.callCabal2nix "symantic-parser" ./. {}));
28 } //
29 packageSourceOverrides {
30 symantic-parser = ./.;
31 } hself hsuper
32 );
33 in hs.symantic-parser // {
34 shell = hs.shellFor {
35 packages = p: [ p.symantic-parser ];
36 nativeBuildInputs = [
37 hs.cabal-install
38 #hs.ghc-events
39 #hs.ghc-events-analyze
40 #hs.threadscope
41 #hs.haskell-language-server
42 #hs.hpc
43 ];
44 buildInputs = [
45 #hs.ghcid
46 #hs.ormolu
47 #hs.hlint
48 #pkgs.nixpkgs-fmt
49 ];
50 inherit withHoogle;
51 };
52 }