about summary refs log tree commit diff
path: root/pkgs/development/interpreters
diff options
context:
space:
mode:
authorHerwig Hochleitner <herwig@bendlas.net>2018-02-16 00:29:38 +0100
committerHerwig Hochleitner <herwig@bendlas.net>2018-02-16 00:32:58 +0100
commit8ac63bd82c1e1a4c22f363d8ffb6546bb5ae18f5 (patch)
tree5fa936c3b18c6a272ecfd2bc0c5f8849f230e142 /pkgs/development/interpreters
parentb98a3f247abe94ecdd96719df1a3e5dfc9ebf25a (diff)
clojure: fix for running in pure environments
this wraps `clojure` and `clj` to add their dependencies to the path

cc @the-kenny @zequix
Diffstat (limited to 'pkgs/development/interpreters')
-rw-r--r--pkgs/development/interpreters/clojure/default.nix7
1 files changed, 5 insertions, 2 deletions
diff --git a/pkgs/development/interpreters/clojure/default.nix b/pkgs/development/interpreters/clojure/default.nix
index 143b2a8c01e19..3b071d3afb3a8 100644
--- a/pkgs/development/interpreters/clojure/default.nix
+++ b/pkgs/development/interpreters/clojure/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, jdk, makeWrapper }:
+{ stdenv, fetchurl, jdk, rlwrap, makeWrapper }:
 
 let version = "1.9.0.326"; in
 
@@ -10,7 +10,7 @@ stdenv.mkDerivation {
     sha256 = "0sf8gy39iz4jxj2wic1lbdwdwbj90k3awhr0kq76gr1z1dwbj6s9";
   };
 
-  buildInputs = [ jdk makeWrapper ];
+  buildInputs = [ makeWrapper ];
 
   installPhase = ''
     pwd
@@ -20,6 +20,9 @@ stdenv.mkDerivation {
     cp -f clojure-tools-${version}.jar $out/libexec
     sed -i -e "s@PREFIX@$out@g" clojure
     cp -f clj clojure $out/bin
+    for program in $out/bin/{clojure,clj}; do
+      wrapProgram $program --suffix PATH : $out/bin:${jdk.jre}/bin:${rlwrap}/bin
+    done
   '';
 
   meta = with stdenv.lib; {