diff --git a/pkgs/development/compilers/ghcjs/default.nix b/pkgs/development/compilers/ghcjs/default.nix index b5a7a7f7cfc2..7f3cc9440015 100644 --- a/pkgs/development/compilers/ghcjs/default.nix +++ b/pkgs/development/compilers/ghcjs/default.nix @@ -2,5 +2,4 @@ bootPkgs.callPackage ./base.nix { inherit bootPkgs cabal-install; - broken = true; # https://hydra.nixos.org/build/70552553 } diff --git a/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix b/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix index c7e8d1798d23..15220c24b4f2 100644 --- a/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix +++ b/pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix @@ -219,4 +219,15 @@ self: super: { chr-pretty = doJailbreak super.chr-pretty; chr-parse = doJailbreak super.chr-parse; + # The autogenerated Nix expressions don't take into + # account `if impl(ghc >= x.y)`, which is a common method to depend + # on `semigroups` or `fail` when building with GHC < 8.0. + system-filepath = addBuildDepend super.system-filepath self.semigroups; + haskell-src-exts = addBuildDepend super.haskell-src-exts self.semigroups; + free = addBuildDepend super.free self.fail; + + # Newer versions don't build without base-4.9 + resourcet = self.resourcet_1_1_11; + conduit = self.conduit_1_2_13_1; + } diff --git a/pkgs/development/haskell-modules/configuration-ghcjs.nix b/pkgs/development/haskell-modules/configuration-ghcjs.nix index bd35c1cb3ae2..7a6416b9e13b 100644 --- a/pkgs/development/haskell-modules/configuration-ghcjs.nix +++ b/pkgs/development/haskell-modules/configuration-ghcjs.nix @@ -53,19 +53,6 @@ self: super: terminfo = self.terminfo_0_4_0_2; xhtml = self.xhtml_3000_2_1; - # Cabal isn't part of the stage1 packages which form the default package-db - # that GHCJS provides. - # Almost all packages require Cabal to build their Setup.hs, - # but usually they don't declare it explicitly as they don't need to for normal GHC. - # To account for that we add Cabal by default. - mkDerivation = args: super.mkDerivation (args // { - setupHaskellDepends = (args.setupHaskellDepends or []) ++ - (if args.pname == "Cabal" then [ ] - # Break the dependency cycle between Cabal and hscolour - else if args.pname == "hscolour" then [ (dontHyperlinkSource self.Cabal) ] - else [ self.Cabal ]); - }); - ## OTHER PACKAGES # haddock throws the error: No input file(s).