[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
09/10: gnu: Add clojure-tools.
From: |
guix-commits |
Subject: |
09/10: gnu: Add clojure-tools. |
Date: |
Wed, 12 Jan 2022 11:44:23 -0500 (EST) |
rekado pushed a commit to branch master
in repository guix.
commit 8cf2817d4c2e0ab8c7ab219be444f6ffa2970549
Author: Reily Siegel <mail@reilysiegel.com>
AuthorDate: Thu Dec 23 18:04:46 2021 -0500
gnu: Add clojure-tools.
* gnu/packages/clojure.scm (clojure-tools): New variable.
---
gnu/packages/clojure.scm | 58 ++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 58 insertions(+)
diff --git a/gnu/packages/clojure.scm b/gnu/packages/clojure.scm
index 0cd064adf6..cb8a7a2cbe 100644
--- a/gnu/packages/clojure.scm
+++ b/gnu/packages/clojure.scm
@@ -24,11 +24,13 @@
#:use-module (gnu packages)
#:use-module (gnu packages java)
#:use-module (gnu packages maven)
+ #:use-module (gnu packages readline)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system ant)
+ #:use-module (guix build-system copy)
#:use-module (guix build-system clojure)
#:use-module (ice-9 match))
@@ -164,6 +166,62 @@ designs.")
license:asl2.0
license:cpl1.0)))))
+(define-public clojure-tools
+ (package
+ (name "clojure-tools")
+ (version "1.10.3.1040")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
"https://download.clojure.org/install/clojure-tools-"
+ version
+ ".tar.gz"))
+ (sha256 (base32 "0xvr9nmk9q789vp32zmmzj4macv8v7y9ivnfd6lf7i8vxgg6hvgv"))
+ ;; Remove AOT compiled JAR. The other JAR only contains uncompiled
+ ;; Clojure source code.
+ (snippet
+ `(delete-file ,(string-append "clojure-tools-" version ".jar")))))
+ (build-system copy-build-system)
+ (arguments
+ `(#:install-plan
+ '(("deps.edn" "lib/clojure/")
+ ("example-deps.edn" "lib/clojure/")
+ ("exec.jar" "lib/clojure/libexec/")
+ ("clojure" "bin/")
+ ("clj" "bin/"))
+ #:modules ((guix build copy-build-system)
+ (guix build utils)
+ (srfi srfi-1)
+ (ice-9 match))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-paths
+ (lambda* (#:key outputs #:allow-other-keys)
+ (substitute* "clojure"
+ (("PREFIX") (string-append (assoc-ref outputs "out")
"/lib/clojure")))
+ (substitute* "clj"
+ (("BINDIR") (string-append (assoc-ref outputs "out") "/bin"))
+ (("rlwrap") (which "rlwrap")))))
+ (add-after 'fix-paths 'copy-tools-deps-alpha-jar
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (substitute* "clojure"
+ (("\\$install_dir/libexec/clojure-tools-\\$version\\.jar")
+ (string-join
+ (append-map (match-lambda
+ ((label . dir)
+ (find-files dir "\\.jar$")))
+ inputs)
+ ":"))))))))
+ (inputs (list rlwrap
+ clojure
+ clojure-tools-deps-alpha
+ java-commons-logging-minimal))
+ (home-page "https://clojure.org/releases/tools")
+ (synopsis "CLI tools for the Clojure programming language")
+ (description "The Clojure command line tools can be used to start a
+Clojure repl, use Clojure and Java libraries, and start Clojure programs.")
+ (license license:epl1.0)))
+
(define-public clojure-algo-generic
(package
(name "clojure-algo-generic")
- branch master updated (496a02d293 -> 9fe48723c8), guix-commits, 2022/01/12
- 03/10: build: clojure-utils: Don't try to compile Clojure., guix-commits, 2022/01/12
- 01/10: gnu: Add maven-resolver-transport-file., guix-commits, 2022/01/12
- 05/10: gnu: Add clojure-tools-gitlibs., guix-commits, 2022/01/12
- 08/10: gnu: Add clojure-tools-deps-alpha., guix-commits, 2022/01/12
- 02/10: gnu: Add maven-resolver-transport-http., guix-commits, 2022/01/12
- 09/10: gnu: Add clojure-tools.,
guix-commits <=
- 06/10: gnu: Add clojure-data-codec., guix-commits, 2022/01/12
- 04/10: gnu: Add clojure-test-check., guix-commits, 2022/01/12
- 10/10: gnu: clojure: Remove wrapper in favor of using clojure-tools., guix-commits, 2022/01/12
- 07/10: gnu: Add clojure-data-xml., guix-commits, 2022/01/12