_: pkgs: let buildCabal = self: name: self.callCabal2nix name pkgs.sources.${name} {}; buildCabalSubdir = self: {name, src ? pkgs.sources.${name}, subdir ? name}: self.callCabal2nix name (src + "/${subdir}") {}; ghc = "ghc884"; in rec { haskell = pkgs.haskell // { packages = pkgs.haskell.packages // { "${ghc}" = pkgs.haskell.packages."${ghc}".override (old: { overrides = with pkgs.pkgs.haskell.lib; self: super: pkgs.overridePinnedDeps (buildCabal self) // { acid-state = dontCheck super.acid-state; # mac: "too many open files" ghcjs-base = null; # otherwise ghc tries to build this via overridePinnedDeps servant-auth = buildCabalSubdir self {name = "servant-auth";}; servant-server = doJailbreak super.servant-server; stripe-haskell = dontCheck super.stripe-haskell; stripe-http-client = dontCheck super.stripe-http-client; temporary = dontCheck super.temporary; wai-middleware-metrics = dontCheck super.wai-middleware-metrics; }; }); #ghcjs86 = pkgs.haskell.packages.ghcjs86.override (old: { # overrides = with pkgs.haskell.lib; self: super: # pkgs.overridePinnedDeps (buildCabal self) // { # Glob = dontCheck super.Glob; # QuickCheck = dontCheck super.QuickCheck; # aeson = dontCheck super.aeson; # base-compat-batteries = dontCheck super.base-compat-batteries; # clay = dontCheck super.clay; # comonad = dontCheck super.comonad; # ghcjs-base = dontCheck (buildCabal self "ghcjs-base"); # jsaddle-warp = dontCheck (buildCabalSubdir self { # name = "jsaddle-warp"; # src = pkgs.sources.jsaddle; # }); # http-types = dontCheck super.http-types; # network-uri= dontCheck super.network-uri; # scientific = dontCheck super.scientific; # takes forever # servant = dontCheck super.servant; # servant-auth = buildCabalSubdir self "servant-auth"; # tasty-quickcheck = dontCheck super.tasty-quickcheck; # temporary = dontCheck super.temporary; # time-compat = dontCheck super.time-compat; # vector = dontCheck super.vector; # }; #}); }; }; guile-opengl = pkgs.callPackage ./Deps/guile-opengl.nix {}; inspekt3d = pkgs.callPackage ./Deps/inspekt3d.nix {}; }