gnu: josm: Reduce closure size.

This saves 240MB of closure size.

* gnu/packages/geo.scm (josm)[inputs]: Add openjdk11.
[arguments]: Filter native inputs out of CLASSPATH.  Use `java' from
openjdk11 instead of the JDK.

Change-Id: Ifa03b5cd033c5866d22e7557119284be0ea25a0e
This commit is contained in:
Julien Lepiller 2023-11-09 19:51:05 +01:00
parent a640ce3fb2
commit 06ebc45e15
No known key found for this signature in database
GPG key ID: 53D457B2D636EE82

View file

@ -1970,7 +1970,8 @@ (define-public josm
java-openjfx-media
java-parsson ; runtime dependency
java-signpost-core
java-svg-salamander))
java-svg-salamander
openjdk11))
(arguments
`(#:tests? #f
#:jar-name "josm.jar"
@ -2070,9 +2071,16 @@ (define-public josm
(lambda _
(display
(string-append "#!/bin/sh\n"
(assoc-ref inputs "jdk") "/bin/java"
(assoc-ref inputs "openjdk") "/bin/java"
" -cp " out "/share/java/josm.jar:"
(getenv "CLASSPATH")
;; CLASSPATH, but remove native inputs
(string-join
(filter
(lambda (jar)
(and (not (string-contains jar "-jdk/"))
(not (string-contains jar "-javacc-"))))
(string-split (getenv "CLASSPATH") #\:))
":")
" org.openstreetmap.josm.gui.MainApplication"))))
(chmod (string-append bin "/josm") #o755))
#t)))))