diff --git a/.github/workflows/epicmorg.base.images.debian.11.yml b/.github/workflows/epicmorg.base.images.debian.11.yml index 119f42494..44616207e 100644 --- a/.github/workflows/epicmorg.base.images.debian.11.yml +++ b/.github/workflows/epicmorg.base.images.debian.11.yml @@ -336,7 +336,7 @@ jobs: version: [ '6', '7', '8', '11', '17', '21', - '16', '18', '19', '20', '22', '23' + '16', '18', '19', '20', '22', '23', '24', ] steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/epicmorg.base.images.debian.12.yml b/.github/workflows/epicmorg.base.images.debian.12.yml index deeb43f53..44e5da018 100644 --- a/.github/workflows/epicmorg.base.images.debian.12.yml +++ b/.github/workflows/epicmorg.base.images.debian.12.yml @@ -417,7 +417,7 @@ jobs: version: [ '6', '7', '8', '11', '17', '21', - '16', '18', '19', '20', '22', '23' + '16', '18', '19', '20', '22', '23', '24', ] steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/epicmorg.base.images.debian.13.yml b/.github/workflows/epicmorg.base.images.debian.13.yml index b8e14b0de..f8f321df3 100644 --- a/.github/workflows/epicmorg.base.images.debian.13.yml +++ b/.github/workflows/epicmorg.base.images.debian.13.yml @@ -352,7 +352,7 @@ jobs: version: [ '6', '7', '8', '11', '17', '21', - '16', '18', '19', '20', '22', '23' + '16', '18', '19', '20', '22', '23', '24', ] steps: diff --git a/.github/workflows/epicmorg.base.images.debian.sid.yml b/.github/workflows/epicmorg.base.images.debian.sid.yml index a9e86ab75..1e5f3a800 100644 --- a/.github/workflows/epicmorg.base.images.debian.sid.yml +++ b/.github/workflows/epicmorg.base.images.debian.sid.yml @@ -352,7 +352,7 @@ jobs: version: [ '6', '7', '8', '11', '17', '21', - '16', '18', '19', '20', '22', '23' + '16', '18', '19', '20', '22', '23', '24', ] steps: diff --git a/linux/ecosystem/epicmorg/debian/11-bullseye/jdk/jdk24/Dockerfile b/linux/ecosystem/epicmorg/debian/11-bullseye/jdk/jdk24/Dockerfile new file mode 100644 index 000000000..3bfc0792f --- /dev/null +++ b/linux/ecosystem/epicmorg/debian/11-bullseye/jdk/jdk24/Dockerfile @@ -0,0 +1,141 @@ +FROM epicmorg/debian:bullseye +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +ARG K_JDK_MAJOR_VERSION=24 +ARG K_JDK_FULL_VERSION=jdk-24.0.2 +ARG K_JDK_VERSION=24.0.2 +ARG K_JDK_BUILD_VERSION=12 +ARG K_JDK_DIR=${EMG_LOCAL_BASE_DIR}/java/${K_JDK_MAJOR_VERSION} +ARG K_JDK_URL=https://github.com/adoptium/temurin${K_JDK_MAJOR_VERSION}-binaries/releases/download/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz +ARG K_JDK_TEMP=/tmp/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz + +ENV JAVA_HOME=${K_JDK_DIR} +ENV JRE_HOME=${JAVA_HOME} +ENV JDK_HOME=${JAVA_HOME} +ENV PATH=$PATH:${JAVA_HOME}/bin + +################################################################## +# installing java24 +################################################################## +RUN wget -c \ + --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:128.0) Gecko/20100101 Firefox/128.0" \ + --no-check-certificate \ + --retry-connrefused \ + --tries=15 \ + --timeout=30 \ + --waitretry=15 \ + --dns-timeout=30 \ + --read-timeout=30 \ + --progress=dot:giga \ + --no-clobber \ + -O /tmp/$(basename "${K_JDK_URL}") \ + "${K_JDK_URL}" + +RUN mkdir -p ${K_JDK_DIR} && \ + tar -xzf ${K_JDK_TEMP} --strip-components=1 --directory ${K_JDK_DIR} && \ + ln -sfv ${JAVA_HOME} /usr/jre && \ + ln -sfv ${JAVA_HOME} /usr/jdk && \ + java -version && \ +# cleanup + apt-get clean -y && \ + apt-get clean all -y && \ + apt-get autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /tmp/* + +################################################################## +# Update JavaCA +################################################################## +RUN update-ca-certificates --fresh && \ + for cert in /usr/local/share/ca-certificates/*.crt; do \ + alias=$(basename "$cert" .crt); \ + keytool -importcert \ + -keystore "$JAVA_HOME/lib/security/cacerts" \ + -storepass changeit \ + -file "$cert" \ + -alias "$alias" \ + -noprompt; \ + done + +################################################################## +# Additional settings +################################################################## +ENV MAVEN_VERSION=3.9.11 +ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip +ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION} +ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION} +ENV MAVEN_BIN=${MAVEN_PATH}/bin +ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip + +ENV GRADLE_VERSION=8.14 +ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip +ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION} +ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION} +ENV GRADLE_BIN=${GRADLE_PATH}/bin +ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip + +ENV KTC_VERSION=2.2.0 +ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip +ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip +ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION} +ENV KTC_PATH=${KTC_ROOT}/kotlinc +ENV KTC_BIN=${KTC_PATH}/bin + +ENV KNPL_VERSION=${KTC_VERSION} +ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz +ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz +ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION} +ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION} +ENV KNPL_BIN=${KNPL_PATH}/bin + +RUN mkdir -p ${MAVEN_PATH} ${KTC_PATH} ${KNPL_PATH} ${GRADLE_PATH} +ENV PATH=${PATH}:${MAVEN_BIN}:${GRADLE_BIN}:${KTC_BIN}:${KNPL_BIN} + +################################################################## +# Maven +################################################################## +ENV MAVEN_HOME=${MAVEN_ROOT} +ENV M2_HOME=${MAVEN_ROOT} + +ADD ${MAVEN_LINK} /tmp +RUN 7zz x ${MAVEN_TEMP} -o${MAVEN_ROOT} +RUN chmod +x -R ${MAVEN_BIN} +RUN mvn -v + +################################################################## +# GRADLE +################################################################## +ADD ${GRADLE_LINK} /tmp +RUN 7zz x ${GRADLE_TEMP} -o${GRADLE_ROOT} +RUN chmod +x -R ${GRADLE_BIN} +RUN gradle -v + +################################################################## +# kotlin-compiler +################################################################## +ADD ${KTC_LINK} /tmp +RUN 7zz x ${KTC_TEMP} -o${KTC_ROOT} +RUN chmod +x -R ${KTC_BIN} +RUN kotlin -version + +################################################################## +# kotlin-native-prebuilt-linux +################################################################## +ADD ${KNPL_LINK} /tmp +RUN tar -xzf ${KNPL_TEMP} --directory ${KTC_ROOT} +RUN chmod +x -R ${KNPL_BIN} + +################################################################## +# Cleanup +################################################################## +RUN echo "clean up" && \ + apt-get clean -y && \ + apt-get autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /root/tmp/* && \ + rm -rfv /tmp/* + +RUN updatedb diff --git a/linux/ecosystem/epicmorg/debian/11-bullseye/jdk/jdk24/Dockerfile.develop b/linux/ecosystem/epicmorg/debian/11-bullseye/jdk/jdk24/Dockerfile.develop new file mode 100644 index 000000000..e841b2269 --- /dev/null +++ b/linux/ecosystem/epicmorg/debian/11-bullseye/jdk/jdk24/Dockerfile.develop @@ -0,0 +1,141 @@ +FROM epicmorg/debian:bullseye-develop +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +ARG K_JDK_MAJOR_VERSION=24 +ARG K_JDK_FULL_VERSION=jdk-24.0.2 +ARG K_JDK_VERSION=24.0.2 +ARG K_JDK_BUILD_VERSION=12 +ARG K_JDK_DIR=${EMG_LOCAL_BASE_DIR}/java/${K_JDK_MAJOR_VERSION} +ARG K_JDK_URL=https://github.com/adoptium/temurin${K_JDK_MAJOR_VERSION}-binaries/releases/download/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz +ARG K_JDK_TEMP=/tmp/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz + +ENV JAVA_HOME=${K_JDK_DIR} +ENV JRE_HOME=${JAVA_HOME} +ENV JDK_HOME=${JAVA_HOME} +ENV PATH=$PATH:${JAVA_HOME}/bin + +################################################################## +# installing java24 +################################################################## +RUN wget -c \ + --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:128.0) Gecko/20100101 Firefox/128.0" \ + --no-check-certificate \ + --retry-connrefused \ + --tries=15 \ + --timeout=30 \ + --waitretry=15 \ + --dns-timeout=30 \ + --read-timeout=30 \ + --progress=dot:giga \ + --no-clobber \ + -O /tmp/$(basename "${K_JDK_URL}") \ + "${K_JDK_URL}" + +RUN mkdir -p ${K_JDK_DIR} && \ + tar -xzf ${K_JDK_TEMP} --strip-components=1 --directory ${K_JDK_DIR} && \ + ln -sfv ${JAVA_HOME} /usr/jre && \ + ln -sfv ${JAVA_HOME} /usr/jdk && \ + java -version && \ +# cleanup + apt-get clean -y && \ + apt-get clean all -y && \ + apt-get autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /tmp/* + +################################################################## +# Update JavaCA +################################################################## +RUN update-ca-certificates --fresh && \ + for cert in /usr/local/share/ca-certificates/*.crt; do \ + alias=$(basename "$cert" .crt); \ + keytool -importcert \ + -keystore "$JAVA_HOME/lib/security/cacerts" \ + -storepass changeit \ + -file "$cert" \ + -alias "$alias" \ + -noprompt; \ + done + +################################################################## +# Additional settings +################################################################## +ENV MAVEN_VERSION=3.9.11 +ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip +ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION} +ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION} +ENV MAVEN_BIN=${MAVEN_PATH}/bin +ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip + +ENV GRADLE_VERSION=8.14 +ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip +ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION} +ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION} +ENV GRADLE_BIN=${GRADLE_PATH}/bin +ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip + +ENV KTC_VERSION=2.2.0 +ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip +ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip +ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION} +ENV KTC_PATH=${KTC_ROOT}/kotlinc +ENV KTC_BIN=${KTC_PATH}/bin + +ENV KNPL_VERSION=${KTC_VERSION} +ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz +ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz +ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION} +ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION} +ENV KNPL_BIN=${KNPL_PATH}/bin + +RUN mkdir -p ${MAVEN_PATH} ${KTC_PATH} ${KNPL_PATH} ${GRADLE_PATH} +ENV PATH=${PATH}:${MAVEN_BIN}:${GRADLE_BIN}:${KTC_BIN}:${KNPL_BIN} + +################################################################## +# Maven +################################################################## +ENV MAVEN_HOME=${MAVEN_ROOT} +ENV M2_HOME=${MAVEN_ROOT} + +ADD ${MAVEN_LINK} /tmp +RUN 7zz x ${MAVEN_TEMP} -o${MAVEN_ROOT} +RUN chmod +x -R ${MAVEN_BIN} +RUN mvn -v + +################################################################## +# GRADLE +################################################################## +ADD ${GRADLE_LINK} /tmp +RUN 7zz x ${GRADLE_TEMP} -o${GRADLE_ROOT} +RUN chmod +x -R ${GRADLE_BIN} +RUN gradle -v + +################################################################## +# kotlin-compiler +################################################################## +ADD ${KTC_LINK} /tmp +RUN 7zz x ${KTC_TEMP} -o${KTC_ROOT} +RUN chmod +x -R ${KTC_BIN} +RUN kotlin -version + +################################################################## +# kotlin-native-prebuilt-linux +################################################################## +ADD ${KNPL_LINK} /tmp +RUN tar -xzf ${KNPL_TEMP} --directory ${KTC_ROOT} +RUN chmod +x -R ${KNPL_BIN} + +################################################################## +# Cleanup +################################################################## +RUN echo "clean up" && \ + apt-get clean -y && \ + apt-get autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /root/tmp/* && \ + rm -rfv /tmp/* + +RUN updatedb diff --git a/linux/ecosystem/epicmorg/debian/11-bullseye/jdk/jdk24/Makefile b/linux/ecosystem/epicmorg/debian/11-bullseye/jdk/jdk24/Makefile new file mode 100644 index 000000000..1e4371492 --- /dev/null +++ b/linux/ecosystem/epicmorg/debian/11-bullseye/jdk/jdk24/Makefile @@ -0,0 +1,44 @@ +all: app + +app: + make pip + make build + make deploy + make clean + +build: + make build-buildah + +deploy: + make deploy-buildah + +build-buildah: + buildah-wrapper --build + +deploy-buildah: + buildah-wrapper --deploy + +build-kaniko: + kaniko-wrapper --kaniko-image gcr.io/kaniko-project/executor:debug --dry-run + +deploy-kaniko: + kaniko-wrapper --deploy --kaniko-image gcr.io/kaniko-project/executor:debug + +build-compose: + docker-compose build --compress --parallel --progress plain + +deploy-compose: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af + buildah rm -a + buildah rmi -a + +pip: + pip3 install --break-system-packages --no-cache-dir kaniko-wrapper buildah-wrapper + pip install --break-system-packages --no-cache-dir kaniko-wrapper buildah-wrapper \ No newline at end of file diff --git a/linux/ecosystem/epicmorg/debian/11-bullseye/jdk/jdk24/docker-compose.yml b/linux/ecosystem/epicmorg/debian/11-bullseye/jdk/jdk24/docker-compose.yml new file mode 100644 index 000000000..e92c3a262 --- /dev/null +++ b/linux/ecosystem/epicmorg/debian/11-bullseye/jdk/jdk24/docker-compose.yml @@ -0,0 +1,10 @@ +services: + app: + image: "epicmorg/debian:bullseye-jdk24" + build: + context: . + app-develop: + image: "epicmorg/debian:bullseye-develop-jdk24" + build: + context: . + dockerfile: ./Dockerfile.develop diff --git a/linux/ecosystem/epicmorg/debian/12-bookworm/jdk/jdk24/Dockerfile b/linux/ecosystem/epicmorg/debian/12-bookworm/jdk/jdk24/Dockerfile new file mode 100644 index 000000000..93de7253e --- /dev/null +++ b/linux/ecosystem/epicmorg/debian/12-bookworm/jdk/jdk24/Dockerfile @@ -0,0 +1,141 @@ +FROM epicmorg/debian:bookworm +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +ARG K_JDK_MAJOR_VERSION=24 +ARG K_JDK_FULL_VERSION=jdk-24.0.2 +ARG K_JDK_VERSION=24.0.2 +ARG K_JDK_BUILD_VERSION=12 +ARG K_JDK_DIR=${EMG_LOCAL_BASE_DIR}/java/${K_JDK_MAJOR_VERSION} +ARG K_JDK_URL=https://github.com/adoptium/temurin${K_JDK_MAJOR_VERSION}-binaries/releases/download/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz +ARG K_JDK_TEMP=/tmp/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz + +ENV JAVA_HOME=${K_JDK_DIR} +ENV JRE_HOME=${JAVA_HOME} +ENV JDK_HOME=${JAVA_HOME} +ENV PATH=$PATH:${JAVA_HOME}/bin + +################################################################## +# installing java24 +################################################################## +RUN wget -c \ + --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:128.0) Gecko/20100101 Firefox/128.0" \ + --no-check-certificate \ + --retry-connrefused \ + --tries=15 \ + --timeout=30 \ + --waitretry=15 \ + --dns-timeout=30 \ + --read-timeout=30 \ + --progress=dot:giga \ + --no-clobber \ + -O /tmp/$(basename "${K_JDK_URL}") \ + "${K_JDK_URL}" + +RUN mkdir -p ${K_JDK_DIR} && \ + tar -xzf ${K_JDK_TEMP} --strip-components=1 --directory ${K_JDK_DIR} && \ + ln -sfv ${JAVA_HOME} /usr/jre && \ + ln -sfv ${JAVA_HOME} /usr/jdk && \ + java -version && \ +# cleanup + apt-get clean -y && \ + apt-get clean all -y && \ + apt-get autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /tmp/* + +################################################################## +# Update JavaCA +################################################################## +RUN update-ca-certificates --fresh && \ + for cert in /usr/local/share/ca-certificates/*.crt; do \ + alias=$(basename "$cert" .crt); \ + keytool -importcert \ + -keystore "$JAVA_HOME/lib/security/cacerts" \ + -storepass changeit \ + -file "$cert" \ + -alias "$alias" \ + -noprompt; \ + done + +################################################################## +# Additional settings +################################################################## +ENV MAVEN_VERSION=3.9.11 +ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip +ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION} +ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION} +ENV MAVEN_BIN=${MAVEN_PATH}/bin +ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip + +ENV GRADLE_VERSION=8.14 +ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip +ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION} +ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION} +ENV GRADLE_BIN=${GRADLE_PATH}/bin +ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip + +ENV KTC_VERSION=2.2.0 +ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip +ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip +ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION} +ENV KTC_PATH=${KTC_ROOT}/kotlinc +ENV KTC_BIN=${KTC_PATH}/bin + +ENV KNPL_VERSION=${KTC_VERSION} +ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz +ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz +ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION} +ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION} +ENV KNPL_BIN=${KNPL_PATH}/bin + +RUN mkdir -p ${MAVEN_PATH} ${KTC_PATH} ${KNPL_PATH} ${GRADLE_PATH} +ENV PATH=${PATH}:${MAVEN_BIN}:${GRADLE_BIN}:${KTC_BIN}:${KNPL_BIN} + +################################################################## +# Maven +################################################################## +ENV MAVEN_HOME=${MAVEN_ROOT} +ENV M2_HOME=${MAVEN_ROOT} + +ADD ${MAVEN_LINK} /tmp +RUN 7zz x ${MAVEN_TEMP} -o${MAVEN_ROOT} +RUN chmod +x -R ${MAVEN_BIN} +RUN mvn -v + +################################################################## +# GRADLE +################################################################## +ADD ${GRADLE_LINK} /tmp +RUN 7zz x ${GRADLE_TEMP} -o${GRADLE_ROOT} +RUN chmod +x -R ${GRADLE_BIN} +RUN gradle -v + +################################################################## +# kotlin-compiler +################################################################## +ADD ${KTC_LINK} /tmp +RUN 7zz x ${KTC_TEMP} -o${KTC_ROOT} +RUN chmod +x -R ${KTC_BIN} +RUN kotlin -version + +################################################################## +# kotlin-native-prebuilt-linux +################################################################## +ADD ${KNPL_LINK} /tmp +RUN tar -xzf ${KNPL_TEMP} --directory ${KTC_ROOT} +RUN chmod +x -R ${KNPL_BIN} + +################################################################## +# Cleanup +################################################################## +RUN echo "clean up" && \ + apt-get clean -y && \ + apt-get autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /root/tmp/* && \ + rm -rfv /tmp/* + +RUN updatedb diff --git a/linux/ecosystem/epicmorg/debian/12-bookworm/jdk/jdk24/Dockerfile.develop b/linux/ecosystem/epicmorg/debian/12-bookworm/jdk/jdk24/Dockerfile.develop new file mode 100644 index 000000000..7e0cd51c5 --- /dev/null +++ b/linux/ecosystem/epicmorg/debian/12-bookworm/jdk/jdk24/Dockerfile.develop @@ -0,0 +1,141 @@ +FROM epicmorg/debian:bookworm-develop +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +ARG K_JDK_MAJOR_VERSION=24 +ARG K_JDK_FULL_VERSION=jdk-24.0.2 +ARG K_JDK_VERSION=24.0.2 +ARG K_JDK_BUILD_VERSION=12 +ARG K_JDK_DIR=${EMG_LOCAL_BASE_DIR}/java/${K_JDK_MAJOR_VERSION} +ARG K_JDK_URL=https://github.com/adoptium/temurin${K_JDK_MAJOR_VERSION}-binaries/releases/download/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz +ARG K_JDK_TEMP=/tmp/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz + +ENV JAVA_HOME=${K_JDK_DIR} +ENV JRE_HOME=${JAVA_HOME} +ENV JDK_HOME=${JAVA_HOME} +ENV PATH=$PATH:${JAVA_HOME}/bin + +################################################################## +# installing java24 +################################################################## +RUN wget -c \ + --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:128.0) Gecko/20100101 Firefox/128.0" \ + --no-check-certificate \ + --retry-connrefused \ + --tries=15 \ + --timeout=30 \ + --waitretry=15 \ + --dns-timeout=30 \ + --read-timeout=30 \ + --progress=dot:giga \ + --no-clobber \ + -O /tmp/$(basename "${K_JDK_URL}") \ + "${K_JDK_URL}" + +RUN mkdir -p ${K_JDK_DIR} && \ + tar -xzf ${K_JDK_TEMP} --strip-components=1 --directory ${K_JDK_DIR} && \ + ln -sfv ${JAVA_HOME} /usr/jre && \ + ln -sfv ${JAVA_HOME} /usr/jdk && \ + java -version && \ +# cleanup + apt-get clean -y && \ + apt-get clean all -y && \ + apt-get autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /tmp/* + +################################################################## +# Update JavaCA +################################################################## +RUN update-ca-certificates --fresh && \ + for cert in /usr/local/share/ca-certificates/*.crt; do \ + alias=$(basename "$cert" .crt); \ + keytool -importcert \ + -keystore "$JAVA_HOME/lib/security/cacerts" \ + -storepass changeit \ + -file "$cert" \ + -alias "$alias" \ + -noprompt; \ + done + +################################################################## +# Additional settings +################################################################## +ENV MAVEN_VERSION=3.9.11 +ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip +ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION} +ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION} +ENV MAVEN_BIN=${MAVEN_PATH}/bin +ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip + +ENV GRADLE_VERSION=8.14 +ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip +ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION} +ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION} +ENV GRADLE_BIN=${GRADLE_PATH}/bin +ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip + +ENV KTC_VERSION=2.2.0 +ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip +ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip +ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION} +ENV KTC_PATH=${KTC_ROOT}/kotlinc +ENV KTC_BIN=${KTC_PATH}/bin + +ENV KNPL_VERSION=${KTC_VERSION} +ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz +ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz +ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION} +ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION} +ENV KNPL_BIN=${KNPL_PATH}/bin + +RUN mkdir -p ${MAVEN_PATH} ${KTC_PATH} ${KNPL_PATH} ${GRADLE_PATH} +ENV PATH=${PATH}:${MAVEN_BIN}:${GRADLE_BIN}:${KTC_BIN}:${KNPL_BIN} + +################################################################## +# Maven +################################################################## +ENV MAVEN_HOME=${MAVEN_ROOT} +ENV M2_HOME=${MAVEN_ROOT} + +ADD ${MAVEN_LINK} /tmp +RUN 7zz x ${MAVEN_TEMP} -o${MAVEN_ROOT} +RUN chmod +x -R ${MAVEN_BIN} +RUN mvn -v + +################################################################## +# GRADLE +################################################################## +ADD ${GRADLE_LINK} /tmp +RUN 7zz x ${GRADLE_TEMP} -o${GRADLE_ROOT} +RUN chmod +x -R ${GRADLE_BIN} +RUN gradle -v + +################################################################## +# kotlin-compiler +################################################################## +ADD ${KTC_LINK} /tmp +RUN 7zz x ${KTC_TEMP} -o${KTC_ROOT} +RUN chmod +x -R ${KTC_BIN} +RUN kotlin -version + +################################################################## +# kotlin-native-prebuilt-linux +################################################################## +ADD ${KNPL_LINK} /tmp +RUN tar -xzf ${KNPL_TEMP} --directory ${KTC_ROOT} +RUN chmod +x -R ${KNPL_BIN} + +################################################################## +# Cleanup +################################################################## +RUN echo "clean up" && \ + apt-get clean -y && \ + apt-get autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /root/tmp/* && \ + rm -rfv /tmp/* + +RUN updatedb diff --git a/linux/ecosystem/epicmorg/debian/12-bookworm/jdk/jdk24/Makefile b/linux/ecosystem/epicmorg/debian/12-bookworm/jdk/jdk24/Makefile new file mode 100644 index 000000000..1e4371492 --- /dev/null +++ b/linux/ecosystem/epicmorg/debian/12-bookworm/jdk/jdk24/Makefile @@ -0,0 +1,44 @@ +all: app + +app: + make pip + make build + make deploy + make clean + +build: + make build-buildah + +deploy: + make deploy-buildah + +build-buildah: + buildah-wrapper --build + +deploy-buildah: + buildah-wrapper --deploy + +build-kaniko: + kaniko-wrapper --kaniko-image gcr.io/kaniko-project/executor:debug --dry-run + +deploy-kaniko: + kaniko-wrapper --deploy --kaniko-image gcr.io/kaniko-project/executor:debug + +build-compose: + docker-compose build --compress --parallel --progress plain + +deploy-compose: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af + buildah rm -a + buildah rmi -a + +pip: + pip3 install --break-system-packages --no-cache-dir kaniko-wrapper buildah-wrapper + pip install --break-system-packages --no-cache-dir kaniko-wrapper buildah-wrapper \ No newline at end of file diff --git a/linux/ecosystem/epicmorg/debian/12-bookworm/jdk/jdk24/docker-compose.yml b/linux/ecosystem/epicmorg/debian/12-bookworm/jdk/jdk24/docker-compose.yml new file mode 100644 index 000000000..e60c433b6 --- /dev/null +++ b/linux/ecosystem/epicmorg/debian/12-bookworm/jdk/jdk24/docker-compose.yml @@ -0,0 +1,10 @@ +services: + app: + image: "epicmorg/debian:bookworm-jdk24" + build: + context: . + app-develop: + image: "epicmorg/debian:bookworm-develop-jdk24" + build: + context: . + dockerfile: ./Dockerfile.develop diff --git a/linux/ecosystem/epicmorg/debian/13-trixie/jdk/jdk24/Dockerfile b/linux/ecosystem/epicmorg/debian/13-trixie/jdk/jdk24/Dockerfile new file mode 100644 index 000000000..b440613c3 --- /dev/null +++ b/linux/ecosystem/epicmorg/debian/13-trixie/jdk/jdk24/Dockerfile @@ -0,0 +1,141 @@ +FROM epicmorg/debian:trixie +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +ARG K_JDK_MAJOR_VERSION=24 +ARG K_JDK_FULL_VERSION=jdk-24.0.2 +ARG K_JDK_VERSION=24.0.2 +ARG K_JDK_BUILD_VERSION=12 +ARG K_JDK_DIR=${EMG_LOCAL_BASE_DIR}/java/${K_JDK_MAJOR_VERSION} +ARG K_JDK_URL=https://github.com/adoptium/temurin${K_JDK_MAJOR_VERSION}-binaries/releases/download/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz +ARG K_JDK_TEMP=/tmp/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz + +ENV JAVA_HOME=${K_JDK_DIR} +ENV JRE_HOME=${JAVA_HOME} +ENV JDK_HOME=${JAVA_HOME} +ENV PATH=$PATH:${JAVA_HOME}/bin + +################################################################## +# installing java24 +################################################################## +RUN wget -c \ + --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:128.0) Gecko/20100101 Firefox/128.0" \ + --no-check-certificate \ + --retry-connrefused \ + --tries=15 \ + --timeout=30 \ + --waitretry=15 \ + --dns-timeout=30 \ + --read-timeout=30 \ + --progress=dot:giga \ + --no-clobber \ + -O /tmp/$(basename "${K_JDK_URL}") \ + "${K_JDK_URL}" + +RUN mkdir -p ${K_JDK_DIR} && \ + tar -xzf ${K_JDK_TEMP} --strip-components=1 --directory ${K_JDK_DIR} && \ + ln -sfv ${JAVA_HOME} /usr/jre && \ + ln -sfv ${JAVA_HOME} /usr/jdk && \ + java -version && \ +# cleanup + apt-get clean -y && \ + apt-get clean all -y && \ + apt-get autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /tmp/* + +################################################################## +# Update JavaCA +################################################################## +RUN update-ca-certificates --fresh && \ + for cert in /usr/local/share/ca-certificates/*.crt; do \ + alias=$(basename "$cert" .crt); \ + keytool -importcert \ + -keystore "$JAVA_HOME/lib/security/cacerts" \ + -storepass changeit \ + -file "$cert" \ + -alias "$alias" \ + -noprompt; \ + done + +################################################################## +# Additional settings +################################################################## +ENV MAVEN_VERSION=3.9.11 +ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip +ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION} +ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION} +ENV MAVEN_BIN=${MAVEN_PATH}/bin +ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip + +ENV GRADLE_VERSION=8.14 +ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip +ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION} +ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION} +ENV GRADLE_BIN=${GRADLE_PATH}/bin +ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip + +ENV KTC_VERSION=2.2.0 +ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip +ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip +ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION} +ENV KTC_PATH=${KTC_ROOT}/kotlinc +ENV KTC_BIN=${KTC_PATH}/bin + +ENV KNPL_VERSION=${KTC_VERSION} +ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz +ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz +ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION} +ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION} +ENV KNPL_BIN=${KNPL_PATH}/bin + +RUN mkdir -p ${MAVEN_PATH} ${KTC_PATH} ${KNPL_PATH} ${GRADLE_PATH} +ENV PATH=${PATH}:${MAVEN_BIN}:${GRADLE_BIN}:${KTC_BIN}:${KNPL_BIN} + +################################################################## +# Maven +################################################################## +ENV MAVEN_HOME=${MAVEN_ROOT} +ENV M2_HOME=${MAVEN_ROOT} + +ADD ${MAVEN_LINK} /tmp +RUN 7zz x ${MAVEN_TEMP} -o${MAVEN_ROOT} +RUN chmod +x -R ${MAVEN_BIN} +RUN mvn -v + +################################################################## +# GRADLE +################################################################## +ADD ${GRADLE_LINK} /tmp +RUN 7zz x ${GRADLE_TEMP} -o${GRADLE_ROOT} +RUN chmod +x -R ${GRADLE_BIN} +RUN gradle -v + +################################################################## +# kotlin-compiler +################################################################## +ADD ${KTC_LINK} /tmp +RUN 7zz x ${KTC_TEMP} -o${KTC_ROOT} +RUN chmod +x -R ${KTC_BIN} +RUN kotlin -version + +################################################################## +# kotlin-native-prebuilt-linux +################################################################## +ADD ${KNPL_LINK} /tmp +RUN tar -xzf ${KNPL_TEMP} --directory ${KTC_ROOT} +RUN chmod +x -R ${KNPL_BIN} + +################################################################## +# Cleanup +################################################################## +RUN echo "clean up" && \ + apt-get clean -y && \ + apt-get autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /root/tmp/* && \ + rm -rfv /tmp/* + +RUN updatedb diff --git a/linux/ecosystem/epicmorg/debian/13-trixie/jdk/jdk24/Dockerfile.develop b/linux/ecosystem/epicmorg/debian/13-trixie/jdk/jdk24/Dockerfile.develop new file mode 100644 index 000000000..3079998ca --- /dev/null +++ b/linux/ecosystem/epicmorg/debian/13-trixie/jdk/jdk24/Dockerfile.develop @@ -0,0 +1,141 @@ +FROM epicmorg/debian:trixie-develop +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +ARG K_JDK_MAJOR_VERSION=24 +ARG K_JDK_FULL_VERSION=jdk-24.0.2 +ARG K_JDK_VERSION=24.0.2 +ARG K_JDK_BUILD_VERSION=12 +ARG K_JDK_DIR=${EMG_LOCAL_BASE_DIR}/java/${K_JDK_MAJOR_VERSION} +ARG K_JDK_URL=https://github.com/adoptium/temurin${K_JDK_MAJOR_VERSION}-binaries/releases/download/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz +ARG K_JDK_TEMP=/tmp/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz + +ENV JAVA_HOME=${K_JDK_DIR} +ENV JRE_HOME=${JAVA_HOME} +ENV JDK_HOME=${JAVA_HOME} +ENV PATH=$PATH:${JAVA_HOME}/bin + +################################################################## +# installing java24 +################################################################## +RUN wget -c \ + --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:128.0) Gecko/20100101 Firefox/128.0" \ + --no-check-certificate \ + --retry-connrefused \ + --tries=15 \ + --timeout=30 \ + --waitretry=15 \ + --dns-timeout=30 \ + --read-timeout=30 \ + --progress=dot:giga \ + --no-clobber \ + -O /tmp/$(basename "${K_JDK_URL}") \ + "${K_JDK_URL}" + +RUN mkdir -p ${K_JDK_DIR} && \ + tar -xzf ${K_JDK_TEMP} --strip-components=1 --directory ${K_JDK_DIR} && \ + ln -sfv ${JAVA_HOME} /usr/jre && \ + ln -sfv ${JAVA_HOME} /usr/jdk && \ + java -version && \ +# cleanup + apt-get clean -y && \ + apt-get clean all -y && \ + apt-get autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /tmp/* + +################################################################## +# Update JavaCA +################################################################## +RUN update-ca-certificates --fresh && \ + for cert in /usr/local/share/ca-certificates/*.crt; do \ + alias=$(basename "$cert" .crt); \ + keytool -importcert \ + -keystore "$JAVA_HOME/lib/security/cacerts" \ + -storepass changeit \ + -file "$cert" \ + -alias "$alias" \ + -noprompt; \ + done + +################################################################## +# Additional settings +################################################################## +ENV MAVEN_VERSION=3.9.11 +ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip +ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION} +ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION} +ENV MAVEN_BIN=${MAVEN_PATH}/bin +ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip + +ENV GRADLE_VERSION=8.14 +ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip +ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION} +ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION} +ENV GRADLE_BIN=${GRADLE_PATH}/bin +ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip + +ENV KTC_VERSION=2.2.0 +ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip +ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip +ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION} +ENV KTC_PATH=${KTC_ROOT}/kotlinc +ENV KTC_BIN=${KTC_PATH}/bin + +ENV KNPL_VERSION=${KTC_VERSION} +ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz +ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz +ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION} +ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION} +ENV KNPL_BIN=${KNPL_PATH}/bin + +RUN mkdir -p ${MAVEN_PATH} ${KTC_PATH} ${KNPL_PATH} ${GRADLE_PATH} +ENV PATH=${PATH}:${MAVEN_BIN}:${GRADLE_BIN}:${KTC_BIN}:${KNPL_BIN} + +################################################################## +# Maven +################################################################## +ENV MAVEN_HOME=${MAVEN_ROOT} +ENV M2_HOME=${MAVEN_ROOT} + +ADD ${MAVEN_LINK} /tmp +RUN 7zz x ${MAVEN_TEMP} -o${MAVEN_ROOT} +RUN chmod +x -R ${MAVEN_BIN} +RUN mvn -v + +################################################################## +# GRADLE +################################################################## +ADD ${GRADLE_LINK} /tmp +RUN 7zz x ${GRADLE_TEMP} -o${GRADLE_ROOT} +RUN chmod +x -R ${GRADLE_BIN} +RUN gradle -v + +################################################################## +# kotlin-compiler +################################################################## +ADD ${KTC_LINK} /tmp +RUN 7zz x ${KTC_TEMP} -o${KTC_ROOT} +RUN chmod +x -R ${KTC_BIN} +RUN kotlin -version + +################################################################## +# kotlin-native-prebuilt-linux +################################################################## +ADD ${KNPL_LINK} /tmp +RUN tar -xzf ${KNPL_TEMP} --directory ${KTC_ROOT} +RUN chmod +x -R ${KNPL_BIN} + +################################################################## +# Cleanup +################################################################## +RUN echo "clean up" && \ + apt-get clean -y && \ + apt-get autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /root/tmp/* && \ + rm -rfv /tmp/* + +RUN updatedb diff --git a/linux/ecosystem/epicmorg/debian/13-trixie/jdk/jdk24/Makefile b/linux/ecosystem/epicmorg/debian/13-trixie/jdk/jdk24/Makefile new file mode 100644 index 000000000..1e4371492 --- /dev/null +++ b/linux/ecosystem/epicmorg/debian/13-trixie/jdk/jdk24/Makefile @@ -0,0 +1,44 @@ +all: app + +app: + make pip + make build + make deploy + make clean + +build: + make build-buildah + +deploy: + make deploy-buildah + +build-buildah: + buildah-wrapper --build + +deploy-buildah: + buildah-wrapper --deploy + +build-kaniko: + kaniko-wrapper --kaniko-image gcr.io/kaniko-project/executor:debug --dry-run + +deploy-kaniko: + kaniko-wrapper --deploy --kaniko-image gcr.io/kaniko-project/executor:debug + +build-compose: + docker-compose build --compress --parallel --progress plain + +deploy-compose: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af + buildah rm -a + buildah rmi -a + +pip: + pip3 install --break-system-packages --no-cache-dir kaniko-wrapper buildah-wrapper + pip install --break-system-packages --no-cache-dir kaniko-wrapper buildah-wrapper \ No newline at end of file diff --git a/linux/ecosystem/epicmorg/debian/13-trixie/jdk/jdk24/docker-compose.yml b/linux/ecosystem/epicmorg/debian/13-trixie/jdk/jdk24/docker-compose.yml new file mode 100644 index 000000000..e4da5ba72 --- /dev/null +++ b/linux/ecosystem/epicmorg/debian/13-trixie/jdk/jdk24/docker-compose.yml @@ -0,0 +1,10 @@ +services: + app: + image: "epicmorg/debian:trixie-jdk24" + build: + context: . + app-develop: + image: "epicmorg/debian:trixie-develop-jdk24" + build: + context: . + dockerfile: ./Dockerfile.develop diff --git a/linux/ecosystem/epicmorg/debian/sid/jdk/jdk24/Dockerfile b/linux/ecosystem/epicmorg/debian/sid/jdk/jdk24/Dockerfile new file mode 100644 index 000000000..2f8eccb69 --- /dev/null +++ b/linux/ecosystem/epicmorg/debian/sid/jdk/jdk24/Dockerfile @@ -0,0 +1,141 @@ +FROM epicmorg/debian:sid +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +ARG K_JDK_MAJOR_VERSION=24 +ARG K_JDK_FULL_VERSION=jdk-24.0.2 +ARG K_JDK_VERSION=24.0.2 +ARG K_JDK_BUILD_VERSION=12 +ARG K_JDK_DIR=${EMG_LOCAL_BASE_DIR}/java/${K_JDK_MAJOR_VERSION} +ARG K_JDK_URL=https://github.com/adoptium/temurin${K_JDK_MAJOR_VERSION}-binaries/releases/download/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz +ARG K_JDK_TEMP=/tmp/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz + +ENV JAVA_HOME=${K_JDK_DIR} +ENV JRE_HOME=${JAVA_HOME} +ENV JDK_HOME=${JAVA_HOME} +ENV PATH=$PATH:${JAVA_HOME}/bin + +################################################################## +# installing java24 +################################################################## +RUN wget -c \ + --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:128.0) Gecko/20100101 Firefox/128.0" \ + --no-check-certificate \ + --retry-connrefused \ + --tries=15 \ + --timeout=30 \ + --waitretry=15 \ + --dns-timeout=30 \ + --read-timeout=30 \ + --progress=dot:giga \ + --no-clobber \ + -O /tmp/$(basename "${K_JDK_URL}") \ + "${K_JDK_URL}" + +RUN mkdir -p ${K_JDK_DIR} && \ + tar -xzf ${K_JDK_TEMP} --strip-components=1 --directory ${K_JDK_DIR} && \ + ln -sfv ${JAVA_HOME} /usr/jre && \ + ln -sfv ${JAVA_HOME} /usr/jdk && \ + java -version && \ +# cleanup + apt-get clean -y && \ + apt-get clean all -y && \ + apt-get autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /tmp/* + +################################################################## +# Update JavaCA +################################################################## +RUN update-ca-certificates --fresh && \ + for cert in /usr/local/share/ca-certificates/*.crt; do \ + alias=$(basename "$cert" .crt); \ + keytool -importcert \ + -keystore "$JAVA_HOME/lib/security/cacerts" \ + -storepass changeit \ + -file "$cert" \ + -alias "$alias" \ + -noprompt; \ + done + +################################################################## +# Additional settings +################################################################## +ENV MAVEN_VERSION=3.9.11 +ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip +ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION} +ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION} +ENV MAVEN_BIN=${MAVEN_PATH}/bin +ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip + +ENV GRADLE_VERSION=8.14 +ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip +ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION} +ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION} +ENV GRADLE_BIN=${GRADLE_PATH}/bin +ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip + +ENV KTC_VERSION=2.2.0 +ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip +ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip +ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION} +ENV KTC_PATH=${KTC_ROOT}/kotlinc +ENV KTC_BIN=${KTC_PATH}/bin + +ENV KNPL_VERSION=${KTC_VERSION} +ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz +ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz +ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION} +ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION} +ENV KNPL_BIN=${KNPL_PATH}/bin + +RUN mkdir -p ${MAVEN_PATH} ${KTC_PATH} ${KNPL_PATH} ${GRADLE_PATH} +ENV PATH=${PATH}:${MAVEN_BIN}:${GRADLE_BIN}:${KTC_BIN}:${KNPL_BIN} + +################################################################## +# Maven +################################################################## +ENV MAVEN_HOME=${MAVEN_ROOT} +ENV M2_HOME=${MAVEN_ROOT} + +ADD ${MAVEN_LINK} /tmp +RUN 7zz x ${MAVEN_TEMP} -o${MAVEN_ROOT} +RUN chmod +x -R ${MAVEN_BIN} +RUN mvn -v + +################################################################## +# GRADLE +################################################################## +ADD ${GRADLE_LINK} /tmp +RUN 7zz x ${GRADLE_TEMP} -o${GRADLE_ROOT} +RUN chmod +x -R ${GRADLE_BIN} +RUN gradle -v + +################################################################## +# kotlin-compiler +################################################################## +ADD ${KTC_LINK} /tmp +RUN 7zz x ${KTC_TEMP} -o${KTC_ROOT} +RUN chmod +x -R ${KTC_BIN} +RUN kotlin -version + +################################################################## +# kotlin-native-prebuilt-linux +################################################################## +ADD ${KNPL_LINK} /tmp +RUN tar -xzf ${KNPL_TEMP} --directory ${KTC_ROOT} +RUN chmod +x -R ${KNPL_BIN} + +################################################################## +# Cleanup +################################################################## +RUN echo "clean up" && \ + apt-get clean -y && \ + apt-get autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /root/tmp/* && \ + rm -rfv /tmp/* + +RUN updatedb diff --git a/linux/ecosystem/epicmorg/debian/sid/jdk/jdk24/Dockerfile.develop b/linux/ecosystem/epicmorg/debian/sid/jdk/jdk24/Dockerfile.develop new file mode 100644 index 000000000..7b26da14a --- /dev/null +++ b/linux/ecosystem/epicmorg/debian/sid/jdk/jdk24/Dockerfile.develop @@ -0,0 +1,141 @@ +FROM epicmorg/debian:sid-develop +LABEL maintainer="EpicMorg DevTeam, developer@epicm.org" +ARG DEBIAN_FRONTEND=noninteractive + +ARG K_JDK_MAJOR_VERSION=24 +ARG K_JDK_FULL_VERSION=jdk-24.0.2 +ARG K_JDK_VERSION=24.0.2 +ARG K_JDK_BUILD_VERSION=12 +ARG K_JDK_DIR=${EMG_LOCAL_BASE_DIR}/java/${K_JDK_MAJOR_VERSION} +ARG K_JDK_URL=https://github.com/adoptium/temurin${K_JDK_MAJOR_VERSION}-binaries/releases/download/${K_JDK_FULL_VERSION}+${K_JDK_BUILD_VERSION}/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz +ARG K_JDK_TEMP=/tmp/OpenJDK${K_JDK_MAJOR_VERSION}U-jdk_x64_linux_hotspot_${K_JDK_VERSION}_${K_JDK_BUILD_VERSION}.tar.gz + +ENV JAVA_HOME=${K_JDK_DIR} +ENV JRE_HOME=${JAVA_HOME} +ENV JDK_HOME=${JAVA_HOME} +ENV PATH=$PATH:${JAVA_HOME}/bin + +################################################################## +# installing java24 +################################################################## +RUN wget -c \ + --user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:128.0) Gecko/20100101 Firefox/128.0" \ + --no-check-certificate \ + --retry-connrefused \ + --tries=15 \ + --timeout=30 \ + --waitretry=15 \ + --dns-timeout=30 \ + --read-timeout=30 \ + --progress=dot:giga \ + --no-clobber \ + -O /tmp/$(basename "${K_JDK_URL}") \ + "${K_JDK_URL}" + +RUN mkdir -p ${K_JDK_DIR} && \ + tar -xzf ${K_JDK_TEMP} --strip-components=1 --directory ${K_JDK_DIR} && \ + ln -sfv ${JAVA_HOME} /usr/jre && \ + ln -sfv ${JAVA_HOME} /usr/jdk && \ + java -version && \ +# cleanup + apt-get clean -y && \ + apt-get clean all -y && \ + apt-get autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /tmp/* + +################################################################## +# Update JavaCA +################################################################## +RUN update-ca-certificates --fresh && \ + for cert in /usr/local/share/ca-certificates/*.crt; do \ + alias=$(basename "$cert" .crt); \ + keytool -importcert \ + -keystore "$JAVA_HOME/lib/security/cacerts" \ + -storepass changeit \ + -file "$cert" \ + -alias "$alias" \ + -noprompt; \ + done + +################################################################## +# Additional settings +################################################################## +ENV MAVEN_VERSION=3.9.11 +ENV MAVEN_LINK=https://dlcdn.apache.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.zip +ENV MAVEN_ROOT=${EMG_LOCAL_BASE_DIR}/maven/${MAVEN_VERSION} +ENV MAVEN_PATH=${MAVEN_ROOT}/apache-maven-${MAVEN_VERSION} +ENV MAVEN_BIN=${MAVEN_PATH}/bin +ARG MAVEN_TEMP=/tmp/apache-maven-${MAVEN_VERSION}-bin.zip + +ENV GRADLE_VERSION=8.14 +ENV GRADLE_LINK=https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-all.zip +ENV GRADLE_ROOT=${EMG_LOCAL_BASE_DIR}/gradle/${GRADLE_VERSION} +ENV GRADLE_PATH=${GRADLE_ROOT}/gradle-${GRADLE_VERSION} +ENV GRADLE_BIN=${GRADLE_PATH}/bin +ARG GRADLE_TEMP=/tmp/gradle-${GRADLE_VERSION}-all.zip + +ENV KTC_VERSION=2.2.0 +ENV KTC_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KTC_VERSION}/kotlin-compiler-${KTC_VERSION}.zip +ARG KTC_TEMP=/tmp/kotlin-compiler-${KTC_VERSION}.zip +ENV KTC_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KTC_VERSION} +ENV KTC_PATH=${KTC_ROOT}/kotlinc +ENV KTC_BIN=${KTC_PATH}/bin + +ENV KNPL_VERSION=${KTC_VERSION} +ENV KNPL_LINK=https://github.com/JetBrains/kotlin/releases/download/v${KNPL_VERSION}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz +ARG KNPL_TEMP=/tmp/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION}.tar.gz +ENV KNPL_ROOT=${EMG_LOCAL_BASE_DIR}/kotlin/${KNPL_VERSION} +ENV KNPL_PATH=${KNPL_ROOT}/kotlin-native-prebuilt-linux-x86_64-${KNPL_VERSION} +ENV KNPL_BIN=${KNPL_PATH}/bin + +RUN mkdir -p ${MAVEN_PATH} ${KTC_PATH} ${KNPL_PATH} ${GRADLE_PATH} +ENV PATH=${PATH}:${MAVEN_BIN}:${GRADLE_BIN}:${KTC_BIN}:${KNPL_BIN} + +################################################################## +# Maven +################################################################## +ENV MAVEN_HOME=${MAVEN_ROOT} +ENV M2_HOME=${MAVEN_ROOT} + +ADD ${MAVEN_LINK} /tmp +RUN 7zz x ${MAVEN_TEMP} -o${MAVEN_ROOT} +RUN chmod +x -R ${MAVEN_BIN} +RUN mvn -v + +################################################################## +# GRADLE +################################################################## +ADD ${GRADLE_LINK} /tmp +RUN 7zz x ${GRADLE_TEMP} -o${GRADLE_ROOT} +RUN chmod +x -R ${GRADLE_BIN} +RUN gradle -v + +################################################################## +# kotlin-compiler +################################################################## +ADD ${KTC_LINK} /tmp +RUN 7zz x ${KTC_TEMP} -o${KTC_ROOT} +RUN chmod +x -R ${KTC_BIN} +RUN kotlin -version + +################################################################## +# kotlin-native-prebuilt-linux +################################################################## +ADD ${KNPL_LINK} /tmp +RUN tar -xzf ${KNPL_TEMP} --directory ${KTC_ROOT} +RUN chmod +x -R ${KNPL_BIN} + +################################################################## +# Cleanup +################################################################## +RUN echo "clean up" && \ + apt-get clean -y && \ + apt-get autoclean -y && \ + rm -rfv /var/lib/apt/lists/* && \ + rm -rfv /var/cache/apt/archives/*.deb && \ + rm -rfv /root/tmp/* && \ + rm -rfv /tmp/* + +RUN updatedb diff --git a/linux/ecosystem/epicmorg/debian/sid/jdk/jdk24/Makefile b/linux/ecosystem/epicmorg/debian/sid/jdk/jdk24/Makefile new file mode 100644 index 000000000..1e4371492 --- /dev/null +++ b/linux/ecosystem/epicmorg/debian/sid/jdk/jdk24/Makefile @@ -0,0 +1,44 @@ +all: app + +app: + make pip + make build + make deploy + make clean + +build: + make build-buildah + +deploy: + make deploy-buildah + +build-buildah: + buildah-wrapper --build + +deploy-buildah: + buildah-wrapper --deploy + +build-kaniko: + kaniko-wrapper --kaniko-image gcr.io/kaniko-project/executor:debug --dry-run + +deploy-kaniko: + kaniko-wrapper --deploy --kaniko-image gcr.io/kaniko-project/executor:debug + +build-compose: + docker-compose build --compress --parallel --progress plain + +deploy-compose: + docker-compose push + +clean: + docker container prune -f + docker image prune -f + docker network prune -f + docker volume prune -f + docker system prune -af + buildah rm -a + buildah rmi -a + +pip: + pip3 install --break-system-packages --no-cache-dir kaniko-wrapper buildah-wrapper + pip install --break-system-packages --no-cache-dir kaniko-wrapper buildah-wrapper \ No newline at end of file diff --git a/linux/ecosystem/epicmorg/debian/sid/jdk/jdk24/docker-compose.yml b/linux/ecosystem/epicmorg/debian/sid/jdk/jdk24/docker-compose.yml new file mode 100644 index 000000000..d93445b07 --- /dev/null +++ b/linux/ecosystem/epicmorg/debian/sid/jdk/jdk24/docker-compose.yml @@ -0,0 +1,10 @@ +services: + app: + image: "epicmorg/debian:sid-jdk24" + build: + context: . + app-develop: + image: "epicmorg/debian:sid-develop-jdk24" + build: + context: . + dockerfile: ./Dockerfile.develop