about summary refs log tree commit diff
path: root/pkgs/development/interpreters/clojure
diff options
context:
space:
mode:
authorEelco Dolstra <eelco.dolstra@logicblox.com>2014-01-03 14:48:21 +0100
committerEelco Dolstra <eelco.dolstra@logicblox.com>2014-01-03 14:48:21 +0100
commit8398b23e1033faab48e26ad346ccc5066b2988f0 (patch)
tree250fd84c37296f30b1ac01cdc06f36c7b034583f /pkgs/development/interpreters/clojure
parentb96d3ca233d32b3a21e5d3227dcfef75fa4c7cb6 (diff)
downloadnixlib-8398b23e1033faab48e26ad346ccc5066b2988f0.tar
nixlib-8398b23e1033faab48e26ad346ccc5066b2988f0.tar.gz
nixlib-8398b23e1033faab48e26ad346ccc5066b2988f0.tar.bz2
nixlib-8398b23e1033faab48e26ad346ccc5066b2988f0.tar.lz
nixlib-8398b23e1033faab48e26ad346ccc5066b2988f0.tar.xz
nixlib-8398b23e1033faab48e26ad346ccc5066b2988f0.tar.zst
nixlib-8398b23e1033faab48e26ad346ccc5066b2988f0.zip
clojure: Update to 1.5.1
Also, merge the wrapper into the main package, and get rid of the
binary variant.
Diffstat (limited to 'pkgs/development/interpreters/clojure')
-rw-r--r--pkgs/development/interpreters/clojure/binary.nix47
-rw-r--r--pkgs/development/interpreters/clojure/default.nix23
-rw-r--r--pkgs/development/interpreters/clojure/wrapper.nix11
3 files changed, 10 insertions, 71 deletions
diff --git a/pkgs/development/interpreters/clojure/binary.nix b/pkgs/development/interpreters/clojure/binary.nix
deleted file mode 100644
index 1678a9323799..000000000000
--- a/pkgs/development/interpreters/clojure/binary.nix
+++ /dev/null
@@ -1,47 +0,0 @@
-{stdenv, fetchurl, unzip}:
-
-stdenv.mkDerivation rec {
-  version = "1.5.1";
-  name = "clojure-binary-${version}";
-
-  src = fetchurl {
-    url = "http://repo1.maven.org/maven2/org/clojure/clojure/${version}/clojure-${version}.zip";
-    sha256 = "1qgiji6ddvv40khp3qb3xfz09g7p4nnsh3pywqglb9f16v534yzy";
-  };
-
-
-  buildInputs = [ unzip ];
-
-  phases = "unpackPhase installPhase";
-
-  installPhase = "
-    mkdir -p $out/lib/java
-    cp clojure-${version}.jar clojure.jar
-    install -t $out/lib/java clojure.jar
-  ";
-
-  meta = {
-    description = "a Lisp dialect for the JVM";
-    homepage = http://clojure.org/;
-    license = stdenv.lib.licenses.bsd3;
-    longDescription = ''
-      Clojure is a dynamic programming language that targets the Java
-      Virtual Machine. It is designed to be a general-purpose language,
-      combining the approachability and interactive development of a
-      scripting language with an efficient and robust infrastructure for
-      multithreaded programming. Clojure is a compiled language - it
-      compiles directly to JVM bytecode, yet remains completely
-      dynamic. Every feature supported by Clojure is supported at
-      runtime. Clojure provides easy access to the Java frameworks, with
-      optional type hints and type inference, to ensure that calls to Java
-      can avoid reflection.
-
-      Clojure is a dialect of Lisp, and shares with Lisp the code-as-data
-      philosophy and a powerful macro system. Clojure is predominantly a
-      functional programming language, and features a rich set of immutable,
-      persistent data structures. When mutable state is needed, Clojure
-      offers a software transactional memory system and reactive Agent
-      system that ensure clean, correct, multithreaded designs.
-    '';
-  };
-}
diff --git a/pkgs/development/interpreters/clojure/default.nix b/pkgs/development/interpreters/clojure/default.nix
index dbbe4a9dcc31..239dc1afa2a4 100644
--- a/pkgs/development/interpreters/clojure/default.nix
+++ b/pkgs/development/interpreters/clojure/default.nix
@@ -1,30 +1,27 @@
-{stdenv, fetchurl, unzip, ant, version ? "1.4.0" }:
+{ stdenv, fetchurl, unzip, ant, jdk, makeWrapper }:
+
+let version = "1.5.1"; in
 
-let 
-  src_hashes = {
-    "1.4.0" = "27a5a151d5cc1bc3e52dff47c66111e637fefeb42d9bedfa1284a1a31d080171";
-    "1.5.0-RC1" = "111jm0nxkvqr1vrwcpvr70v5paasp8msrj5h8zm1c144c8zc1vln";
-  };
-in 
 stdenv.mkDerivation {
   name = "clojure-${version}";
 
   src = fetchurl {
     url = "http://repo1.maven.org/maven2/org/clojure/clojure/${version}/clojure-${version}.zip";
-    sha256 = (builtins.getAttr version src_hashes); 
+    sha256 = "1qgiji6ddvv40khp3qb3xfz09g7p4nnsh3pywqglb9f16v534yzy";
   };
 
-  buildInputs = [ unzip ant ];
+  buildInputs = [ unzip ant jdk makeWrapper ];
 
   buildPhase = "ant jar";
 
-  installPhase = "
-    mkdir -p $out/lib/java
+  installPhase = ''
+    mkdir -p $out/lib/java $out/bin/java
     install -t $out/lib/java clojure.jar
-  ";
+    makeWrapper ${jdk.jre}/bin/java $out/bin/clojure --add-flags "-cp $out/lib/java/clojure.jar clojure.main"
+  '';
 
   meta = {
-    description = "a Lisp dialect for the JVM";
+    description = "A Lisp dialect for the JVM";
     homepage = http://clojure.org/;
     license = stdenv.lib.licenses.bsd3;
     longDescription = ''
diff --git a/pkgs/development/interpreters/clojure/wrapper.nix b/pkgs/development/interpreters/clojure/wrapper.nix
deleted file mode 100644
index a2a9a4044621..000000000000
--- a/pkgs/development/interpreters/clojure/wrapper.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{writeTextFile, jre, clojure}:
-
-writeTextFile {
-  name = "clojure-wrapper";
-  executable = true;
-  destination = "/bin/clojure";
-  text = ''
-    #!/bin/sh
-    exec ${jre}/bin/java -cp ${clojure}/lib/java/clojure.jar clojure.main
-  '';
-}
\ No newline at end of file