1
0
Fork 0
nixos-config/overlays/30-ghc.nix
Malte Brandy ad411a85ef
Update
2021-03-20 12:42:22 +01:00

36 lines
1.3 KiB
Nix

self: super:
let
inherit (super) fetchFromGitHub;
master = import super.sources.nixpkgs-master {};
inherit (master.haskell.lib) overrideCabal unmarkBroken doJailbreak;
makeHaskellScriptPackages = p: {
inherit (p)
aeson shh string-interpolate relude replace-megaparsec async say
megaparsec fdo-notify these fsnotify
;
};
makeHaskellPackages = p:
{
inherit (p)
brittany ormolu releaser cabal-fmt stack ghcid ghcide
haskell-language-server cabal-install dhall taskwarrior pandoc hlint
cabal2nix weeder reflex-dom password optics shh-extras neuron
hspec-discover paths hmatrix postgresql-simple snap
hedgehog nix-derivation
;
iCalendar = overrideCabal (doJailbreak (unmarkBroken p.iCalendar)) {
preConfigure = ''substituteInPlace iCalendar.cabal --replace "network >=2.6 && <2.7" "network -any"'';
};
arbtt = doJailbreak p.arbtt;
cabal-edit = doJailbreak p.cabal-edit;
} // makeHaskellScriptPackages p;
inherit (master) ghc haskellPackages;
in
{
inherit ghc; # haskellPackages;
nix-output-monitor = master.nix-output-monitor;
myHaskellPackages = makeHaskellPackages haskellPackages;
myHaskellScriptPackages = makeHaskellScriptPackages haskellPackages;
ghcWithPackages = ghc.withHoogle (p: builtins.attrValues (makeHaskellPackages p));
}