summary refs log tree commit diff
path: root/pkgs/development/haskell-modules/default.nix
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2015-09-07 21:28:33 +0200
committerEelco Dolstra <eelco.dolstra@logicblox.com>2015-09-07 21:28:33 +0200
commit916793cf130a8269bbda881e9081370d74595538 (patch)
tree11c9e5d14f3178c6daf5a9c0a85f8a9e469ac356 /pkgs/development/haskell-modules/default.nix
parent026c31dd9d6570fc6d7475c0102745cbfb0d6972 (diff)
parent86eaeb4c0a31e623c01f0d39fd5b3e64ce5f80b5 (diff)
downloadnixlib-916793cf130a8269bbda881e9081370d74595538.tar
nixlib-916793cf130a8269bbda881e9081370d74595538.tar.gz
nixlib-916793cf130a8269bbda881e9081370d74595538.tar.bz2
nixlib-916793cf130a8269bbda881e9081370d74595538.tar.lz
nixlib-916793cf130a8269bbda881e9081370d74595538.tar.xz
nixlib-916793cf130a8269bbda881e9081370d74595538.tar.zst
nixlib-916793cf130a8269bbda881e9081370d74595538.zip
Merge branch 'master' into systemd-219
Conflicts:
	nixos/modules/system/boot/systemd.nix
	pkgs/applications/networking/p2p/transmission/default.nix
	pkgs/development/libraries/libseccomp/default.nix
	pkgs/os-specific/linux/systemd/default.nix
	pkgs/top-level/all-packages.nix
Diffstat (limited to 'pkgs/development/haskell-modules/default.nix')
-rw-r--r--pkgs/development/haskell-modules/default.nix25
1 files changed, 17 insertions, 8 deletions
diff --git a/pkgs/development/haskell-modules/default.nix b/pkgs/development/haskell-modules/default.nix
index 04158ae8e9b5..7e6f1c0552d5 100644
--- a/pkgs/development/haskell-modules/default.nix
+++ b/pkgs/development/haskell-modules/default.nix
@@ -3,8 +3,6 @@
 , overrides ? (self: super: {})
 }:
 
-with ./lib.nix;
-
 let
 
   fix = f: let x = f x // { __unfix__ = f; }; in x;
@@ -49,18 +47,29 @@ let
       defaultScope = mkScope self;
       callPackage = drv: args: callPackageWithScope defaultScope drv args;
 
+      withPackages = packages: callPackage ./with-packages-wrapper.nix {
+        inherit (self) llvmPackages;
+        haskellPackages = self;
+        inherit packages;
+      };
+
     in
       import ./hackage-packages.nix { inherit pkgs stdenv callPackage; } self // {
 
         inherit mkDerivation callPackage;
 
-        ghcWithPackages = pkgs: callPackage ./with-packages-wrapper.nix {
-          inherit (self) llvmPackages;
-          haskellPackages = self;
-          packages = pkgs self;
-        };
+        ghcWithPackages = selectFrom: withPackages (selectFrom self);
+
+        ghcWithHoogle = selectFrom:
+          let
+            packages = selectFrom self;
+            hoogle = callPackage ./hoogle.nix { inherit packages; };
+          in withPackages (packages ++ [ hoogle ]);
 
-        ghc = ghc // { withPackages = self.ghcWithPackages; };
+        ghc = ghc // {
+          withPackages = self.ghcWithPackages;
+          withHoogle = self.ghcWithHoogle;
+        };
 
       };