about summary refs log tree commit diff
path: root/pkgs/development/haskell-modules
diff options
context:
space:
mode:
authorWill Fancher <elvishjerricco@gmail.com>2018-05-17 20:35:53 -0400
committerWill Fancher <elvishjerricco@gmail.com>2018-05-17 20:35:53 -0400
commit5523ec8f3c78704c6e76b7675bfce41d24a3feb1 (patch)
tree74f23417eda150ab5d1f404814400dfe41584122 /pkgs/development/haskell-modules
parent50bbc56b0bd87715bc17230365fe5eb441bfac68 (diff)
downloadnixlib-5523ec8f3c78704c6e76b7675bfce41d24a3feb1.tar
nixlib-5523ec8f3c78704c6e76b7675bfce41d24a3feb1.tar.gz
nixlib-5523ec8f3c78704c6e76b7675bfce41d24a3feb1.tar.bz2
nixlib-5523ec8f3c78704c6e76b7675bfce41d24a3feb1.tar.lz
nixlib-5523ec8f3c78704c6e76b7675bfce41d24a3feb1.tar.xz
nixlib-5523ec8f3c78704c6e76b7675bfce41d24a3feb1.tar.zst
nixlib-5523ec8f3c78704c6e76b7675bfce41d24a3feb1.zip
Make getHaskellBuildInputs / shellFor work with overrideCabal
Diffstat (limited to 'pkgs/development/haskell-modules')
-rw-r--r--pkgs/development/haskell-modules/lib.nix7
-rw-r--r--pkgs/development/haskell-modules/make-package-set.nix4
2 files changed, 7 insertions, 4 deletions
diff --git a/pkgs/development/haskell-modules/lib.nix b/pkgs/development/haskell-modules/lib.nix
index ff86e06979c1..55e45bd6559d 100644
--- a/pkgs/development/haskell-modules/lib.nix
+++ b/pkgs/development/haskell-modules/lib.nix
@@ -297,8 +297,11 @@ rec {
   # This is useful to build environments for developing on that
   # package.
   getHaskellBuildInputs = p:
-    (p.override { mkDerivation = extractBuildInputs p.compiler;
-                }).haskellBuildInputs;
+    (overrideCabal p (args: {
+      passthru = (args.passthru or {}) // {
+        _getHaskellBuildInputs = extractBuildInputs p.compiler args;
+      };
+    }))._getHaskellBuildInputs;
 
   # Under normal evaluation, simply return the original package. Under
   # nix-shell evaluation, return a nix-shell optimized environment.
diff --git a/pkgs/development/haskell-modules/make-package-set.nix b/pkgs/development/haskell-modules/make-package-set.nix
index bde4f85f6784..1ab37f080b1d 100644
--- a/pkgs/development/haskell-modules/make-package-set.nix
+++ b/pkgs/development/haskell-modules/make-package-set.nix
@@ -38,7 +38,7 @@ let
   inherit (stdenv) buildPlatform hostPlatform;
 
   inherit (stdenv.lib) fix' extends makeOverridable;
-  inherit (haskellLib) overrideCabal;
+  inherit (haskellLib) overrideCabal getHaskellBuildInputs;
 
   mkDerivationImpl = pkgs.callPackage ./generic-builder.nix {
     inherit stdenv;
@@ -229,7 +229,7 @@ in package-set { inherit pkgs stdenv callPackage; } self // {
     shellFor = { packages, withHoogle ? false, ... } @ args:
       let
         selected = packages self;
-        packageInputs = builtins.map (p: p.override { mkDerivation = haskellLib.extractBuildInputs p.compiler; }) selected;
+        packageInputs = builtins.map getHaskellBuildInputs selected;
         haskellInputs =
           builtins.filter
             (input: pkgs.lib.all (p: input.outPath != p.outPath) selected)