diff options
-rw-r--r-- | pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix | 32 | ||||
-rw-r--r-- | pkgs/development/haskell-modules/configuration-nix.nix | 1 |
2 files changed, 31 insertions, 2 deletions
diff --git a/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix b/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix index fdb5af4a854cc..ee2526b6c40fd 100644 --- a/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix +++ b/pkgs/development/haskell-modules/configuration-ghc-9.0.x.nix @@ -56,24 +56,49 @@ self: super: { }; }); - # Jailbreaks! + # Jailbreaks & Version Updates + async = doJailbreak super.async; + ChasingBottoms = markBrokenVersion "1.3.1.9" super.ChasingBottoms; dec = doJailbreak super.dec; ed25519 = doJailbreak super.ed25519; + hashable = overrideCabal (doJailbreak (dontCheck super.hashable)) (drv: { postPatch = "sed -i -e 's,integer-gmp .*<1.1,integer-gmp < 2,' hashable.cabal"; }); + hashable-time = doJailbreak super.hashable-time; integer-logarithms = overrideCabal (doJailbreak super.integer-logarithms) (drv: { postPatch = "sed -i -e 's,integer-gmp <1.1,integer-gmp < 2,' integer-logarithms.cabal"; }); + lukko = doJailbreak super.lukko; parallel = doJailbreak super.parallel; primitive = doJailbreak super.primitive_0_7_1_0; regex-posix = doJailbreak super.regex-posix; + resolv = doJailbreak super.resolv; singleton-bool = doJailbreak super.singleton-bool; + split = doJailbreak super.split; + splitmix = self.splitmix_0_1_0_2; tar = doJailbreak super.tar; th-abstraction = self.th-abstraction_0_4_0_0; + time-compat = doJailbreak super.time-compat; + vector = doJailbreak (dontCheck super.vector); zlib = doJailbreak super.zlib; - splitmix = doJailbreak super.splitmix; # Apply patches from head.hackage. + alex = appendPatch (dontCheck super.alex) (pkgs.fetchpatch { + url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/master/patches/alex-3.2.5.patch"; + sha256 = "0q8x49k3jjwyspcmidwr6b84s4y43jbf4wqfxfm6wz8x2dxx6nwh"; + }); + doctest = appendPatch (dontCheck (doJailbreak super.doctest_0_17)) (pkgs.fetchpatch { + url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/master/patches/doctest-0.17.patch"; + sha256 = "16s2jcbk9hsww38i2wzxghbf0zpp5dc35hp6rd2n7d4z5xfavp62"; + }); + generic-deriving = appendPatch (doJailbreak super.generic-deriving) (pkgs.fetchpatch { + url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/master/patches/generic-deriving-1.13.1.patch"; + sha256 = "0z85kiwhi5p2wiqwyym0y8q8qrcifp125x5vm0n4482lz41kmqds"; + }); language-haskell-extract = appendPatch (doJailbreak super.language-haskell-extract) (pkgs.fetchpatch { url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/master/patches/language-haskell-extract-0.2.4.patch"; sha256 = "0rgzrq0513nlc1vw7nw4km4bcwn4ivxcgi33jly4a7n3c1r32v1f"; }); + QuickCheck = appendPatch super.QuickCheck_2_14_1 (pkgs.fetchpatch { + url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/master/patches/QuickCheck-2.14.1.patch"; + sha256 = "0n89nx95w353h4dzala57gb0y7hx4wbkv5igs89dza50p7ybq9an"; + }); regex-base = appendPatch (doJailbreak super.regex-base) (pkgs.fetchpatch { url = "https://gitlab.haskell.org/ghc/head.hackage/-/raw/master/patches/regex-base-0.94.0.0.patch"; sha256 = "0k5fglbl7nnhn8400c4cpnflxcbj9p3xi5prl9jfmszr31jwdy5d"; @@ -83,4 +108,7 @@ self: super: { sha256 = "1407r8xv6bfnmpbw7glfh4smi76a2fc9pkq300c3d9f575708zqr"; }); + # The test suite depends on ChasingBottoms, which is broken with ghc-9.0.x. + unordered-containers = dontCheck super.unordered-containers; + } diff --git a/pkgs/development/haskell-modules/configuration-nix.nix b/pkgs/development/haskell-modules/configuration-nix.nix index d1968f489aeff..d885cb55aa346 100644 --- a/pkgs/development/haskell-modules/configuration-nix.nix +++ b/pkgs/development/haskell-modules/configuration-nix.nix @@ -542,6 +542,7 @@ self: super: builtins.intersectAttrs super { # Break infinite recursion cycle between QuickCheck and splitmix. splitmix = dontCheck super.splitmix; + splitmix_0_1_0_2 = dontCheck super.splitmix_0_1_0_2; # Break infinite recursion cycle between tasty and clock. clock = dontCheck super.clock; |