summary refs log tree commit diff
path: root/pkgs/development/haskell-modules/hoogle.nix
diff options
context:
space:
mode:
authorWill Fancher <elvishjerricco@gmail.com>2018-06-21 17:53:00 -0400
committerWill Fancher <elvishjerricco@gmail.com>2018-06-21 17:53:37 -0400
commitdc7a91392eb5773c8df8372d53b3abce7a765a4a (patch)
tree79dccbe6602231185d2047be8724bf8e1b110882 /pkgs/development/haskell-modules/hoogle.nix
parentcd550dcb66ff3101887c34066c006d613b4ac7a0 (diff)
downloadnixpkgs-dc7a91392eb5773c8df8372d53b3abce7a765a4a.tar
nixpkgs-dc7a91392eb5773c8df8372d53b3abce7a765a4a.tar.gz
nixpkgs-dc7a91392eb5773c8df8372d53b3abce7a765a4a.tar.bz2
nixpkgs-dc7a91392eb5773c8df8372d53b3abce7a765a4a.tar.lz
nixpkgs-dc7a91392eb5773c8df8372d53b3abce7a765a4a.tar.xz
nixpkgs-dc7a91392eb5773c8df8372d53b3abce7a765a4a.tar.zst
nixpkgs-dc7a91392eb5773c8df8372d53b3abce7a765a4a.zip
Fix null deps in ghcWithHoogle
Diffstat (limited to 'pkgs/development/haskell-modules/hoogle.nix')
-rw-r--r--pkgs/development/haskell-modules/hoogle.nix16
1 files changed, 9 insertions, 7 deletions
diff --git a/pkgs/development/haskell-modules/hoogle.nix b/pkgs/development/haskell-modules/hoogle.nix
index 38e8dfd24c4..803ff2b20d1 100644
--- a/pkgs/development/haskell-modules/hoogle.nix
+++ b/pkgs/development/haskell-modules/hoogle.nix
@@ -52,10 +52,13 @@ let
       This index includes documentation for many Haskell modules.
     '';
 
+  # Packages like base and bytestring are null. These must be removed
+  # to prevent eval errors.
+  nonNullPackages = builtins.filter (p: p != null) packages;
   # TODO: closePropagation is deprecated; replace
   docPackages = lib.closePropagation
     # we grab the doc outputs
-    (map (lib.getOutput "doc") packages);
+    (map (lib.getOutput "doc") nonNullPackages);
 
 in
 stdenv.mkDerivation {
@@ -67,10 +70,10 @@ stdenv.mkDerivation {
   inherit docPackages;
 
   buildPhase = ''
-    ${lib.optionalString (packages != [] -> docPackages == [])
+    ${lib.optionalString (nonNullPackages != [] -> docPackages == [])
        ("echo WARNING: localHoogle package list empty, even though"
        + " the following were specified: "
-       + lib.concatMapStringsSep ", " (p: p.name) packages)}
+       + lib.concatMapStringsSep ", " (p: p.name) nonNullPackages)}
     mkdir -p $out/share/doc/hoogle
 
     echo importing builtin packages
@@ -86,10 +89,9 @@ stdenv.mkDerivation {
     ${lib.concatMapStringsSep "\n" (el: ''
         ln -sfn ${el.haddockDir} "$out/share/doc/hoogle/${el.name}"
       '')
-      (lib.filter (el: el.haddockDir != null)
-        (builtins.map (p: { haddockDir = if p ? haddockDir then p.haddockDir p else null;
-                            name = p.pname; })
-          docPackages))}
+      (builtins.map (p: { haddockDir = if p ? haddockDir then p.haddockDir p else null;
+                          name = p.pname; })
+        docPackages)}
 
     echo building hoogle database
     hoogle generate --database $out/share/doc/hoogle/default.hoo --local=$out/share/doc/hoogle