From 4687b6142c7c7440ece90e86b01bdb5e495d6e65 Mon Sep 17 00:00:00 2001
From: Shea Levy <shea@shealevy.com>
Date: Wed, 11 Jan 2017 13:25:50 -0500
Subject: [PATCH 1/2] haskellPackages.mkDerivation: Use native jailbreak-cabal
 when cross-compiling

---
 pkgs/development/haskell-modules/default.nix | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/pkgs/development/haskell-modules/default.nix b/pkgs/development/haskell-modules/default.nix
index 673099e0dc4..ef73e47f537 100644
--- a/pkgs/development/haskell-modules/default.nix
+++ b/pkgs/development/haskell-modules/default.nix
@@ -14,7 +14,10 @@ let
       mkDerivation = pkgs.callPackage ./generic-builder.nix {
         inherit stdenv;
         inherit (pkgs) fetchurl pkgconfig glibcLocales coreutils gnugrep gnused;
-        inherit (self) ghc jailbreak-cabal;
+        jailbreak-cabal = if (self.ghc.cross or null) != null
+          then self.ghc.bootPkgs.jailbreak-cabal
+          else self.jailbreak-cabal;
+        inherit (self) ghc;
         hscolour = overrideCabal self.hscolour (drv: {
           isLibrary = false;
           doHaddock = false;

From 60918113af61085a87ca7344df985bc635e9c8fa Mon Sep 17 00:00:00 2001
From: Shea Levy <shea@shealevy.com>
Date: Wed, 11 Jan 2017 13:26:08 -0500
Subject: [PATCH 2/2] haskellPackages.mkDerivation: Use native hsc2hs when
 cross-compiling

---
 pkgs/development/haskell-modules/generic-builder.nix | 1 +
 1 file changed, 1 insertion(+)

diff --git a/pkgs/development/haskell-modules/generic-builder.nix b/pkgs/development/haskell-modules/generic-builder.nix
index 092d4ae4524..a7696dfc2e3 100644
--- a/pkgs/development/haskell-modules/generic-builder.nix
+++ b/pkgs/development/haskell-modules/generic-builder.nix
@@ -94,6 +94,7 @@ let
     "--with-gcc=${ghc.cc}"
     "--with-ld=${ghc.ld}"
     "--hsc2hs-options=--cross-compile"
+    "--with-hsc2hs=${nativeGhc}/bin/hsc2hs"
   ];
 
   crossCabalFlagsString =