From: Kurt Miller Subject: Re: devel/leiningen: Update to 2.12.0 and use jdk 11+ To: op@omarpolo.com, ports@openbsd.org Date: Wed, 17 Dec 2025 22:53:36 +0000 On Dec 17, 2025, at 4:28PM, Omar Polo wrote: | seems fine to me. i have to admit that I've probably forgot how to use | lein in practice, because a `lein run' in a new project (`lein new app | test') fails because it cannot run program "java". happens the same on | the current version tho, which makes me believe that the problem lies | between the chair and the computer ;-) Thanks for testing. I needed to export JAVA_CMD and I also missed a spot. Please try this version. Index: Makefile =================================================================== RCS file: /cvs/ports/devel/leiningen/Makefile,v diff -u -p -u -r1.17 Makefile --- Makefile 4 Mar 2024 11:04:30 -0000 1.17 +++ Makefile 17 Dec 2025 22:49:52 -0000 @@ -1,6 +1,6 @@ COMMENT = Clojure project automation -V = 2.11.2 +V = 2.12.0 DIST_TUPLE = codeberg leiningen leiningen $V . JAR_FILE = ${DISTNAME}-standalone.jar @@ -17,8 +17,9 @@ EXTRACT_ONLY = ${ALL_DISTFILES:N*.jar} PERMIT_PACKAGE = Yes MODULES = java -# upstream recommends OpenJDK 8, do not use + since JAVA_HOME is used -MODJAVA_VER = 1.8 +MODJAVA_VER = 11+ + +RUN_DEPENDS = java/javaPathHelper NO_BUILD = Yes NO_TEST = Yes @@ -29,8 +30,7 @@ LEIN_DIR = ${PREFIX}/share/leiningen BASH_DIR = ${PREFIX}/share/bash_completion.d ZSH_DIR = ${PREFIX}/share/zsh/site-functions -SUBST_VARS += JAR_FILE \ - JAVA_HOME +SUBST_VARS += JAR_FILE WRKDIST = ${WRKDIR}/leiningen Index: distinfo =================================================================== RCS file: /cvs/ports/devel/leiningen/distinfo,v diff -u -p -u -r1.9 distinfo --- distinfo 4 Mar 2024 11:04:30 -0000 1.9 +++ distinfo 17 Dec 2025 22:49:52 -0000 @@ -1,4 +1,4 @@ -SHA256 (leiningen-2.11.2-standalone.jar) = fTGuI652npJ0OLDNVdFak+faurCf1PwVh3l5Fh4Qh3Q= -SHA256 (leiningen-leiningen-2.11.2.tar.gz) = uN0zAEDtRzGD+8SovEBOxU+S+BgXLgw5ltfGWreUCh4= -SIZE (leiningen-2.11.2-standalone.jar) = 16481883 -SIZE (leiningen-leiningen-2.11.2.tar.gz) = 981415 +SHA256 (leiningen-2.12.0-standalone.jar) = tyGlc69jF4TyfMtS5xnm0Sh9nTlRrVbTFtOPfs+oGqI= +SHA256 (leiningen-leiningen-2.12.0.tar.gz) = oDF+j8kzTc2UW4f2i2G8DT1+O9o02eLKEWxjbxqqjQc= +SIZE (leiningen-2.12.0-standalone.jar) = 16755522 +SIZE (leiningen-leiningen-2.12.0.tar.gz) = 978904 Index: patches/patch-bin_lein =================================================================== RCS file: patches/patch-bin_lein diff -N patches/patch-bin_lein --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-bin_lein 17 Dec 2025 22:49:52 -0000 @@ -0,0 +1,14 @@ +Use javaPathHelper for setting default JAVA_CMD + +Index: bin/lein +--- bin/lein.orig ++++ bin/lein +@@ -415,6 +415,8 @@ else + fi + fi + ++export JAVA_CMD=$(javaPathHelper -c leiningen) ++ + if [ ! -x "$JAVA_CMD" ] && ! type -f java >/dev/null + then + msg "Leiningen couldn't find 'java' executable, which is required." Index: patches/patch-bin_lein-pkg =================================================================== RCS file: /cvs/ports/devel/leiningen/patches/patch-bin_lein-pkg,v diff -u -p -u -r1.6 patch-bin_lein-pkg --- patches/patch-bin_lein-pkg 13 Oct 2023 09:23:58 -0000 1.6 +++ patches/patch-bin_lein-pkg 17 Dec 2025 22:49:52 -0000 @@ -1,7 +1,7 @@ - fix shebang - fix syntax so it runs with ksh (x2) - set path to standalone jar -- set path to java executable +- use javaPathHelper for JAVA_CMD Index: bin/lein-pkg --- bin/lein-pkg.orig @@ -39,7 +39,7 @@ Index: bin/lein-pkg add_path CLASSPATH "$LEIN_JAR" if [ "$LEIN_USE_BOOTCLASSPATH" != "no" ]; then -@@ -198,7 +200,7 @@ BIN_DIR="$(dirname "$SCRIPT")" +@@ -197,7 +199,7 @@ BIN_DIR="$(dirname "$SCRIPT")" # If you're not using an uberjar you'll need to list each dependency # and add them individually to the classpath/bootclasspath as well. @@ -48,11 +48,12 @@ Index: bin/lein-pkg export LEIN_JVM_OPTS="${LEIN_JVM_OPTS-"-XX:+TieredCompilation -XX:TieredStopAtLevel=1"}" -@@ -221,6 +223,7 @@ grep -E -q '^\s*:eval-in\s+:classloader\s*$' project.c +@@ -219,6 +221,8 @@ grep -E -q '^\s*:eval-in\s+:classloader\s*$' project.c + export LEIN_JVM_OPTS="$LEIN_JVM_OPTS -Xms64m -Xmx512m" run_from_checkout "$1" ++ ++export JAVA_CMD=$(javaPathHelper -c leiningen) -+JAVA_CMD=${JAVA_CMD:-"${JAVA_HOME}/bin/java"} if [ ! -x "$JAVA_CMD" ] && ! type -f java >/dev/null then - msg "Leiningen couldn't find 'java' executable, which is required." Index: pkg/PLIST =================================================================== RCS file: /cvs/ports/devel/leiningen/pkg/PLIST,v diff -u -p -u -r1.4 PLIST --- pkg/PLIST 11 Mar 2022 18:50:28 -0000 1.4 +++ pkg/PLIST 17 Dec 2025 22:49:52 -0000 @@ -3,6 +3,7 @@ bin/lein share/bash_completion.d/ share/bash_completion.d/lein share/doc/leiningen/ +share/doc/leiningen/BEGINNER_MISTAKES.md share/doc/leiningen/DEPLOY.md share/doc/leiningen/FAQ.md share/doc/leiningen/GPG.md