Subject: [bug#74973] [PATCH] gnu: Fix clojure-tools.

From: Rostislav Svoboda <[email-masked]>
Date: Thu, 19 Dec 2024 15:22:27 +0100

* gnu/packages/clojure.scm (clojure-tools): The AOT compiled JAR must be
included and used by the bin/clojure script.

See also
https://yhetil.org/guix-user/[email-masked]/

Change-Id: I3a8221fd415631f191cbf6ddcb0e8ecbd94e389f
---
 gnu/packages/clojure.scm | 21 ++++-----------------
 1 file changed, 4 insertions(+), 17 deletions(-)

diff --git a/gnu/packages/clojure.scm b/gnu/packages/clojure.scm
index 09674f541e..6146b38753 100644
--- a/gnu/packages/clojure.scm
+++ b/gnu/packages/clojure.scm
@@ -204,18 +204,14 @@ (define-public clojure
 (define-public clojure-tools
   (package
     (name "clojure-tools")
-    (version "1.11.1.1413")
+    (version "1.12.0.1488")
     (source
      (origin
        (method url-fetch)
        (uri (string-append "https://download.clojure.org/install/clojure-tools-"
                            version
                            ".tar.gz"))
-       (sha256 (base32 "1q0z71ifdxwvyy9gvq8mx8jbygf8cszrlhb3h22walfamnisbhwk"))
-       ;; Remove AOT compiled JAR.  The other JAR only contains uncompiled
-       ;; Clojure source code.
-       (snippet
-        `(delete-file ,(string-append "clojure-tools-" version ".jar")))))
+       (sha256 (base32 "0hh78b22shj530armm9850cqr85wqdxyqfzx4qf45w5y200bw6dw"))))
     (build-system copy-build-system)
     (arguments
      `(#:install-plan
@@ -223,6 +219,7 @@ (define-public clojure-tools
          ("example-deps.edn" "lib/clojure/")
          ("tools.edn" "lib/clojure/")
          ("exec.jar" "lib/clojure/libexec/")
+         (,(string-append "clojure-tools-" version ".jar") "lib/clojure/libexec/")
          ("clojure" "bin/")
          ("clj" "bin/"))
        #:modules ((guix build copy-build-system)
@@ -237,17 +234,7 @@ (define-public clojure-tools
                (("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)
-                 ":"))))))))
+               (("rlwrap") (which "rlwrap"))))))))
     (inputs (list rlwrap
                   clojure
                   clojure-tools-deps

base-commit: 5634bc206d82a867850c86044c423b0a8700f34e
-- 
2.46.0