summary refs log tree commit diff
path: root/pkgs/development/tools/misc/clojure-lsp
diff options
context:
space:
mode:
authorThiago Kenji Okada <thiagokokada@gmail.com>2022-01-06 19:47:44 -0300
committerThiago Kenji Okada <thiagokokada@gmail.com>2022-01-06 19:50:25 -0300
commite1c79ccfe4076fe4ac8d61aaf87565c7582bfd2e (patch)
tree3da951c3919931d7f96bf2cecb394a8e51a3e721 /pkgs/development/tools/misc/clojure-lsp
parent952aa6f820ce6ec717425c54b5817c81aac279c5 (diff)
clojure-lsp: fix build on macOS
Instead of setting the environment variable using Nix, use `preBuild`
hook to inject the value `DTLV_LIB_EXTRACT_DIR` on directly to
`nativeImageBuildArgs`. This will allow us to use a dynamically value
generated with `mktemp -d`.

Fix issue #153765.
Diffstat (limited to 'pkgs/development/tools/misc/clojure-lsp')
-rw-r--r--pkgs/development/tools/misc/clojure-lsp/default.nix8
1 files changed, 6 insertions, 2 deletions
diff --git a/pkgs/development/tools/misc/clojure-lsp/default.nix b/pkgs/development/tools/misc/clojure-lsp/default.nix
index 5e3c750852df3..2e11ad9f8add1 100644
--- a/pkgs/development/tools/misc/clojure-lsp/default.nix
+++ b/pkgs/development/tools/misc/clojure-lsp/default.nix
@@ -17,10 +17,14 @@ buildGraalvmNativeImage rec {
   };
 
   # https://github.com/clojure-lsp/clojure-lsp/blob/2021.11.02-15.24.47/graalvm/native-unix-compile.sh#L18-L27
-  DTLV_LIB_EXTRACT_DIR = "/tmp";
+  # Needs to be inject on `nativeImageBuildArgs` inside shell environment,
+  # otherwise we can't expand to the value set in `mktemp -d` call
+  preBuild = ''
+    export DTLV_LIB_EXTRACT_DIR="$(mktemp -d)"
+    nativeImageBuildArgs+=("-H:CLibraryPath=$DTLV_LIB_EXTRACT_DIR")
+  '';
 
   extraNativeImageBuildArgs = [
-    "-H:CLibraryPath=${DTLV_LIB_EXTRACT_DIR}"
     "--no-fallback"
     "--native-image-info"
   ];