summary refs log tree commit diff
path: root/pkgs/development
diff options
context:
space:
mode:
authorJohn Ericson <John.Ericson@Obsidian.Systems>2018-07-07 14:28:42 -0400
committerJohn Ericson <John.Ericson@Obsidian.Systems>2018-07-09 16:39:37 -0400
commitf27f491784cd19abca6494ae28306deeea17c613 (patch)
treef96d57d9313f310035681c0f1e2e6e0e581586e1 /pkgs/development
parent0eb142cd46e8a46eb61fe41e1b916ffe0ec3e0ba (diff)
downloadnixlib-f27f491784cd19abca6494ae28306deeea17c613.tar
nixlib-f27f491784cd19abca6494ae28306deeea17c613.tar.gz
nixlib-f27f491784cd19abca6494ae28306deeea17c613.tar.bz2
nixlib-f27f491784cd19abca6494ae28306deeea17c613.tar.lz
nixlib-f27f491784cd19abca6494ae28306deeea17c613.tar.xz
nixlib-f27f491784cd19abca6494ae28306deeea17c613.tar.zst
nixlib-f27f491784cd19abca6494ae28306deeea17c613.zip
Haskell infra: Do callPackage splicing
Diffstat (limited to 'pkgs/development')
-rw-r--r--pkgs/development/haskell-modules/make-package-set.nix17
1 files changed, 15 insertions, 2 deletions
diff --git a/pkgs/development/haskell-modules/make-package-set.nix b/pkgs/development/haskell-modules/make-package-set.nix
index a54967c4e45e..87ac65307aab 100644
--- a/pkgs/development/haskell-modules/make-package-set.nix
+++ b/pkgs/development/haskell-modules/make-package-set.nix
@@ -97,7 +97,20 @@ let
       };
     in stdenv.lib.makeOverridable drvScope (auto // manualArgs);
 
-  mkScope = scope: pkgs // pkgs.xorg // pkgs.gnome2 // { inherit stdenv; } // scope;
+  mkScope = scope: let
+      ps = pkgs.__splicedPackages;
+      scopeSpliced = pkgs.splicePackages {
+        pkgsBuildBuild = scope.buildHaskellPackages.buildHaskellPackages;
+        pkgsBuildHost = scope.buildHaskellPackages;
+        pkgsBuildTarget = {};
+        pkgsHostHost = {};
+        pkgsHostTarget = scope;
+        pkgsTargetTarget = {};
+      } // {
+        # Don't splice these
+        inherit (scope) ghc buildHaskellPackages;
+      };
+    in ps // ps.xorg // ps.gnome2 // { inherit stdenv; } // scopeSpliced;
   defaultScope = mkScope self;
   callPackage = drv: args: callPackageWithScope defaultScope drv args;
 
@@ -150,7 +163,7 @@ let
 
 in package-set { inherit pkgs stdenv callPackage; } self // {
 
-    inherit mkDerivation callPackage haskellSrc2nix hackage2nix;
+    inherit mkDerivation callPackage haskellSrc2nix hackage2nix buildHaskellPackages;
 
     inherit (haskellLib) packageSourceOverrides;