summary refs log tree commit diff
diff options
context:
space:
mode:
authorWill Fancher <elvishjerricco@gmail.com>2018-04-01 23:25:37 -0400
committerWill Fancher <elvishjerricco@gmail.com>2018-04-01 23:25:37 -0400
commit774253e56b3ef493266cd0b00f6e8ef0ab837f32 (patch)
treed5dcde4a5915836f38361dcbd9687e688a71d895
parent71f28a2ca06f206f982a8eb9b50db4b2b284c550 (diff)
downloadnixlib-774253e56b3ef493266cd0b00f6e8ef0ab837f32.tar
nixlib-774253e56b3ef493266cd0b00f6e8ef0ab837f32.tar.gz
nixlib-774253e56b3ef493266cd0b00f6e8ef0ab837f32.tar.bz2
nixlib-774253e56b3ef493266cd0b00f6e8ef0ab837f32.tar.lz
nixlib-774253e56b3ef493266cd0b00f6e8ef0ab837f32.tar.xz
nixlib-774253e56b3ef493266cd0b00f6e8ef0ab837f32.tar.zst
nixlib-774253e56b3ef493266cd0b00f6e8ef0ab837f32.zip
Fix GHCJS 7.10
-rw-r--r--pkgs/development/compilers/ghcjs/default.nix1
-rw-r--r--pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix11
-rw-r--r--pkgs/development/haskell-modules/configuration-ghcjs.nix13
3 files changed, 11 insertions, 14 deletions
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).