From e199c3dcd2eb1cbd765c2f8b14b75061ec460c9e Mon Sep 17 00:00:00 2001 From: Wes Morgan Date: Mon, 22 Sep 2025 10:23:11 -0600 Subject: [PATCH 1/4] Remove manifest log that corrupts the file --- src/docker_clojure/core.clj | 1 - 1 file changed, 1 deletion(-) diff --git a/src/docker_clojure/core.clj b/src/docker_clojure/core.clj index 4e734f1f..8b5853b8 100644 --- a/src/docker_clojure/core.clj +++ b/src/docker_clojure/core.clj @@ -86,7 +86,6 @@ :architectures cfg/architectures :git-repo cfg/git-repo} git-head variants)] - (log "Writing manifest of" (count variants) "variants to" target-file "...") (let [output-writer (if (= :stdout target-file) *out* (io/writer target-file))] From 068b549332de7affde2fda7424844654a95ed460 Mon Sep 17 00:00:00 2001 From: Wes Morgan Date: Mon, 22 Sep 2025 15:48:20 -0600 Subject: [PATCH 2/4] Add JDK 25 to build matrix --- src/docker_clojure/config.clj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/docker_clojure/config.clj b/src/docker_clojure/config.clj index 955f0f27..b51b31da 100644 --- a/src/docker_clojure/config.clj +++ b/src/docker_clojure/config.clj @@ -73,7 +73,7 @@ (def git-repo "https://github.com/Quantisan/docker-clojure.git") -(def jdk-versions #{8 11 17 21 24}) +(def jdk-versions #{8 11 17 21 24 25}) (def base-images "Map of JDK version to base image name(s) with :default as a fallback" From 1eb048b95990a77b553502606b24b3e0beda2003 Mon Sep 17 00:00:00 2001 From: Wes Morgan Date: Mon, 22 Sep 2025 15:49:04 -0600 Subject: [PATCH 3/4] Add JDK 25 Dockerfiles --- target/debian-bookworm-25/lein/Dockerfile | 48 +++++++++++++++++++ target/debian-bookworm-25/lein/entrypoint | 21 ++++++++ .../debian-bookworm-25/tools-deps/Dockerfile | 32 +++++++++++++ .../debian-bookworm-25/tools-deps/entrypoint | 21 ++++++++ .../tools-deps/rlwrap.retry | 30 ++++++++++++ .../debian-bookworm-slim-25/lein/Dockerfile | 48 +++++++++++++++++++ .../debian-bookworm-slim-25/lein/entrypoint | 21 ++++++++ .../tools-deps/Dockerfile | 32 +++++++++++++ .../tools-deps/entrypoint | 21 ++++++++ .../tools-deps/rlwrap.retry | 30 ++++++++++++ target/debian-bullseye-25/lein/Dockerfile | 48 +++++++++++++++++++ target/debian-bullseye-25/lein/entrypoint | 21 ++++++++ .../debian-bullseye-25/tools-deps/Dockerfile | 32 +++++++++++++ .../debian-bullseye-25/tools-deps/entrypoint | 21 ++++++++ .../tools-deps/rlwrap.retry | 30 ++++++++++++ .../debian-bullseye-slim-25/lein/Dockerfile | 48 +++++++++++++++++++ .../debian-bullseye-slim-25/lein/entrypoint | 21 ++++++++ .../tools-deps/Dockerfile | 32 +++++++++++++ .../tools-deps/entrypoint | 21 ++++++++ .../tools-deps/rlwrap.retry | 30 ++++++++++++ target/debian-trixie-25/lein/Dockerfile | 48 +++++++++++++++++++ target/debian-trixie-25/lein/entrypoint | 21 ++++++++ target/debian-trixie-25/tools-deps/Dockerfile | 32 +++++++++++++ target/debian-trixie-25/tools-deps/entrypoint | 21 ++++++++ .../debian-trixie-25/tools-deps/rlwrap.retry | 30 ++++++++++++ target/debian-trixie-slim-25/lein/Dockerfile | 48 +++++++++++++++++++ target/debian-trixie-slim-25/lein/entrypoint | 21 ++++++++ .../tools-deps/Dockerfile | 32 +++++++++++++ .../tools-deps/entrypoint | 21 ++++++++ .../tools-deps/rlwrap.retry | 30 ++++++++++++ .../lein/Dockerfile | 42 ++++++++++++++++ .../lein/entrypoint | 21 ++++++++ .../tools-deps/Dockerfile | 26 ++++++++++ .../tools-deps/entrypoint | 21 ++++++++ .../tools-deps/rlwrap.retry | 30 ++++++++++++ .../lein/Dockerfile | 44 +++++++++++++++++ .../lein/entrypoint | 21 ++++++++ .../tools-deps/Dockerfile | 27 +++++++++++ .../tools-deps/entrypoint | 21 ++++++++ .../tools-deps/rlwrap.retry | 30 ++++++++++++ 40 files changed, 1195 insertions(+) create mode 100644 target/debian-bookworm-25/lein/Dockerfile create mode 100755 target/debian-bookworm-25/lein/entrypoint create mode 100644 target/debian-bookworm-25/tools-deps/Dockerfile create mode 100755 target/debian-bookworm-25/tools-deps/entrypoint create mode 100755 target/debian-bookworm-25/tools-deps/rlwrap.retry create mode 100644 target/debian-bookworm-slim-25/lein/Dockerfile create mode 100755 target/debian-bookworm-slim-25/lein/entrypoint create mode 100644 target/debian-bookworm-slim-25/tools-deps/Dockerfile create mode 100755 target/debian-bookworm-slim-25/tools-deps/entrypoint create mode 100755 target/debian-bookworm-slim-25/tools-deps/rlwrap.retry create mode 100644 target/debian-bullseye-25/lein/Dockerfile create mode 100755 target/debian-bullseye-25/lein/entrypoint create mode 100644 target/debian-bullseye-25/tools-deps/Dockerfile create mode 100755 target/debian-bullseye-25/tools-deps/entrypoint create mode 100755 target/debian-bullseye-25/tools-deps/rlwrap.retry create mode 100644 target/debian-bullseye-slim-25/lein/Dockerfile create mode 100755 target/debian-bullseye-slim-25/lein/entrypoint create mode 100644 target/debian-bullseye-slim-25/tools-deps/Dockerfile create mode 100755 target/debian-bullseye-slim-25/tools-deps/entrypoint create mode 100755 target/debian-bullseye-slim-25/tools-deps/rlwrap.retry create mode 100644 target/debian-trixie-25/lein/Dockerfile create mode 100755 target/debian-trixie-25/lein/entrypoint create mode 100644 target/debian-trixie-25/tools-deps/Dockerfile create mode 100755 target/debian-trixie-25/tools-deps/entrypoint create mode 100755 target/debian-trixie-25/tools-deps/rlwrap.retry create mode 100644 target/debian-trixie-slim-25/lein/Dockerfile create mode 100755 target/debian-trixie-slim-25/lein/entrypoint create mode 100644 target/debian-trixie-slim-25/tools-deps/Dockerfile create mode 100755 target/debian-trixie-slim-25/tools-deps/entrypoint create mode 100755 target/debian-trixie-slim-25/tools-deps/rlwrap.retry create mode 100644 target/eclipse-temurin-25-jdk-alpine/lein/Dockerfile create mode 100755 target/eclipse-temurin-25-jdk-alpine/lein/entrypoint create mode 100644 target/eclipse-temurin-25-jdk-alpine/tools-deps/Dockerfile create mode 100755 target/eclipse-temurin-25-jdk-alpine/tools-deps/entrypoint create mode 100755 target/eclipse-temurin-25-jdk-alpine/tools-deps/rlwrap.retry create mode 100644 target/eclipse-temurin-25-jdk-noble/lein/Dockerfile create mode 100755 target/eclipse-temurin-25-jdk-noble/lein/entrypoint create mode 100644 target/eclipse-temurin-25-jdk-noble/tools-deps/Dockerfile create mode 100755 target/eclipse-temurin-25-jdk-noble/tools-deps/entrypoint create mode 100755 target/eclipse-temurin-25-jdk-noble/tools-deps/rlwrap.retry diff --git a/target/debian-bookworm-25/lein/Dockerfile b/target/debian-bookworm-25/lein/Dockerfile new file mode 100644 index 00000000..9783cd97 --- /dev/null +++ b/target/debian-bookworm-25/lein/Dockerfile @@ -0,0 +1,48 @@ +FROM debian:bookworm + +ENV JAVA_HOME=/opt/java/openjdk +COPY --from=eclipse-temurin:25 $JAVA_HOME $JAVA_HOME +ENV PATH="${JAVA_HOME}/bin:${PATH}" + +ENV LEIN_VERSION=2.12.0 +ENV LEIN_INSTALL=/usr/local/bin/ + +WORKDIR /tmp + +# Download the whole repo as an archive +RUN set -eux; \ +apt-get update && \ +apt-get install -y make gnupg wget && \ +rm -rf /var/lib/apt/lists/* && \ +mkdir -p $LEIN_INSTALL && \ +wget -q https://codeberg.org/leiningen/leiningen/raw/tag/$LEIN_VERSION/bin/lein-pkg && \ +echo "Comparing lein-pkg checksum ..." && \ +sha256sum lein-pkg && \ +echo "12a9c5e3a2471619ca3d64a7462f920fdf713ae8959eb4fcd6257c23332b5aa4 *lein-pkg" | sha256sum -c - && \ +mv lein-pkg $LEIN_INSTALL/lein && \ +chmod 0755 $LEIN_INSTALL/lein && \ +export GNUPGHOME="$(mktemp -d)" && \ +export FILENAME_EXT=jar && \ +gpg --batch --keyserver hkps://keyserver.ubuntu.com --recv-keys 9D13D9426A0814B3373CF5E3D8A8243577A7859F && \ +wget -q https://codeberg.org/leiningen/leiningen/releases/download/$LEIN_VERSION/leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT && \ +wget -q https://codeberg.org/leiningen/leiningen/releases/download/$LEIN_VERSION/leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc && \ +echo "Verifying file PGP signature..." && \ +gpg --batch --verify leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT && \ +gpgconf --kill all && \ +rm -rf "$GNUPGHOME" leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc && \ +mkdir -p /usr/share/java && \ +mkdir -p /root/.lein && \ +mv leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT /usr/share/java/leiningen-$LEIN_VERSION-standalone.jar && \ +apt-get purge -y --auto-remove gnupg wget + +ENV PATH=$PATH:$LEIN_INSTALL +ENV LEIN_ROOT 1 + +# Install clojure 1.12.1 so users don't have to download it every time +RUN echo '(defproject dummy "" :dependencies [[org.clojure/clojure "1.12.1"]])' > project.clj \ + && lein deps && rm project.clj + +COPY entrypoint /usr/local/bin/entrypoint + +ENTRYPOINT ["entrypoint"] +CMD ["repl"] diff --git a/target/debian-bookworm-25/lein/entrypoint b/target/debian-bookworm-25/lein/entrypoint new file mode 100755 index 00000000..ccf8cce5 --- /dev/null +++ b/target/debian-bookworm-25/lein/entrypoint @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +set -eou pipefail + +entrypoint=lein + +cmd=${1:-} + +# check if the first arg starts with a hyphen +if [ "$#" -eq 0 ] || [ "${1#-}" != "$1" ]; then + exec "${entrypoint}" "$@" +fi + +if [[ -n "${cmd}" ]]; then + # see if help for the subcommand is successful + if "${entrypoint}" "${cmd}" --help >/dev/null 2>&1; then + exec "${entrypoint}" "$@" + fi +fi + +exec "$@" diff --git a/target/debian-bookworm-25/tools-deps/Dockerfile b/target/debian-bookworm-25/tools-deps/Dockerfile new file mode 100644 index 00000000..5b7086ca --- /dev/null +++ b/target/debian-bookworm-25/tools-deps/Dockerfile @@ -0,0 +1,32 @@ +FROM debian:bookworm + +ENV JAVA_HOME=/opt/java/openjdk +COPY --from=eclipse-temurin:25 $JAVA_HOME $JAVA_HOME +ENV PATH="${JAVA_HOME}/bin:${PATH}" + +ENV CLOJURE_VERSION=1.12.2.1565 + +WORKDIR /tmp + +RUN \ +apt-get update && \ +apt-get install -y curl make git rlwrap && \ +rm -rf /var/lib/apt/lists/* && \ +curl -fsSLO https://download.clojure.org/install/linux-install-$CLOJURE_VERSION.sh && \ +sha256sum linux-install-$CLOJURE_VERSION.sh && \ +echo "68442caaeaaa0780957953dfac11278e3991d3baeb22579fc582ed1b2d5cd152 *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ +chmod +x linux-install-$CLOJURE_VERSION.sh && \ +./linux-install-$CLOJURE_VERSION.sh && \ +rm linux-install-$CLOJURE_VERSION.sh && \ +clojure -e "(clojure-version)" && \ +apt-get purge -y --auto-remove curl + +# Docker bug makes rlwrap crash w/o short sleep first +# Bug: https://github.com/moby/moby/issues/28009 +# As of 2021-09-10 this bug still exists, despite that issue being closed +COPY rlwrap.retry /usr/local/bin/rlwrap + +COPY entrypoint /usr/local/bin/entrypoint + +ENTRYPOINT ["entrypoint"] +CMD ["-M", "--repl"] diff --git a/target/debian-bookworm-25/tools-deps/entrypoint b/target/debian-bookworm-25/tools-deps/entrypoint new file mode 100755 index 00000000..51561d1d --- /dev/null +++ b/target/debian-bookworm-25/tools-deps/entrypoint @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +set -eou pipefail + +entrypoint=clj + +cmd=${1:-} + +# check if the first arg starts with a hyphen +if [ "$#" -eq 0 ] || [ "${1#-}" != "$1" ]; then + exec "${entrypoint}" "$@" +fi + +if [[ -n "${cmd}" ]]; then + # see if help for the subcommand is successful + if "${entrypoint}" "${cmd}" --help >/dev/null 2>&1; then + exec "${entrypoint}" "$@" + fi +fi + +exec "$@" diff --git a/target/debian-bookworm-25/tools-deps/rlwrap.retry b/target/debian-bookworm-25/tools-deps/rlwrap.retry new file mode 100755 index 00000000..83cefbfb --- /dev/null +++ b/target/debian-bookworm-25/tools-deps/rlwrap.retry @@ -0,0 +1,30 @@ +#!/bin/sh + +# This script works around a Docker bug that prevents rlwrap from starting +# right when a container is first started. It is intended to replace +# /usr/bin/rlwrap and also be named rlwrap but earlier in the PATH +# (e.g. /usr/local/bin). + +max_tries=100 # 100 tries is ~1 second +try=0 + +while true; do + # see if rlwrap can start at all + output=$(/usr/bin/rlwrap true 2>&1 >/dev/null) + exit_code=$? + if [ $exit_code -gt 0 ]; then + # it didn't start + try=$((try+1)) + if [ $try -gt $max_tries ]; then + # we're at max attempts so output the error and exit w/ the same code + echo "$output" >&2 + exit $exit_code + else + # wait a bit and try again + sleep 0.01 + fi + else + # rlwrap can start so let's run it for real + exec /usr/bin/rlwrap "$@" + fi +done diff --git a/target/debian-bookworm-slim-25/lein/Dockerfile b/target/debian-bookworm-slim-25/lein/Dockerfile new file mode 100644 index 00000000..0c56b32d --- /dev/null +++ b/target/debian-bookworm-slim-25/lein/Dockerfile @@ -0,0 +1,48 @@ +FROM debian:bookworm-slim + +ENV JAVA_HOME=/opt/java/openjdk +COPY --from=eclipse-temurin:25 $JAVA_HOME $JAVA_HOME +ENV PATH="${JAVA_HOME}/bin:${PATH}" + +ENV LEIN_VERSION=2.12.0 +ENV LEIN_INSTALL=/usr/local/bin/ + +WORKDIR /tmp + +# Download the whole repo as an archive +RUN set -eux; \ +apt-get update && \ +apt-get install -y gnupg wget && \ +rm -rf /var/lib/apt/lists/* && \ +mkdir -p $LEIN_INSTALL && \ +wget -q https://codeberg.org/leiningen/leiningen/raw/tag/$LEIN_VERSION/bin/lein-pkg && \ +echo "Comparing lein-pkg checksum ..." && \ +sha256sum lein-pkg && \ +echo "12a9c5e3a2471619ca3d64a7462f920fdf713ae8959eb4fcd6257c23332b5aa4 *lein-pkg" | sha256sum -c - && \ +mv lein-pkg $LEIN_INSTALL/lein && \ +chmod 0755 $LEIN_INSTALL/lein && \ +export GNUPGHOME="$(mktemp -d)" && \ +export FILENAME_EXT=jar && \ +gpg --batch --keyserver hkps://keyserver.ubuntu.com --recv-keys 9D13D9426A0814B3373CF5E3D8A8243577A7859F && \ +wget -q https://codeberg.org/leiningen/leiningen/releases/download/$LEIN_VERSION/leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT && \ +wget -q https://codeberg.org/leiningen/leiningen/releases/download/$LEIN_VERSION/leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc && \ +echo "Verifying file PGP signature..." && \ +gpg --batch --verify leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT && \ +gpgconf --kill all && \ +rm -rf "$GNUPGHOME" leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc && \ +mkdir -p /usr/share/java && \ +mkdir -p /root/.lein && \ +mv leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT /usr/share/java/leiningen-$LEIN_VERSION-standalone.jar && \ +apt-get purge -y --auto-remove gnupg wget + +ENV PATH=$PATH:$LEIN_INSTALL +ENV LEIN_ROOT 1 + +# Install clojure 1.12.1 so users don't have to download it every time +RUN echo '(defproject dummy "" :dependencies [[org.clojure/clojure "1.12.1"]])' > project.clj \ + && lein deps && rm project.clj + +COPY entrypoint /usr/local/bin/entrypoint + +ENTRYPOINT ["entrypoint"] +CMD ["repl"] diff --git a/target/debian-bookworm-slim-25/lein/entrypoint b/target/debian-bookworm-slim-25/lein/entrypoint new file mode 100755 index 00000000..ccf8cce5 --- /dev/null +++ b/target/debian-bookworm-slim-25/lein/entrypoint @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +set -eou pipefail + +entrypoint=lein + +cmd=${1:-} + +# check if the first arg starts with a hyphen +if [ "$#" -eq 0 ] || [ "${1#-}" != "$1" ]; then + exec "${entrypoint}" "$@" +fi + +if [[ -n "${cmd}" ]]; then + # see if help for the subcommand is successful + if "${entrypoint}" "${cmd}" --help >/dev/null 2>&1; then + exec "${entrypoint}" "$@" + fi +fi + +exec "$@" diff --git a/target/debian-bookworm-slim-25/tools-deps/Dockerfile b/target/debian-bookworm-slim-25/tools-deps/Dockerfile new file mode 100644 index 00000000..0423202e --- /dev/null +++ b/target/debian-bookworm-slim-25/tools-deps/Dockerfile @@ -0,0 +1,32 @@ +FROM debian:bookworm-slim + +ENV JAVA_HOME=/opt/java/openjdk +COPY --from=eclipse-temurin:25 $JAVA_HOME $JAVA_HOME +ENV PATH="${JAVA_HOME}/bin:${PATH}" + +ENV CLOJURE_VERSION=1.12.2.1565 + +WORKDIR /tmp + +RUN \ +apt-get update && \ +apt-get install -y curl make git rlwrap && \ +rm -rf /var/lib/apt/lists/* && \ +curl -fsSLO https://download.clojure.org/install/linux-install-$CLOJURE_VERSION.sh && \ +sha256sum linux-install-$CLOJURE_VERSION.sh && \ +echo "68442caaeaaa0780957953dfac11278e3991d3baeb22579fc582ed1b2d5cd152 *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ +chmod +x linux-install-$CLOJURE_VERSION.sh && \ +./linux-install-$CLOJURE_VERSION.sh && \ +rm linux-install-$CLOJURE_VERSION.sh && \ +clojure -e "(clojure-version)" && \ +apt-get purge -y --auto-remove curl + +# Docker bug makes rlwrap crash w/o short sleep first +# Bug: https://github.com/moby/moby/issues/28009 +# As of 2021-09-10 this bug still exists, despite that issue being closed +COPY rlwrap.retry /usr/local/bin/rlwrap + +COPY entrypoint /usr/local/bin/entrypoint + +ENTRYPOINT ["entrypoint"] +CMD ["-M", "--repl"] diff --git a/target/debian-bookworm-slim-25/tools-deps/entrypoint b/target/debian-bookworm-slim-25/tools-deps/entrypoint new file mode 100755 index 00000000..51561d1d --- /dev/null +++ b/target/debian-bookworm-slim-25/tools-deps/entrypoint @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +set -eou pipefail + +entrypoint=clj + +cmd=${1:-} + +# check if the first arg starts with a hyphen +if [ "$#" -eq 0 ] || [ "${1#-}" != "$1" ]; then + exec "${entrypoint}" "$@" +fi + +if [[ -n "${cmd}" ]]; then + # see if help for the subcommand is successful + if "${entrypoint}" "${cmd}" --help >/dev/null 2>&1; then + exec "${entrypoint}" "$@" + fi +fi + +exec "$@" diff --git a/target/debian-bookworm-slim-25/tools-deps/rlwrap.retry b/target/debian-bookworm-slim-25/tools-deps/rlwrap.retry new file mode 100755 index 00000000..83cefbfb --- /dev/null +++ b/target/debian-bookworm-slim-25/tools-deps/rlwrap.retry @@ -0,0 +1,30 @@ +#!/bin/sh + +# This script works around a Docker bug that prevents rlwrap from starting +# right when a container is first started. It is intended to replace +# /usr/bin/rlwrap and also be named rlwrap but earlier in the PATH +# (e.g. /usr/local/bin). + +max_tries=100 # 100 tries is ~1 second +try=0 + +while true; do + # see if rlwrap can start at all + output=$(/usr/bin/rlwrap true 2>&1 >/dev/null) + exit_code=$? + if [ $exit_code -gt 0 ]; then + # it didn't start + try=$((try+1)) + if [ $try -gt $max_tries ]; then + # we're at max attempts so output the error and exit w/ the same code + echo "$output" >&2 + exit $exit_code + else + # wait a bit and try again + sleep 0.01 + fi + else + # rlwrap can start so let's run it for real + exec /usr/bin/rlwrap "$@" + fi +done diff --git a/target/debian-bullseye-25/lein/Dockerfile b/target/debian-bullseye-25/lein/Dockerfile new file mode 100644 index 00000000..88a69294 --- /dev/null +++ b/target/debian-bullseye-25/lein/Dockerfile @@ -0,0 +1,48 @@ +FROM debian:bullseye + +ENV JAVA_HOME=/opt/java/openjdk +COPY --from=eclipse-temurin:25 $JAVA_HOME $JAVA_HOME +ENV PATH="${JAVA_HOME}/bin:${PATH}" + +ENV LEIN_VERSION=2.12.0 +ENV LEIN_INSTALL=/usr/local/bin/ + +WORKDIR /tmp + +# Download the whole repo as an archive +RUN set -eux; \ +apt-get update && \ +apt-get install -y make gnupg wget && \ +rm -rf /var/lib/apt/lists/* && \ +mkdir -p $LEIN_INSTALL && \ +wget -q https://codeberg.org/leiningen/leiningen/raw/tag/$LEIN_VERSION/bin/lein-pkg && \ +echo "Comparing lein-pkg checksum ..." && \ +sha256sum lein-pkg && \ +echo "12a9c5e3a2471619ca3d64a7462f920fdf713ae8959eb4fcd6257c23332b5aa4 *lein-pkg" | sha256sum -c - && \ +mv lein-pkg $LEIN_INSTALL/lein && \ +chmod 0755 $LEIN_INSTALL/lein && \ +export GNUPGHOME="$(mktemp -d)" && \ +export FILENAME_EXT=jar && \ +gpg --batch --keyserver hkps://keyserver.ubuntu.com --recv-keys 9D13D9426A0814B3373CF5E3D8A8243577A7859F && \ +wget -q https://codeberg.org/leiningen/leiningen/releases/download/$LEIN_VERSION/leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT && \ +wget -q https://codeberg.org/leiningen/leiningen/releases/download/$LEIN_VERSION/leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc && \ +echo "Verifying file PGP signature..." && \ +gpg --batch --verify leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT && \ +gpgconf --kill all && \ +rm -rf "$GNUPGHOME" leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc && \ +mkdir -p /usr/share/java && \ +mkdir -p /root/.lein && \ +mv leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT /usr/share/java/leiningen-$LEIN_VERSION-standalone.jar && \ +apt-get purge -y --auto-remove gnupg wget + +ENV PATH=$PATH:$LEIN_INSTALL +ENV LEIN_ROOT 1 + +# Install clojure 1.12.1 so users don't have to download it every time +RUN echo '(defproject dummy "" :dependencies [[org.clojure/clojure "1.12.1"]])' > project.clj \ + && lein deps && rm project.clj + +COPY entrypoint /usr/local/bin/entrypoint + +ENTRYPOINT ["entrypoint"] +CMD ["repl"] diff --git a/target/debian-bullseye-25/lein/entrypoint b/target/debian-bullseye-25/lein/entrypoint new file mode 100755 index 00000000..ccf8cce5 --- /dev/null +++ b/target/debian-bullseye-25/lein/entrypoint @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +set -eou pipefail + +entrypoint=lein + +cmd=${1:-} + +# check if the first arg starts with a hyphen +if [ "$#" -eq 0 ] || [ "${1#-}" != "$1" ]; then + exec "${entrypoint}" "$@" +fi + +if [[ -n "${cmd}" ]]; then + # see if help for the subcommand is successful + if "${entrypoint}" "${cmd}" --help >/dev/null 2>&1; then + exec "${entrypoint}" "$@" + fi +fi + +exec "$@" diff --git a/target/debian-bullseye-25/tools-deps/Dockerfile b/target/debian-bullseye-25/tools-deps/Dockerfile new file mode 100644 index 00000000..a893758b --- /dev/null +++ b/target/debian-bullseye-25/tools-deps/Dockerfile @@ -0,0 +1,32 @@ +FROM debian:bullseye + +ENV JAVA_HOME=/opt/java/openjdk +COPY --from=eclipse-temurin:25 $JAVA_HOME $JAVA_HOME +ENV PATH="${JAVA_HOME}/bin:${PATH}" + +ENV CLOJURE_VERSION=1.12.2.1565 + +WORKDIR /tmp + +RUN \ +apt-get update && \ +apt-get install -y curl make git rlwrap && \ +rm -rf /var/lib/apt/lists/* && \ +curl -fsSLO https://download.clojure.org/install/linux-install-$CLOJURE_VERSION.sh && \ +sha256sum linux-install-$CLOJURE_VERSION.sh && \ +echo "68442caaeaaa0780957953dfac11278e3991d3baeb22579fc582ed1b2d5cd152 *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ +chmod +x linux-install-$CLOJURE_VERSION.sh && \ +./linux-install-$CLOJURE_VERSION.sh && \ +rm linux-install-$CLOJURE_VERSION.sh && \ +clojure -e "(clojure-version)" && \ +apt-get purge -y --auto-remove curl + +# Docker bug makes rlwrap crash w/o short sleep first +# Bug: https://github.com/moby/moby/issues/28009 +# As of 2021-09-10 this bug still exists, despite that issue being closed +COPY rlwrap.retry /usr/local/bin/rlwrap + +COPY entrypoint /usr/local/bin/entrypoint + +ENTRYPOINT ["entrypoint"] +CMD ["-M", "--repl"] diff --git a/target/debian-bullseye-25/tools-deps/entrypoint b/target/debian-bullseye-25/tools-deps/entrypoint new file mode 100755 index 00000000..51561d1d --- /dev/null +++ b/target/debian-bullseye-25/tools-deps/entrypoint @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +set -eou pipefail + +entrypoint=clj + +cmd=${1:-} + +# check if the first arg starts with a hyphen +if [ "$#" -eq 0 ] || [ "${1#-}" != "$1" ]; then + exec "${entrypoint}" "$@" +fi + +if [[ -n "${cmd}" ]]; then + # see if help for the subcommand is successful + if "${entrypoint}" "${cmd}" --help >/dev/null 2>&1; then + exec "${entrypoint}" "$@" + fi +fi + +exec "$@" diff --git a/target/debian-bullseye-25/tools-deps/rlwrap.retry b/target/debian-bullseye-25/tools-deps/rlwrap.retry new file mode 100755 index 00000000..83cefbfb --- /dev/null +++ b/target/debian-bullseye-25/tools-deps/rlwrap.retry @@ -0,0 +1,30 @@ +#!/bin/sh + +# This script works around a Docker bug that prevents rlwrap from starting +# right when a container is first started. It is intended to replace +# /usr/bin/rlwrap and also be named rlwrap but earlier in the PATH +# (e.g. /usr/local/bin). + +max_tries=100 # 100 tries is ~1 second +try=0 + +while true; do + # see if rlwrap can start at all + output=$(/usr/bin/rlwrap true 2>&1 >/dev/null) + exit_code=$? + if [ $exit_code -gt 0 ]; then + # it didn't start + try=$((try+1)) + if [ $try -gt $max_tries ]; then + # we're at max attempts so output the error and exit w/ the same code + echo "$output" >&2 + exit $exit_code + else + # wait a bit and try again + sleep 0.01 + fi + else + # rlwrap can start so let's run it for real + exec /usr/bin/rlwrap "$@" + fi +done diff --git a/target/debian-bullseye-slim-25/lein/Dockerfile b/target/debian-bullseye-slim-25/lein/Dockerfile new file mode 100644 index 00000000..038dc81b --- /dev/null +++ b/target/debian-bullseye-slim-25/lein/Dockerfile @@ -0,0 +1,48 @@ +FROM debian:bullseye-slim + +ENV JAVA_HOME=/opt/java/openjdk +COPY --from=eclipse-temurin:25 $JAVA_HOME $JAVA_HOME +ENV PATH="${JAVA_HOME}/bin:${PATH}" + +ENV LEIN_VERSION=2.12.0 +ENV LEIN_INSTALL=/usr/local/bin/ + +WORKDIR /tmp + +# Download the whole repo as an archive +RUN set -eux; \ +apt-get update && \ +apt-get install -y gnupg wget && \ +rm -rf /var/lib/apt/lists/* && \ +mkdir -p $LEIN_INSTALL && \ +wget -q https://codeberg.org/leiningen/leiningen/raw/tag/$LEIN_VERSION/bin/lein-pkg && \ +echo "Comparing lein-pkg checksum ..." && \ +sha256sum lein-pkg && \ +echo "12a9c5e3a2471619ca3d64a7462f920fdf713ae8959eb4fcd6257c23332b5aa4 *lein-pkg" | sha256sum -c - && \ +mv lein-pkg $LEIN_INSTALL/lein && \ +chmod 0755 $LEIN_INSTALL/lein && \ +export GNUPGHOME="$(mktemp -d)" && \ +export FILENAME_EXT=jar && \ +gpg --batch --keyserver hkps://keyserver.ubuntu.com --recv-keys 9D13D9426A0814B3373CF5E3D8A8243577A7859F && \ +wget -q https://codeberg.org/leiningen/leiningen/releases/download/$LEIN_VERSION/leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT && \ +wget -q https://codeberg.org/leiningen/leiningen/releases/download/$LEIN_VERSION/leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc && \ +echo "Verifying file PGP signature..." && \ +gpg --batch --verify leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT && \ +gpgconf --kill all && \ +rm -rf "$GNUPGHOME" leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc && \ +mkdir -p /usr/share/java && \ +mkdir -p /root/.lein && \ +mv leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT /usr/share/java/leiningen-$LEIN_VERSION-standalone.jar && \ +apt-get purge -y --auto-remove gnupg wget + +ENV PATH=$PATH:$LEIN_INSTALL +ENV LEIN_ROOT 1 + +# Install clojure 1.12.1 so users don't have to download it every time +RUN echo '(defproject dummy "" :dependencies [[org.clojure/clojure "1.12.1"]])' > project.clj \ + && lein deps && rm project.clj + +COPY entrypoint /usr/local/bin/entrypoint + +ENTRYPOINT ["entrypoint"] +CMD ["repl"] diff --git a/target/debian-bullseye-slim-25/lein/entrypoint b/target/debian-bullseye-slim-25/lein/entrypoint new file mode 100755 index 00000000..ccf8cce5 --- /dev/null +++ b/target/debian-bullseye-slim-25/lein/entrypoint @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +set -eou pipefail + +entrypoint=lein + +cmd=${1:-} + +# check if the first arg starts with a hyphen +if [ "$#" -eq 0 ] || [ "${1#-}" != "$1" ]; then + exec "${entrypoint}" "$@" +fi + +if [[ -n "${cmd}" ]]; then + # see if help for the subcommand is successful + if "${entrypoint}" "${cmd}" --help >/dev/null 2>&1; then + exec "${entrypoint}" "$@" + fi +fi + +exec "$@" diff --git a/target/debian-bullseye-slim-25/tools-deps/Dockerfile b/target/debian-bullseye-slim-25/tools-deps/Dockerfile new file mode 100644 index 00000000..8b262693 --- /dev/null +++ b/target/debian-bullseye-slim-25/tools-deps/Dockerfile @@ -0,0 +1,32 @@ +FROM debian:bullseye-slim + +ENV JAVA_HOME=/opt/java/openjdk +COPY --from=eclipse-temurin:25 $JAVA_HOME $JAVA_HOME +ENV PATH="${JAVA_HOME}/bin:${PATH}" + +ENV CLOJURE_VERSION=1.12.2.1565 + +WORKDIR /tmp + +RUN \ +apt-get update && \ +apt-get install -y curl make git rlwrap && \ +rm -rf /var/lib/apt/lists/* && \ +curl -fsSLO https://download.clojure.org/install/linux-install-$CLOJURE_VERSION.sh && \ +sha256sum linux-install-$CLOJURE_VERSION.sh && \ +echo "68442caaeaaa0780957953dfac11278e3991d3baeb22579fc582ed1b2d5cd152 *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ +chmod +x linux-install-$CLOJURE_VERSION.sh && \ +./linux-install-$CLOJURE_VERSION.sh && \ +rm linux-install-$CLOJURE_VERSION.sh && \ +clojure -e "(clojure-version)" && \ +apt-get purge -y --auto-remove curl + +# Docker bug makes rlwrap crash w/o short sleep first +# Bug: https://github.com/moby/moby/issues/28009 +# As of 2021-09-10 this bug still exists, despite that issue being closed +COPY rlwrap.retry /usr/local/bin/rlwrap + +COPY entrypoint /usr/local/bin/entrypoint + +ENTRYPOINT ["entrypoint"] +CMD ["-M", "--repl"] diff --git a/target/debian-bullseye-slim-25/tools-deps/entrypoint b/target/debian-bullseye-slim-25/tools-deps/entrypoint new file mode 100755 index 00000000..51561d1d --- /dev/null +++ b/target/debian-bullseye-slim-25/tools-deps/entrypoint @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +set -eou pipefail + +entrypoint=clj + +cmd=${1:-} + +# check if the first arg starts with a hyphen +if [ "$#" -eq 0 ] || [ "${1#-}" != "$1" ]; then + exec "${entrypoint}" "$@" +fi + +if [[ -n "${cmd}" ]]; then + # see if help for the subcommand is successful + if "${entrypoint}" "${cmd}" --help >/dev/null 2>&1; then + exec "${entrypoint}" "$@" + fi +fi + +exec "$@" diff --git a/target/debian-bullseye-slim-25/tools-deps/rlwrap.retry b/target/debian-bullseye-slim-25/tools-deps/rlwrap.retry new file mode 100755 index 00000000..83cefbfb --- /dev/null +++ b/target/debian-bullseye-slim-25/tools-deps/rlwrap.retry @@ -0,0 +1,30 @@ +#!/bin/sh + +# This script works around a Docker bug that prevents rlwrap from starting +# right when a container is first started. It is intended to replace +# /usr/bin/rlwrap and also be named rlwrap but earlier in the PATH +# (e.g. /usr/local/bin). + +max_tries=100 # 100 tries is ~1 second +try=0 + +while true; do + # see if rlwrap can start at all + output=$(/usr/bin/rlwrap true 2>&1 >/dev/null) + exit_code=$? + if [ $exit_code -gt 0 ]; then + # it didn't start + try=$((try+1)) + if [ $try -gt $max_tries ]; then + # we're at max attempts so output the error and exit w/ the same code + echo "$output" >&2 + exit $exit_code + else + # wait a bit and try again + sleep 0.01 + fi + else + # rlwrap can start so let's run it for real + exec /usr/bin/rlwrap "$@" + fi +done diff --git a/target/debian-trixie-25/lein/Dockerfile b/target/debian-trixie-25/lein/Dockerfile new file mode 100644 index 00000000..23769473 --- /dev/null +++ b/target/debian-trixie-25/lein/Dockerfile @@ -0,0 +1,48 @@ +FROM debian:trixie + +ENV JAVA_HOME=/opt/java/openjdk +COPY --from=eclipse-temurin:25 $JAVA_HOME $JAVA_HOME +ENV PATH="${JAVA_HOME}/bin:${PATH}" + +ENV LEIN_VERSION=2.12.0 +ENV LEIN_INSTALL=/usr/local/bin/ + +WORKDIR /tmp + +# Download the whole repo as an archive +RUN set -eux; \ +apt-get update && \ +apt-get install -y make gnupg wget && \ +rm -rf /var/lib/apt/lists/* && \ +mkdir -p $LEIN_INSTALL && \ +wget -q https://codeberg.org/leiningen/leiningen/raw/tag/$LEIN_VERSION/bin/lein-pkg && \ +echo "Comparing lein-pkg checksum ..." && \ +sha256sum lein-pkg && \ +echo "12a9c5e3a2471619ca3d64a7462f920fdf713ae8959eb4fcd6257c23332b5aa4 *lein-pkg" | sha256sum -c - && \ +mv lein-pkg $LEIN_INSTALL/lein && \ +chmod 0755 $LEIN_INSTALL/lein && \ +export GNUPGHOME="$(mktemp -d)" && \ +export FILENAME_EXT=jar && \ +gpg --batch --keyserver hkps://keyserver.ubuntu.com --recv-keys 9D13D9426A0814B3373CF5E3D8A8243577A7859F && \ +wget -q https://codeberg.org/leiningen/leiningen/releases/download/$LEIN_VERSION/leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT && \ +wget -q https://codeberg.org/leiningen/leiningen/releases/download/$LEIN_VERSION/leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc && \ +echo "Verifying file PGP signature..." && \ +gpg --batch --verify leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT && \ +gpgconf --kill all && \ +rm -rf "$GNUPGHOME" leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc && \ +mkdir -p /usr/share/java && \ +mkdir -p /root/.lein && \ +mv leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT /usr/share/java/leiningen-$LEIN_VERSION-standalone.jar && \ +apt-get purge -y --auto-remove gnupg wget + +ENV PATH=$PATH:$LEIN_INSTALL +ENV LEIN_ROOT 1 + +# Install clojure 1.12.1 so users don't have to download it every time +RUN echo '(defproject dummy "" :dependencies [[org.clojure/clojure "1.12.1"]])' > project.clj \ + && lein deps && rm project.clj + +COPY entrypoint /usr/local/bin/entrypoint + +ENTRYPOINT ["entrypoint"] +CMD ["repl"] diff --git a/target/debian-trixie-25/lein/entrypoint b/target/debian-trixie-25/lein/entrypoint new file mode 100755 index 00000000..ccf8cce5 --- /dev/null +++ b/target/debian-trixie-25/lein/entrypoint @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +set -eou pipefail + +entrypoint=lein + +cmd=${1:-} + +# check if the first arg starts with a hyphen +if [ "$#" -eq 0 ] || [ "${1#-}" != "$1" ]; then + exec "${entrypoint}" "$@" +fi + +if [[ -n "${cmd}" ]]; then + # see if help for the subcommand is successful + if "${entrypoint}" "${cmd}" --help >/dev/null 2>&1; then + exec "${entrypoint}" "$@" + fi +fi + +exec "$@" diff --git a/target/debian-trixie-25/tools-deps/Dockerfile b/target/debian-trixie-25/tools-deps/Dockerfile new file mode 100644 index 00000000..670a1826 --- /dev/null +++ b/target/debian-trixie-25/tools-deps/Dockerfile @@ -0,0 +1,32 @@ +FROM debian:trixie + +ENV JAVA_HOME=/opt/java/openjdk +COPY --from=eclipse-temurin:25 $JAVA_HOME $JAVA_HOME +ENV PATH="${JAVA_HOME}/bin:${PATH}" + +ENV CLOJURE_VERSION=1.12.2.1565 + +WORKDIR /tmp + +RUN \ +apt-get update && \ +apt-get install -y curl make git rlwrap && \ +rm -rf /var/lib/apt/lists/* && \ +curl -fsSLO https://download.clojure.org/install/linux-install-$CLOJURE_VERSION.sh && \ +sha256sum linux-install-$CLOJURE_VERSION.sh && \ +echo "68442caaeaaa0780957953dfac11278e3991d3baeb22579fc582ed1b2d5cd152 *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ +chmod +x linux-install-$CLOJURE_VERSION.sh && \ +./linux-install-$CLOJURE_VERSION.sh && \ +rm linux-install-$CLOJURE_VERSION.sh && \ +clojure -e "(clojure-version)" && \ +apt-get purge -y --auto-remove curl + +# Docker bug makes rlwrap crash w/o short sleep first +# Bug: https://github.com/moby/moby/issues/28009 +# As of 2021-09-10 this bug still exists, despite that issue being closed +COPY rlwrap.retry /usr/local/bin/rlwrap + +COPY entrypoint /usr/local/bin/entrypoint + +ENTRYPOINT ["entrypoint"] +CMD ["-M", "--repl"] diff --git a/target/debian-trixie-25/tools-deps/entrypoint b/target/debian-trixie-25/tools-deps/entrypoint new file mode 100755 index 00000000..51561d1d --- /dev/null +++ b/target/debian-trixie-25/tools-deps/entrypoint @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +set -eou pipefail + +entrypoint=clj + +cmd=${1:-} + +# check if the first arg starts with a hyphen +if [ "$#" -eq 0 ] || [ "${1#-}" != "$1" ]; then + exec "${entrypoint}" "$@" +fi + +if [[ -n "${cmd}" ]]; then + # see if help for the subcommand is successful + if "${entrypoint}" "${cmd}" --help >/dev/null 2>&1; then + exec "${entrypoint}" "$@" + fi +fi + +exec "$@" diff --git a/target/debian-trixie-25/tools-deps/rlwrap.retry b/target/debian-trixie-25/tools-deps/rlwrap.retry new file mode 100755 index 00000000..83cefbfb --- /dev/null +++ b/target/debian-trixie-25/tools-deps/rlwrap.retry @@ -0,0 +1,30 @@ +#!/bin/sh + +# This script works around a Docker bug that prevents rlwrap from starting +# right when a container is first started. It is intended to replace +# /usr/bin/rlwrap and also be named rlwrap but earlier in the PATH +# (e.g. /usr/local/bin). + +max_tries=100 # 100 tries is ~1 second +try=0 + +while true; do + # see if rlwrap can start at all + output=$(/usr/bin/rlwrap true 2>&1 >/dev/null) + exit_code=$? + if [ $exit_code -gt 0 ]; then + # it didn't start + try=$((try+1)) + if [ $try -gt $max_tries ]; then + # we're at max attempts so output the error and exit w/ the same code + echo "$output" >&2 + exit $exit_code + else + # wait a bit and try again + sleep 0.01 + fi + else + # rlwrap can start so let's run it for real + exec /usr/bin/rlwrap "$@" + fi +done diff --git a/target/debian-trixie-slim-25/lein/Dockerfile b/target/debian-trixie-slim-25/lein/Dockerfile new file mode 100644 index 00000000..df5fb22a --- /dev/null +++ b/target/debian-trixie-slim-25/lein/Dockerfile @@ -0,0 +1,48 @@ +FROM debian:trixie-slim + +ENV JAVA_HOME=/opt/java/openjdk +COPY --from=eclipse-temurin:25 $JAVA_HOME $JAVA_HOME +ENV PATH="${JAVA_HOME}/bin:${PATH}" + +ENV LEIN_VERSION=2.12.0 +ENV LEIN_INSTALL=/usr/local/bin/ + +WORKDIR /tmp + +# Download the whole repo as an archive +RUN set -eux; \ +apt-get update && \ +apt-get install -y gnupg wget && \ +rm -rf /var/lib/apt/lists/* && \ +mkdir -p $LEIN_INSTALL && \ +wget -q https://codeberg.org/leiningen/leiningen/raw/tag/$LEIN_VERSION/bin/lein-pkg && \ +echo "Comparing lein-pkg checksum ..." && \ +sha256sum lein-pkg && \ +echo "12a9c5e3a2471619ca3d64a7462f920fdf713ae8959eb4fcd6257c23332b5aa4 *lein-pkg" | sha256sum -c - && \ +mv lein-pkg $LEIN_INSTALL/lein && \ +chmod 0755 $LEIN_INSTALL/lein && \ +export GNUPGHOME="$(mktemp -d)" && \ +export FILENAME_EXT=jar && \ +gpg --batch --keyserver hkps://keyserver.ubuntu.com --recv-keys 9D13D9426A0814B3373CF5E3D8A8243577A7859F && \ +wget -q https://codeberg.org/leiningen/leiningen/releases/download/$LEIN_VERSION/leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT && \ +wget -q https://codeberg.org/leiningen/leiningen/releases/download/$LEIN_VERSION/leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc && \ +echo "Verifying file PGP signature..." && \ +gpg --batch --verify leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT && \ +gpgconf --kill all && \ +rm -rf "$GNUPGHOME" leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc && \ +mkdir -p /usr/share/java && \ +mkdir -p /root/.lein && \ +mv leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT /usr/share/java/leiningen-$LEIN_VERSION-standalone.jar && \ +apt-get purge -y --auto-remove gnupg wget + +ENV PATH=$PATH:$LEIN_INSTALL +ENV LEIN_ROOT 1 + +# Install clojure 1.12.1 so users don't have to download it every time +RUN echo '(defproject dummy "" :dependencies [[org.clojure/clojure "1.12.1"]])' > project.clj \ + && lein deps && rm project.clj + +COPY entrypoint /usr/local/bin/entrypoint + +ENTRYPOINT ["entrypoint"] +CMD ["repl"] diff --git a/target/debian-trixie-slim-25/lein/entrypoint b/target/debian-trixie-slim-25/lein/entrypoint new file mode 100755 index 00000000..ccf8cce5 --- /dev/null +++ b/target/debian-trixie-slim-25/lein/entrypoint @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +set -eou pipefail + +entrypoint=lein + +cmd=${1:-} + +# check if the first arg starts with a hyphen +if [ "$#" -eq 0 ] || [ "${1#-}" != "$1" ]; then + exec "${entrypoint}" "$@" +fi + +if [[ -n "${cmd}" ]]; then + # see if help for the subcommand is successful + if "${entrypoint}" "${cmd}" --help >/dev/null 2>&1; then + exec "${entrypoint}" "$@" + fi +fi + +exec "$@" diff --git a/target/debian-trixie-slim-25/tools-deps/Dockerfile b/target/debian-trixie-slim-25/tools-deps/Dockerfile new file mode 100644 index 00000000..d051b3ce --- /dev/null +++ b/target/debian-trixie-slim-25/tools-deps/Dockerfile @@ -0,0 +1,32 @@ +FROM debian:trixie-slim + +ENV JAVA_HOME=/opt/java/openjdk +COPY --from=eclipse-temurin:25 $JAVA_HOME $JAVA_HOME +ENV PATH="${JAVA_HOME}/bin:${PATH}" + +ENV CLOJURE_VERSION=1.12.2.1565 + +WORKDIR /tmp + +RUN \ +apt-get update && \ +apt-get install -y curl make git rlwrap && \ +rm -rf /var/lib/apt/lists/* && \ +curl -fsSLO https://download.clojure.org/install/linux-install-$CLOJURE_VERSION.sh && \ +sha256sum linux-install-$CLOJURE_VERSION.sh && \ +echo "68442caaeaaa0780957953dfac11278e3991d3baeb22579fc582ed1b2d5cd152 *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ +chmod +x linux-install-$CLOJURE_VERSION.sh && \ +./linux-install-$CLOJURE_VERSION.sh && \ +rm linux-install-$CLOJURE_VERSION.sh && \ +clojure -e "(clojure-version)" && \ +apt-get purge -y --auto-remove curl + +# Docker bug makes rlwrap crash w/o short sleep first +# Bug: https://github.com/moby/moby/issues/28009 +# As of 2021-09-10 this bug still exists, despite that issue being closed +COPY rlwrap.retry /usr/local/bin/rlwrap + +COPY entrypoint /usr/local/bin/entrypoint + +ENTRYPOINT ["entrypoint"] +CMD ["-M", "--repl"] diff --git a/target/debian-trixie-slim-25/tools-deps/entrypoint b/target/debian-trixie-slim-25/tools-deps/entrypoint new file mode 100755 index 00000000..51561d1d --- /dev/null +++ b/target/debian-trixie-slim-25/tools-deps/entrypoint @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +set -eou pipefail + +entrypoint=clj + +cmd=${1:-} + +# check if the first arg starts with a hyphen +if [ "$#" -eq 0 ] || [ "${1#-}" != "$1" ]; then + exec "${entrypoint}" "$@" +fi + +if [[ -n "${cmd}" ]]; then + # see if help for the subcommand is successful + if "${entrypoint}" "${cmd}" --help >/dev/null 2>&1; then + exec "${entrypoint}" "$@" + fi +fi + +exec "$@" diff --git a/target/debian-trixie-slim-25/tools-deps/rlwrap.retry b/target/debian-trixie-slim-25/tools-deps/rlwrap.retry new file mode 100755 index 00000000..83cefbfb --- /dev/null +++ b/target/debian-trixie-slim-25/tools-deps/rlwrap.retry @@ -0,0 +1,30 @@ +#!/bin/sh + +# This script works around a Docker bug that prevents rlwrap from starting +# right when a container is first started. It is intended to replace +# /usr/bin/rlwrap and also be named rlwrap but earlier in the PATH +# (e.g. /usr/local/bin). + +max_tries=100 # 100 tries is ~1 second +try=0 + +while true; do + # see if rlwrap can start at all + output=$(/usr/bin/rlwrap true 2>&1 >/dev/null) + exit_code=$? + if [ $exit_code -gt 0 ]; then + # it didn't start + try=$((try+1)) + if [ $try -gt $max_tries ]; then + # we're at max attempts so output the error and exit w/ the same code + echo "$output" >&2 + exit $exit_code + else + # wait a bit and try again + sleep 0.01 + fi + else + # rlwrap can start so let's run it for real + exec /usr/bin/rlwrap "$@" + fi +done diff --git a/target/eclipse-temurin-25-jdk-alpine/lein/Dockerfile b/target/eclipse-temurin-25-jdk-alpine/lein/Dockerfile new file mode 100644 index 00000000..6d6ca558 --- /dev/null +++ b/target/eclipse-temurin-25-jdk-alpine/lein/Dockerfile @@ -0,0 +1,42 @@ +FROM eclipse-temurin:25-jdk-alpine + +ENV LEIN_VERSION=2.12.0 +ENV LEIN_INSTALL=/usr/local/bin/ + +WORKDIR /tmp + +# Download the whole repo as an archive +RUN set -eux; \ +apk add --no-cache ca-certificates bash tar openssl gnupg && \ +mkdir -p $LEIN_INSTALL && \ +wget -q https://codeberg.org/leiningen/leiningen/raw/tag/$LEIN_VERSION/bin/lein-pkg && \ +echo "Comparing lein-pkg checksum ..." && \ +sha256sum lein-pkg && \ +echo "12a9c5e3a2471619ca3d64a7462f920fdf713ae8959eb4fcd6257c23332b5aa4 *lein-pkg" | sha256sum -c - && \ +mv lein-pkg $LEIN_INSTALL/lein && \ +chmod 0755 $LEIN_INSTALL/lein && \ +export GNUPGHOME="$(mktemp -d)" && \ +export FILENAME_EXT=jar && \ +gpg --batch --keyserver hkps://keyserver.ubuntu.com --recv-keys 9D13D9426A0814B3373CF5E3D8A8243577A7859F && \ +wget -q https://codeberg.org/leiningen/leiningen/releases/download/$LEIN_VERSION/leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT && \ +wget -q https://codeberg.org/leiningen/leiningen/releases/download/$LEIN_VERSION/leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc && \ +echo "Verifying file PGP signature..." && \ +gpg --batch --verify leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT && \ +gpgconf --kill all && \ +rm -rf "$GNUPGHOME" leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc && \ +mkdir -p /usr/share/java && \ +mkdir -p /root/.lein && \ +mv leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT /usr/share/java/leiningen-$LEIN_VERSION-standalone.jar && \ +apk del ca-certificates tar openssl gnupg + +ENV PATH=$PATH:$LEIN_INSTALL +ENV LEIN_ROOT 1 + +# Install clojure 1.12.1 so users don't have to download it every time +RUN echo '(defproject dummy "" :dependencies [[org.clojure/clojure "1.12.1"]])' > project.clj \ + && lein deps && rm project.clj + +COPY entrypoint /usr/local/bin/entrypoint + +ENTRYPOINT ["entrypoint"] +CMD ["repl"] diff --git a/target/eclipse-temurin-25-jdk-alpine/lein/entrypoint b/target/eclipse-temurin-25-jdk-alpine/lein/entrypoint new file mode 100755 index 00000000..ccf8cce5 --- /dev/null +++ b/target/eclipse-temurin-25-jdk-alpine/lein/entrypoint @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +set -eou pipefail + +entrypoint=lein + +cmd=${1:-} + +# check if the first arg starts with a hyphen +if [ "$#" -eq 0 ] || [ "${1#-}" != "$1" ]; then + exec "${entrypoint}" "$@" +fi + +if [[ -n "${cmd}" ]]; then + # see if help for the subcommand is successful + if "${entrypoint}" "${cmd}" --help >/dev/null 2>&1; then + exec "${entrypoint}" "$@" + fi +fi + +exec "$@" diff --git a/target/eclipse-temurin-25-jdk-alpine/tools-deps/Dockerfile b/target/eclipse-temurin-25-jdk-alpine/tools-deps/Dockerfile new file mode 100644 index 00000000..b496ca8c --- /dev/null +++ b/target/eclipse-temurin-25-jdk-alpine/tools-deps/Dockerfile @@ -0,0 +1,26 @@ +FROM eclipse-temurin:25-jdk-alpine + +ENV CLOJURE_VERSION=1.12.2.1565 + +WORKDIR /tmp + +RUN \ +apk add --no-cache curl bash make git rlwrap && \ +curl -fsSLO https://download.clojure.org/install/linux-install-$CLOJURE_VERSION.sh && \ +sha256sum linux-install-$CLOJURE_VERSION.sh && \ +echo "68442caaeaaa0780957953dfac11278e3991d3baeb22579fc582ed1b2d5cd152 *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ +chmod +x linux-install-$CLOJURE_VERSION.sh && \ +./linux-install-$CLOJURE_VERSION.sh && \ +rm linux-install-$CLOJURE_VERSION.sh && \ +clojure -e "(clojure-version)" && \ +apk del curl + +# Docker bug makes rlwrap crash w/o short sleep first +# Bug: https://github.com/moby/moby/issues/28009 +# As of 2021-09-10 this bug still exists, despite that issue being closed +COPY rlwrap.retry /usr/local/bin/rlwrap + +COPY entrypoint /usr/local/bin/entrypoint + +ENTRYPOINT ["entrypoint"] +CMD ["-M", "--repl"] diff --git a/target/eclipse-temurin-25-jdk-alpine/tools-deps/entrypoint b/target/eclipse-temurin-25-jdk-alpine/tools-deps/entrypoint new file mode 100755 index 00000000..51561d1d --- /dev/null +++ b/target/eclipse-temurin-25-jdk-alpine/tools-deps/entrypoint @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +set -eou pipefail + +entrypoint=clj + +cmd=${1:-} + +# check if the first arg starts with a hyphen +if [ "$#" -eq 0 ] || [ "${1#-}" != "$1" ]; then + exec "${entrypoint}" "$@" +fi + +if [[ -n "${cmd}" ]]; then + # see if help for the subcommand is successful + if "${entrypoint}" "${cmd}" --help >/dev/null 2>&1; then + exec "${entrypoint}" "$@" + fi +fi + +exec "$@" diff --git a/target/eclipse-temurin-25-jdk-alpine/tools-deps/rlwrap.retry b/target/eclipse-temurin-25-jdk-alpine/tools-deps/rlwrap.retry new file mode 100755 index 00000000..83cefbfb --- /dev/null +++ b/target/eclipse-temurin-25-jdk-alpine/tools-deps/rlwrap.retry @@ -0,0 +1,30 @@ +#!/bin/sh + +# This script works around a Docker bug that prevents rlwrap from starting +# right when a container is first started. It is intended to replace +# /usr/bin/rlwrap and also be named rlwrap but earlier in the PATH +# (e.g. /usr/local/bin). + +max_tries=100 # 100 tries is ~1 second +try=0 + +while true; do + # see if rlwrap can start at all + output=$(/usr/bin/rlwrap true 2>&1 >/dev/null) + exit_code=$? + if [ $exit_code -gt 0 ]; then + # it didn't start + try=$((try+1)) + if [ $try -gt $max_tries ]; then + # we're at max attempts so output the error and exit w/ the same code + echo "$output" >&2 + exit $exit_code + else + # wait a bit and try again + sleep 0.01 + fi + else + # rlwrap can start so let's run it for real + exec /usr/bin/rlwrap "$@" + fi +done diff --git a/target/eclipse-temurin-25-jdk-noble/lein/Dockerfile b/target/eclipse-temurin-25-jdk-noble/lein/Dockerfile new file mode 100644 index 00000000..78283d28 --- /dev/null +++ b/target/eclipse-temurin-25-jdk-noble/lein/Dockerfile @@ -0,0 +1,44 @@ +FROM eclipse-temurin:25-jdk-noble + +ENV LEIN_VERSION=2.12.0 +ENV LEIN_INSTALL=/usr/local/bin/ + +WORKDIR /tmp + +# Download the whole repo as an archive +RUN set -eux; \ +apt-get update && \ +apt-get install -y make gnupg wget && \ +rm -rf /var/lib/apt/lists/* && \ +mkdir -p $LEIN_INSTALL && \ +wget -q https://codeberg.org/leiningen/leiningen/raw/tag/$LEIN_VERSION/bin/lein-pkg && \ +echo "Comparing lein-pkg checksum ..." && \ +sha256sum lein-pkg && \ +echo "12a9c5e3a2471619ca3d64a7462f920fdf713ae8959eb4fcd6257c23332b5aa4 *lein-pkg" | sha256sum -c - && \ +mv lein-pkg $LEIN_INSTALL/lein && \ +chmod 0755 $LEIN_INSTALL/lein && \ +export GNUPGHOME="$(mktemp -d)" && \ +export FILENAME_EXT=jar && \ +gpg --batch --keyserver hkps://keyserver.ubuntu.com --recv-keys 9D13D9426A0814B3373CF5E3D8A8243577A7859F && \ +wget -q https://codeberg.org/leiningen/leiningen/releases/download/$LEIN_VERSION/leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT && \ +wget -q https://codeberg.org/leiningen/leiningen/releases/download/$LEIN_VERSION/leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc && \ +echo "Verifying file PGP signature..." && \ +gpg --batch --verify leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT && \ +gpgconf --kill all && \ +rm -rf "$GNUPGHOME" leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT.asc && \ +mkdir -p /usr/share/java && \ +mkdir -p /root/.lein && \ +mv leiningen-$LEIN_VERSION-standalone.$FILENAME_EXT /usr/share/java/leiningen-$LEIN_VERSION-standalone.jar && \ +apt-get purge -y --auto-remove gnupg wget + +ENV PATH=$PATH:$LEIN_INSTALL +ENV LEIN_ROOT 1 + +# Install clojure 1.12.1 so users don't have to download it every time +RUN echo '(defproject dummy "" :dependencies [[org.clojure/clojure "1.12.1"]])' > project.clj \ + && lein deps && rm project.clj + +COPY entrypoint /usr/local/bin/entrypoint + +ENTRYPOINT ["entrypoint"] +CMD ["repl"] diff --git a/target/eclipse-temurin-25-jdk-noble/lein/entrypoint b/target/eclipse-temurin-25-jdk-noble/lein/entrypoint new file mode 100755 index 00000000..ccf8cce5 --- /dev/null +++ b/target/eclipse-temurin-25-jdk-noble/lein/entrypoint @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +set -eou pipefail + +entrypoint=lein + +cmd=${1:-} + +# check if the first arg starts with a hyphen +if [ "$#" -eq 0 ] || [ "${1#-}" != "$1" ]; then + exec "${entrypoint}" "$@" +fi + +if [[ -n "${cmd}" ]]; then + # see if help for the subcommand is successful + if "${entrypoint}" "${cmd}" --help >/dev/null 2>&1; then + exec "${entrypoint}" "$@" + fi +fi + +exec "$@" diff --git a/target/eclipse-temurin-25-jdk-noble/tools-deps/Dockerfile b/target/eclipse-temurin-25-jdk-noble/tools-deps/Dockerfile new file mode 100644 index 00000000..2cf77a9b --- /dev/null +++ b/target/eclipse-temurin-25-jdk-noble/tools-deps/Dockerfile @@ -0,0 +1,27 @@ +FROM eclipse-temurin:25-jdk-noble + +ENV CLOJURE_VERSION=1.12.2.1565 + +WORKDIR /tmp + +RUN \ +apt-get update && \ +apt-get install -y curl make git rlwrap && \ +rm -rf /var/lib/apt/lists/* && \ +curl -fsSLO https://download.clojure.org/install/linux-install-$CLOJURE_VERSION.sh && \ +sha256sum linux-install-$CLOJURE_VERSION.sh && \ +echo "68442caaeaaa0780957953dfac11278e3991d3baeb22579fc582ed1b2d5cd152 *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ +chmod +x linux-install-$CLOJURE_VERSION.sh && \ +./linux-install-$CLOJURE_VERSION.sh && \ +rm linux-install-$CLOJURE_VERSION.sh && \ +clojure -e "(clojure-version)" + +# Docker bug makes rlwrap crash w/o short sleep first +# Bug: https://github.com/moby/moby/issues/28009 +# As of 2021-09-10 this bug still exists, despite that issue being closed +COPY rlwrap.retry /usr/local/bin/rlwrap + +COPY entrypoint /usr/local/bin/entrypoint + +ENTRYPOINT ["entrypoint"] +CMD ["-M", "--repl"] diff --git a/target/eclipse-temurin-25-jdk-noble/tools-deps/entrypoint b/target/eclipse-temurin-25-jdk-noble/tools-deps/entrypoint new file mode 100755 index 00000000..51561d1d --- /dev/null +++ b/target/eclipse-temurin-25-jdk-noble/tools-deps/entrypoint @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +set -eou pipefail + +entrypoint=clj + +cmd=${1:-} + +# check if the first arg starts with a hyphen +if [ "$#" -eq 0 ] || [ "${1#-}" != "$1" ]; then + exec "${entrypoint}" "$@" +fi + +if [[ -n "${cmd}" ]]; then + # see if help for the subcommand is successful + if "${entrypoint}" "${cmd}" --help >/dev/null 2>&1; then + exec "${entrypoint}" "$@" + fi +fi + +exec "$@" diff --git a/target/eclipse-temurin-25-jdk-noble/tools-deps/rlwrap.retry b/target/eclipse-temurin-25-jdk-noble/tools-deps/rlwrap.retry new file mode 100755 index 00000000..83cefbfb --- /dev/null +++ b/target/eclipse-temurin-25-jdk-noble/tools-deps/rlwrap.retry @@ -0,0 +1,30 @@ +#!/bin/sh + +# This script works around a Docker bug that prevents rlwrap from starting +# right when a container is first started. It is intended to replace +# /usr/bin/rlwrap and also be named rlwrap but earlier in the PATH +# (e.g. /usr/local/bin). + +max_tries=100 # 100 tries is ~1 second +try=0 + +while true; do + # see if rlwrap can start at all + output=$(/usr/bin/rlwrap true 2>&1 >/dev/null) + exit_code=$? + if [ $exit_code -gt 0 ]; then + # it didn't start + try=$((try+1)) + if [ $try -gt $max_tries ]; then + # we're at max attempts so output the error and exit w/ the same code + echo "$output" >&2 + exit $exit_code + else + # wait a bit and try again + sleep 0.01 + fi + else + # rlwrap can start so let's run it for real + exec /usr/bin/rlwrap "$@" + fi +done From da7e8a921f4fd7694d0ba7871d2e16035aaaba6b Mon Sep 17 00:00:00 2001 From: Wes Morgan Date: Fri, 26 Sep 2025 08:39:54 -0600 Subject: [PATCH 4/4] Update Dockerfiles for changes that landed on master --- target/debian-bookworm-25/tools-deps/Dockerfile | 4 ++-- target/debian-bookworm-slim-25/tools-deps/Dockerfile | 4 ++-- target/debian-bullseye-25/tools-deps/Dockerfile | 4 ++-- target/debian-bullseye-slim-25/tools-deps/Dockerfile | 4 ++-- target/debian-trixie-25/tools-deps/Dockerfile | 4 ++-- target/debian-trixie-slim-25/tools-deps/Dockerfile | 4 ++-- target/eclipse-temurin-25-jdk-alpine/tools-deps/Dockerfile | 4 ++-- target/eclipse-temurin-25-jdk-noble/tools-deps/Dockerfile | 4 ++-- 8 files changed, 16 insertions(+), 16 deletions(-) diff --git a/target/debian-bookworm-25/tools-deps/Dockerfile b/target/debian-bookworm-25/tools-deps/Dockerfile index 5b7086ca..304a04ca 100644 --- a/target/debian-bookworm-25/tools-deps/Dockerfile +++ b/target/debian-bookworm-25/tools-deps/Dockerfile @@ -4,7 +4,7 @@ ENV JAVA_HOME=/opt/java/openjdk COPY --from=eclipse-temurin:25 $JAVA_HOME $JAVA_HOME ENV PATH="${JAVA_HOME}/bin:${PATH}" -ENV CLOJURE_VERSION=1.12.2.1565 +ENV CLOJURE_VERSION=1.12.3.1577 WORKDIR /tmp @@ -14,7 +14,7 @@ apt-get install -y curl make git rlwrap && \ rm -rf /var/lib/apt/lists/* && \ curl -fsSLO https://download.clojure.org/install/linux-install-$CLOJURE_VERSION.sh && \ sha256sum linux-install-$CLOJURE_VERSION.sh && \ -echo "68442caaeaaa0780957953dfac11278e3991d3baeb22579fc582ed1b2d5cd152 *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ +echo "a55106244ca93ef7b61309e9dca4b248257685870824a8abe2efa706ede8241f *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ chmod +x linux-install-$CLOJURE_VERSION.sh && \ ./linux-install-$CLOJURE_VERSION.sh && \ rm linux-install-$CLOJURE_VERSION.sh && \ diff --git a/target/debian-bookworm-slim-25/tools-deps/Dockerfile b/target/debian-bookworm-slim-25/tools-deps/Dockerfile index 0423202e..c7b4b925 100644 --- a/target/debian-bookworm-slim-25/tools-deps/Dockerfile +++ b/target/debian-bookworm-slim-25/tools-deps/Dockerfile @@ -4,7 +4,7 @@ ENV JAVA_HOME=/opt/java/openjdk COPY --from=eclipse-temurin:25 $JAVA_HOME $JAVA_HOME ENV PATH="${JAVA_HOME}/bin:${PATH}" -ENV CLOJURE_VERSION=1.12.2.1565 +ENV CLOJURE_VERSION=1.12.3.1577 WORKDIR /tmp @@ -14,7 +14,7 @@ apt-get install -y curl make git rlwrap && \ rm -rf /var/lib/apt/lists/* && \ curl -fsSLO https://download.clojure.org/install/linux-install-$CLOJURE_VERSION.sh && \ sha256sum linux-install-$CLOJURE_VERSION.sh && \ -echo "68442caaeaaa0780957953dfac11278e3991d3baeb22579fc582ed1b2d5cd152 *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ +echo "a55106244ca93ef7b61309e9dca4b248257685870824a8abe2efa706ede8241f *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ chmod +x linux-install-$CLOJURE_VERSION.sh && \ ./linux-install-$CLOJURE_VERSION.sh && \ rm linux-install-$CLOJURE_VERSION.sh && \ diff --git a/target/debian-bullseye-25/tools-deps/Dockerfile b/target/debian-bullseye-25/tools-deps/Dockerfile index a893758b..43757e11 100644 --- a/target/debian-bullseye-25/tools-deps/Dockerfile +++ b/target/debian-bullseye-25/tools-deps/Dockerfile @@ -4,7 +4,7 @@ ENV JAVA_HOME=/opt/java/openjdk COPY --from=eclipse-temurin:25 $JAVA_HOME $JAVA_HOME ENV PATH="${JAVA_HOME}/bin:${PATH}" -ENV CLOJURE_VERSION=1.12.2.1565 +ENV CLOJURE_VERSION=1.12.3.1577 WORKDIR /tmp @@ -14,7 +14,7 @@ apt-get install -y curl make git rlwrap && \ rm -rf /var/lib/apt/lists/* && \ curl -fsSLO https://download.clojure.org/install/linux-install-$CLOJURE_VERSION.sh && \ sha256sum linux-install-$CLOJURE_VERSION.sh && \ -echo "68442caaeaaa0780957953dfac11278e3991d3baeb22579fc582ed1b2d5cd152 *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ +echo "a55106244ca93ef7b61309e9dca4b248257685870824a8abe2efa706ede8241f *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ chmod +x linux-install-$CLOJURE_VERSION.sh && \ ./linux-install-$CLOJURE_VERSION.sh && \ rm linux-install-$CLOJURE_VERSION.sh && \ diff --git a/target/debian-bullseye-slim-25/tools-deps/Dockerfile b/target/debian-bullseye-slim-25/tools-deps/Dockerfile index 8b262693..33d6e8f3 100644 --- a/target/debian-bullseye-slim-25/tools-deps/Dockerfile +++ b/target/debian-bullseye-slim-25/tools-deps/Dockerfile @@ -4,7 +4,7 @@ ENV JAVA_HOME=/opt/java/openjdk COPY --from=eclipse-temurin:25 $JAVA_HOME $JAVA_HOME ENV PATH="${JAVA_HOME}/bin:${PATH}" -ENV CLOJURE_VERSION=1.12.2.1565 +ENV CLOJURE_VERSION=1.12.3.1577 WORKDIR /tmp @@ -14,7 +14,7 @@ apt-get install -y curl make git rlwrap && \ rm -rf /var/lib/apt/lists/* && \ curl -fsSLO https://download.clojure.org/install/linux-install-$CLOJURE_VERSION.sh && \ sha256sum linux-install-$CLOJURE_VERSION.sh && \ -echo "68442caaeaaa0780957953dfac11278e3991d3baeb22579fc582ed1b2d5cd152 *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ +echo "a55106244ca93ef7b61309e9dca4b248257685870824a8abe2efa706ede8241f *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ chmod +x linux-install-$CLOJURE_VERSION.sh && \ ./linux-install-$CLOJURE_VERSION.sh && \ rm linux-install-$CLOJURE_VERSION.sh && \ diff --git a/target/debian-trixie-25/tools-deps/Dockerfile b/target/debian-trixie-25/tools-deps/Dockerfile index 670a1826..b4dcbddf 100644 --- a/target/debian-trixie-25/tools-deps/Dockerfile +++ b/target/debian-trixie-25/tools-deps/Dockerfile @@ -4,7 +4,7 @@ ENV JAVA_HOME=/opt/java/openjdk COPY --from=eclipse-temurin:25 $JAVA_HOME $JAVA_HOME ENV PATH="${JAVA_HOME}/bin:${PATH}" -ENV CLOJURE_VERSION=1.12.2.1565 +ENV CLOJURE_VERSION=1.12.3.1577 WORKDIR /tmp @@ -14,7 +14,7 @@ apt-get install -y curl make git rlwrap && \ rm -rf /var/lib/apt/lists/* && \ curl -fsSLO https://download.clojure.org/install/linux-install-$CLOJURE_VERSION.sh && \ sha256sum linux-install-$CLOJURE_VERSION.sh && \ -echo "68442caaeaaa0780957953dfac11278e3991d3baeb22579fc582ed1b2d5cd152 *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ +echo "a55106244ca93ef7b61309e9dca4b248257685870824a8abe2efa706ede8241f *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ chmod +x linux-install-$CLOJURE_VERSION.sh && \ ./linux-install-$CLOJURE_VERSION.sh && \ rm linux-install-$CLOJURE_VERSION.sh && \ diff --git a/target/debian-trixie-slim-25/tools-deps/Dockerfile b/target/debian-trixie-slim-25/tools-deps/Dockerfile index d051b3ce..1854de8e 100644 --- a/target/debian-trixie-slim-25/tools-deps/Dockerfile +++ b/target/debian-trixie-slim-25/tools-deps/Dockerfile @@ -4,7 +4,7 @@ ENV JAVA_HOME=/opt/java/openjdk COPY --from=eclipse-temurin:25 $JAVA_HOME $JAVA_HOME ENV PATH="${JAVA_HOME}/bin:${PATH}" -ENV CLOJURE_VERSION=1.12.2.1565 +ENV CLOJURE_VERSION=1.12.3.1577 WORKDIR /tmp @@ -14,7 +14,7 @@ apt-get install -y curl make git rlwrap && \ rm -rf /var/lib/apt/lists/* && \ curl -fsSLO https://download.clojure.org/install/linux-install-$CLOJURE_VERSION.sh && \ sha256sum linux-install-$CLOJURE_VERSION.sh && \ -echo "68442caaeaaa0780957953dfac11278e3991d3baeb22579fc582ed1b2d5cd152 *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ +echo "a55106244ca93ef7b61309e9dca4b248257685870824a8abe2efa706ede8241f *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ chmod +x linux-install-$CLOJURE_VERSION.sh && \ ./linux-install-$CLOJURE_VERSION.sh && \ rm linux-install-$CLOJURE_VERSION.sh && \ diff --git a/target/eclipse-temurin-25-jdk-alpine/tools-deps/Dockerfile b/target/eclipse-temurin-25-jdk-alpine/tools-deps/Dockerfile index b496ca8c..2e928cea 100644 --- a/target/eclipse-temurin-25-jdk-alpine/tools-deps/Dockerfile +++ b/target/eclipse-temurin-25-jdk-alpine/tools-deps/Dockerfile @@ -1,6 +1,6 @@ FROM eclipse-temurin:25-jdk-alpine -ENV CLOJURE_VERSION=1.12.2.1565 +ENV CLOJURE_VERSION=1.12.3.1577 WORKDIR /tmp @@ -8,7 +8,7 @@ RUN \ apk add --no-cache curl bash make git rlwrap && \ curl -fsSLO https://download.clojure.org/install/linux-install-$CLOJURE_VERSION.sh && \ sha256sum linux-install-$CLOJURE_VERSION.sh && \ -echo "68442caaeaaa0780957953dfac11278e3991d3baeb22579fc582ed1b2d5cd152 *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ +echo "a55106244ca93ef7b61309e9dca4b248257685870824a8abe2efa706ede8241f *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ chmod +x linux-install-$CLOJURE_VERSION.sh && \ ./linux-install-$CLOJURE_VERSION.sh && \ rm linux-install-$CLOJURE_VERSION.sh && \ diff --git a/target/eclipse-temurin-25-jdk-noble/tools-deps/Dockerfile b/target/eclipse-temurin-25-jdk-noble/tools-deps/Dockerfile index 2cf77a9b..b7f817cb 100644 --- a/target/eclipse-temurin-25-jdk-noble/tools-deps/Dockerfile +++ b/target/eclipse-temurin-25-jdk-noble/tools-deps/Dockerfile @@ -1,6 +1,6 @@ FROM eclipse-temurin:25-jdk-noble -ENV CLOJURE_VERSION=1.12.2.1565 +ENV CLOJURE_VERSION=1.12.3.1577 WORKDIR /tmp @@ -10,7 +10,7 @@ apt-get install -y curl make git rlwrap && \ rm -rf /var/lib/apt/lists/* && \ curl -fsSLO https://download.clojure.org/install/linux-install-$CLOJURE_VERSION.sh && \ sha256sum linux-install-$CLOJURE_VERSION.sh && \ -echo "68442caaeaaa0780957953dfac11278e3991d3baeb22579fc582ed1b2d5cd152 *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ +echo "a55106244ca93ef7b61309e9dca4b248257685870824a8abe2efa706ede8241f *linux-install-$CLOJURE_VERSION.sh" | sha256sum -c - && \ chmod +x linux-install-$CLOJURE_VERSION.sh && \ ./linux-install-$CLOJURE_VERSION.sh && \ rm linux-install-$CLOJURE_VERSION.sh && \