@@ -131,6 +131,15 @@ in {
131131 ++ final.lib.optional (versionAtLeast "8.6.4") ./patches/ghc/Cabal-3886.patch
132132 ;
133133 in ({
134+ sources = {
135+ ghc-865-iohk = import ../compiler/ghc/source-dist.nix {
136+ inherit (final) stdenv;
137+ pkgs = final;
138+ inherit (final.haskell-nix.compiler.ghc865.bootPkgs) alex happy hscolour ghc;
139+ src = final.haskell-nix.sources."ghc-8.6.5-iohk";
140+ version = "8.6.5-iohk";
141+ };
142+ };
134143 ghc844 = final.callPackage ../compiler/ghc {
135144 extra-passthru = { buildGHC = final.buildPackages.haskell-nix.compiler.ghc844; };
136145
@@ -236,26 +245,61 @@ in {
236245 ghc-patches = ghc-patches "8.6.4"
237246 ++ [ D5123-patch ];
238247 };
239− ghc865 = final.callPackage ../compiler/ghc {
240− extra-passthru = { buildGHC = final.buildPackages.haskell-nix.compiler.ghc865; };
248+ # ghc865 = final.callPackage ../compiler/ghc {
249+ # extra-passthru = { buildGHC = final.buildPackages.haskell-nix.compiler.ghc865; };
250+
251+ # inherit sphinx installDeps;
252+ # bootPkgs = bootPkgs // {
253+ # # GHC 8.6.5 and earlier need happy 1.19.11
254+ # happy = final.haskell-nix.bootstrap.packages.happy-old-unchecked;
255+ # };
256+
257+ # buildLlvmPackages = final.buildPackages.llvmPackages_6;
258+ # llvmPackages = final.llvmPackages_6;
259+
260+ # src-spec = rec {
261+ # version = "8.6.5";
262+ # url = "https://downloads.haskell.org/~ghc/${version}/ghc-${version}-src.tar.xz";
263+ # sha256 = "0qg3zsmbk4rkwkc3jpas3zs74qaxmw4sp4v1mhsbj0a0dzls2jjd";
264+ # };
265+
266+ # ghc-patches = ghc-patches "8.6.5"
267+ # ++ [ D5123-patch haddock-900-patch ];
268+ # };
269+ ghc865 = final.haskell-nix.compiler.ghc865-iohk;
270+ ghc865-iohk = final.callPackage ../compiler/ghc {
271+ extra-passthru = { buildGHC = final.buildPackages.haskell-nix.compiler.ghc865-iohk; };
241272
242− inherit sphinx installDeps;
243− bootPkgs = bootPkgs // {
244− # GHC 8.6.5 and earlier need happy 1.19.11
245− happy = final.haskell-nix.bootstrap.packages.happy-old-unchecked;
246− };
273+ inherit bootPkgs sphinx installDeps;
247274
248275 buildLlvmPackages = final.buildPackages.llvmPackages_6;
249276 llvmPackages = final.llvmPackages_6;
250277
251278 src-spec = rec {
252279 version = "8.6.5";
253− url = "https://downloads.haskell.org/~ghc/${version}/ghc-${version}-src.tar.xz";
254− sha256 = "0qg3zsmbk4rkwkc3jpas3zs74qaxmw4sp4v1mhsbj0a0dzls2jjd";
280+ file = "${final.haskell-nix.compiler.sources.ghc-865-iohk}/src.tar.xz";
255281 };
256282
257− ghc-patches = ghc-patches "8.6.5"
258− ++ [ D5123-patch haddock-900-patch ];
283+ ghc-patches = [
284+ ./patches/ghc/outputtable-assert-8.6.patch
285+ ./patches/ghc/ghc-8.6.4-reenable-th-qq-in-stage1.patch
286+ ./patches/ghc/dll-loader-8.4.2.patch
287+ ./patches/ghc/ghc-8.6.4-prim-no-arm-atomics.patch
288+ ./patches/ghc/ghc-8.6.5-atomic-arm-arch.patch
289+ ./patches/ghc/ghc-8.6.5-reinstallable-lib-ghc.patch
290+ ./patches/ghc/respect-ar-path.patch
291+ ./patches/ghc/ghc-no-system-linker.patch
292+ # ./patches/ghc/aarch64-linker.patch
293+ ./patches/ghc/llvm-emit-nonlazybind.patch
294+
295+ ./patches/ghc/Cabal-3886.patch
296+ ./patches/ghc/ghc-8.4.3-Cabal2201-allow-test-wrapper.patch
297+ ./patches/ghc/ghc-8.4.3-Cabal2201-response-file-support.patch
298+ ./patches/ghc/ghc-8.6-Cabal-fix-datadir.patch
299+ ./patches/ghc/ghc-8.4.3-Cabal2201-no-hackage-tests.patch
300+ ./patches/ghc/ghc-prim-linux-extra-libraries.patch
301+ haddock-900-patch
302+ ];
259303 };
260304 ghc881 = final.callPackage ../compiler/ghc {
261305 extra-passthru = { buildGHC = final.buildPackages.haskell-nix.compiler.ghc881; };