aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/pkgs/development/haskell-modules/with-packages-wrapper.nix
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/development/haskell-modules/with-packages-wrapper.nix')
-rw-r--r--nixpkgs/pkgs/development/haskell-modules/with-packages-wrapper.nix12
1 files changed, 12 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/haskell-modules/with-packages-wrapper.nix b/nixpkgs/pkgs/development/haskell-modules/with-packages-wrapper.nix
index 32fa46fd04a..dc105c845d7 100644
--- a/nixpkgs/pkgs/development/haskell-modules/with-packages-wrapper.nix
+++ b/nixpkgs/pkgs/development/haskell-modules/with-packages-wrapper.nix
@@ -105,6 +105,18 @@ symlinkJoin {
--set "NIX_${ghcCommandCaps}_LIBDIR" "${libDir}"
fi
+ # ghcide 0.2.0 does package discovery without calling our ghc wrapper.
+ # 2020-08-16 We can most likely remove this workaround as soon as we build ghcide with a newer hie-bios (currently we use 0.5.1 from stack)
+ for prg in ghcide; do
+ if [[ -x "$out/bin/$prg" ]]; then
+ wrapProgram $out/bin/$prg \
+ --set "NIX_${ghcCommandCaps}" "$out/bin/${ghcCommand}" \
+ --set "NIX_${ghcCommandCaps}PKG" "$out/bin/${ghcCommand}-pkg" \
+ --set "NIX_${ghcCommandCaps}_DOCDIR" "${docDir}" \
+ --set "NIX_${ghcCommandCaps}_LIBDIR" "${libDir}"
+ fi
+ done
+
'' + (lib.optionalString (stdenv.targetPlatform.isDarwin && !isGhcjs && !stdenv.targetPlatform.isiOS) ''
# Work around a linker limit in macOS Sierra (see generic-builder.nix):
local packageConfDir="$out/lib/${ghc.name}/package.conf.d";