jailbreak-cabal: build ghc-7.10.x version from source again

https://github.com/peti/jailbreak-cabal/issues/9 forced us to use a
binary version of jailbreak-cabal built with ghc 7.8.x in the 7.10.x
package set, which is awkward. Upstream fixed the underlying issue
in https://github.com/haskell/cabal/issues/2598, but unfortunately
that fix didn't make it into the Cabal 1.22.4.0 release shipped by
ghc 7.10.2.

Now, we work around that issue by building jailbreak-cabal with an
unreleased development snapshot of Cabal in the ghc 7.10.x package
set.

Closes https://github.com/NixOS/nixpkgs/issues/8901.

+16 -1
+16 -1
pkgs/development/haskell-modules/configuration-ghc-7.10.x.nix
··· 42 42 cabal-install = dontCheck (super.cabal-install.override { Cabal = null; }); 43 43 44 44 # Don't use jailbreak built with Cabal 1.22.x because of https://github.com/peti/jailbreak-cabal/issues/9. 45 - jailbreak-cabal = pkgs.haskell.packages.ghc784.jailbreak-cabal; 45 + Cabal_1_23_0_0 = overrideCabal super.Cabal_1_22_4_0 (drv: { 46 + version = "1.23.0.0"; 47 + src = pkgs.fetchFromGitHub { 48 + owner = "haskell"; 49 + repo = "cabal"; 50 + rev = "fe7b8784ac0a5848974066bdab76ce376ba67277"; 51 + sha256 = "1d70ryz1l49pkr70g8r9ysqyg1rnx84wwzx8hsg6vwnmg0l5am7s"; 52 + }; 53 + jailbreak = false; 54 + doHaddock = false; 55 + postUnpack = "sourceRoot+=/Cabal"; 56 + }); 57 + jailbreak-cabal = overrideCabal super.jailbreak-cabal (drv: { 58 + executableHaskellDepends = [ self.Cabal_1_23_0_0 ]; 59 + preConfigure = "sed -i -e 's/Cabal == 1.20\\.\\*/Cabal >= 1.23/' jailbreak-cabal.cabal"; 60 + }); 46 61 47 62 idris = 48 63 let idris' = overrideCabal super.idris (drv: {