diff -Nru adoptopenjdk-11-jre-openj9-installer-202001231459~11.0.6b10~focal/debian/adoptopenjdk-11-jre-openj9-installer.postinst.amd64 adoptopenjdk-11-jre-openj9-installer-202007160913~11.0.8b10~focal/debian/adoptopenjdk-11-jre-openj9-installer.postinst.amd64 --- adoptopenjdk-11-jre-openj9-installer-202001231459~11.0.6b10~focal/debian/adoptopenjdk-11-jre-openj9-installer.postinst.amd64 2020-01-23 14:59:02.000000000 +0000 +++ adoptopenjdk-11-jre-openj9-installer-202007160913~11.0.8b10~focal/debian/adoptopenjdk-11-jre-openj9-installer.postinst.amd64 2020-07-16 09:13:43.000000000 +0000 @@ -9,9 +9,9 @@ exit 1 } -FILENAME_TAR_GZ="OpenJDK11U-jre_x64_linux_openj9_11.0.6_10_openj9-0.18.1.tar.gz" -DOWNLOAD_TAR_GZ_URL="https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.6%2B10_openj9-0.18.1/OpenJDK11U-jre_x64_linux_openj9_11.0.6_10_openj9-0.18.1.tar.gz" -SHA256SUM_TGZ="056e4b5f7166f5daa44f36b06c735913bda52831d2e77fa2ac371505c66d10c1" +FILENAME_TAR_GZ="OpenJDK11U-jre_x64_linux_openj9_11.0.8_10_openj9-0.21.0.tar.gz" +DOWNLOAD_TAR_GZ_URL="https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.8%2B10_openj9-0.21.0/OpenJDK11U-jre_x64_linux_openj9_11.0.8_10_openj9-0.21.0.tar.gz" +SHA256SUM_TGZ="7cc4b24e2ac0ed26bf3ec31241bde65b672952bf0df5e1606b263fadcb21b3b7" # @TODO: maybe remove J_ID J_ID=adoptopenjdk-11-jre-openj9 INSTALLER_DIR=/var/cache/adoptopenjdk-11-jre-openj9-installer diff -Nru adoptopenjdk-11-jre-openj9-installer-202001231459~11.0.6b10~focal/debian/adoptopenjdk-11-jre-openj9-installer.postinst.arm64 adoptopenjdk-11-jre-openj9-installer-202007160913~11.0.8b10~focal/debian/adoptopenjdk-11-jre-openj9-installer.postinst.arm64 --- adoptopenjdk-11-jre-openj9-installer-202001231459~11.0.6b10~focal/debian/adoptopenjdk-11-jre-openj9-installer.postinst.arm64 1970-01-01 00:00:00.000000000 +0000 +++ adoptopenjdk-11-jre-openj9-installer-202007160913~11.0.8b10~focal/debian/adoptopenjdk-11-jre-openj9-installer.postinst.arm64 2020-07-16 09:13:43.000000000 +0000 @@ -0,0 +1,215 @@ +#!/bin/bash + +set -e +#set -x + +fp_exit_with_error() { + echo "" 1>&2 + echo "AdoptOpenJDK JRE 11 with OpenJ9 is NOT installed: $@" 1>&2 + exit 1 +} + +FILENAME_TAR_GZ="OpenJDK11U-jre_aarch64_linux_openj9_11.0.8_10_openj9-0.21.0.tar.gz" +DOWNLOAD_TAR_GZ_URL="https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.8%2B10_openj9-0.21.0/OpenJDK11U-jre_aarch64_linux_openj9_11.0.8_10_openj9-0.21.0.tar.gz" +SHA256SUM_TGZ="9771cd3e486697c5b7188ea81d1c32ad89cb007499fe8e1173ca491412b5d503" +# @TODO: maybe remove J_ID +J_ID=adoptopenjdk-11-jre-openj9 +INSTALLER_DIR=/var/cache/adoptopenjdk-11-jre-openj9-installer + +PRIORITY=1081 # The priority for the alternatives. +JINFO_MANIFEST_FILE=/usr/lib/jvm/.adoptopenjdk-11-jre-openj9.jinfo +J_INSTALL_DIR=/usr/lib/jvm/adoptopenjdk-11-jre-openj9 + +########Create dirs +mkdir -p ${INSTALLER_DIR} +mkdir -p /usr/lib/jvm +############# + + +# Download and unpack, either from existing local file or download. +cd ${INSTALLER_DIR} + +if [[ -f "${INSTALLER_DIR}/$FILENAME_TAR_GZ" ]]; then + echo "Installing from local file ${INSTALLER_DIR}/$FILENAME_TAR_GZ" +else + # no local file + echo "No local file detected, will download." + + # use apt proxy if configured. + APT_PROXIES=$(apt-config shell \ + http_proxy Acquire::http::Proxy \ + https_proxy Acquire::https::Proxy \ + ftp_proxy Acquire::ftp::Proxy \ + dl_direct Acquire::http::Proxy::github.com \ + dl_direct Acquire::http::Proxy::amazons3.com \ + ) + + if [[ -n "$APT_PROXIES" ]]; then + eval export $APT_PROXIES + fi + + if [[ "$dl_direct" = "DIRECT" ]]; then + unset http_proxy + unset https_proxy + unset ftp_proxy + fi + + # if $INSTALLER_DIR/wgetrc exists, use it for downloading. + # This allows for very specific edge cases to work. + if [[ -f ${INSTALLER_DIR}/wgetrc ]]; then + echo "Using wget settings from $INSTALLER_DIR/wgetrc" + else + echo "No $INSTALLER_DIR/wgetrc file found." + echo "Creating $INSTALLER_DIR/wgetrc with default values." + + # setting wget options + :> ${INSTALLER_DIR}/wgetrc + echo "noclobber = off" >> ${INSTALLER_DIR}/wgetrc + echo "dir_prefix = ." >> ${INSTALLER_DIR}/wgetrc + echo "dirstruct = off" >> ${INSTALLER_DIR}/wgetrc + echo "dot_style = giga" >> ${INSTALLER_DIR}/wgetrc + echo "tries = 5" >> ${INSTALLER_DIR}/wgetrc + fi + + # Now actually download the .tar.gz file. + echo "Downloading AdoptOpenJDK JRE 11 with OpenJ9..." + wget --config=$INSTALLER_DIR/wgetrc --local-encoding=UTF-8 --continue -O ${FILENAME_TAR_GZ} ${DOWNLOAD_TAR_GZ_URL} || fp_exit_with_error "download failed" + echo "Download done." +fi + +# verify SHA256 checksum of (copied or downloaded) tarball +echo -n "Checking SHA256 checksum: " +echo "$SHA256SUM_TGZ $FILENAME_TAR_GZ" | sha256sum -c > /dev/null 2>&1 || fp_exit_with_error "sha256sum mismatch $FILENAME_TAR_GZ" +echo "done, checksum $SHA256SUM_TGZ matched." + +# unpack. +echo -n "Unpacking: " +tar xzf ${FILENAME_TAR_GZ} || fp_exit_with_error "cannot unpack" +echo "done." + +J_DIR_INSIDE_TAR_GZ=$(find . -type d -maxdepth 1 | grep -v "^.$" | xargs) + +echo -n "Putting 'AdoptOpenJDK JRE 11 with OpenJ9' in place, from dir '${J_DIR_INSIDE_TAR_GZ}': " +# make it owned by root, OpenJDK sends it with uid 500 or something. +chown -R root:root ${J_DIR_INSIDE_TAR_GZ} + +# Copy JDK to the right dir +mv ${J_DIR_INSIDE_TAR_GZ} ${J_ID} +rm -rf ${J_INSTALL_DIR} +cp -rf ${J_ID} /usr/lib/jvm/ + +# Clean up +rm -rf ${J_ID} + +echo "done." + +echo "Cleaning outdated downloads..." +find ${INSTALLER_DIR} -maxdepth 1 -name '*.tar.gz' ! -name ${FILENAME_TAR_GZ} -type f -print +find ${INSTALLER_DIR} -maxdepth 1 -name '*.tar.gz' ! -name ${FILENAME_TAR_GZ} -type f -delete + +# Gzips the man pages, if the directory exists. +if [[ -d ${J_INSTALL_DIR}/man/man1 ]]; then + gzip -9 ${J_INSTALL_DIR}/man/man1/*.1 || { echo "Could not find man pages even though dir exists!" 1>&2 ; } +fi + +# create .jinfo file header, for update-java-alternatives. +cat << EOD > ${JINFO_MANIFEST_FILE} +name=${J_ID} +alias=${J_ID} +priority=${PRIORITY} +section=java +EOD + +HAS_JAVA_BIN=false +# Here we start from the binaries, and look for the man pages. +# create alternatives for the jre binaries. +# also add them to the .jinfo manifest for easy switching. +if [ -d ${J_INSTALL_DIR}/jre/bin ]; then # only jdk8 has this, so skip if not + for f in ${J_INSTALL_DIR}/jre/bin/*; do + name=`basename ${f}`; + if [[ -f "$J_INSTALL_DIR/man/man1/$name.1.gz" ]]; then + # man page available, install as a slave of the tool + update-alternatives --install /usr/bin/${name} ${name} ${J_INSTALL_DIR}/jre/bin/${name} ${PRIORITY} --slave /usr/share/man/man1/${name}.1.gz ${name}.1.gz ${J_INSTALL_DIR}/man/man1/${name}.1.gz + else + # no man page available for this specific tool + update-alternatives --install /usr/bin/${name} ${name} ${J_INSTALL_DIR}/jre/bin/${name} ${PRIORITY} + fi + echo "jre $name $J_INSTALL_DIR/jre/bin/$name" >> ${JINFO_MANIFEST_FILE} + [[ "a$name" == "ajava" ]] && HAS_JAVA_BIN=true + done +fi + +if [ -d ${J_INSTALL_DIR}/bin ]; then # only jdk8 has this, so skip if not + for f in ${J_INSTALL_DIR}/bin/*; do + name=`basename ${f}`; + if [[ -f "$J_INSTALL_DIR/man/man1/$name.1.gz" ]]; then + # man page available, install as a slave of the tool + update-alternatives --install /usr/bin/${name} ${name} ${J_INSTALL_DIR}/bin/${name} ${PRIORITY} --slave /usr/share/man/man1/${name}.1.gz ${name}.1.gz ${J_INSTALL_DIR}/man/man1/${name}.1.gz + else + # no man page available for this specific tool + update-alternatives --install /usr/bin/${name} ${name} ${J_INSTALL_DIR}/bin/${name} ${PRIORITY} + fi + echo "jre $name $J_INSTALL_DIR/bin/$name" >> ${JINFO_MANIFEST_FILE} + [[ "a$name" == "ajava" ]] && HAS_JAVA_BIN=true + done +fi + + +# For the non-JRE tools, we actually start from the man pages. +if [[ -d ${J_INSTALL_DIR}/man/man1 ]]; then + for f in ${J_INSTALL_DIR}/man/man1/*; do + name=`basename ${f} .1.gz`; + #don't link already linked JRE files + if [[ ! -e ${J_INSTALL_DIR}/jre/bin/${name} ]]; then + if [[ ! -e ${J_INSTALL_DIR}/bin/${name} ]]; then + echo "** Missing executable ${J_INSTALL_DIR}/bin/${name} even though man page ${f} exists." 1>&2 + echo "** This is probably a bug in AdoptOpenJDK and should be reported upstream." 1>&2 + else + update-alternatives --install /usr/bin/${name} ${name} ${J_INSTALL_DIR}/bin/${name} ${PRIORITY} --slave /usr/share/man/man1/${name}.1.gz ${name}.1.gz ${J_INSTALL_DIR}/man/man1/${name}.1.gz + echo "jdk $name $J_INSTALL_DIR/bin/$name" >> ${JINFO_MANIFEST_FILE} + [[ "a$name" == "ajava" ]] && HAS_JAVA_BIN=true + fi + fi + done +fi + +if [[ "$HAS_JAVA_BIN" != "true" ]]; then + echo "Package failed to install a 'java' alternative. This is probably a bug in the installer, or upstream." 1>&2 + ls -laR ${J_INSTALL_DIR} 1>&2 + exit 3 +fi + +# Place security config files in /etc so they are not overwritten on upgrade. +# @TODO: pardini: I am not sure this is a good idea; new JDK versions can bring updated files? + +mkdir -p /etc/${J_ID}/security +for configfile in blacklist blacklisted.certs java.policy java.security trusted.libraries +do + if [ ! -e /etc/${J_ID}/security/${configfile} ] && [ -e $J_INSTALL_DIR/jre/lib/security/${configfile} ]; then + mv ${J_INSTALL_DIR}/jre/lib/security/${configfile} /etc/${J_ID}/security/ + else + rm -f ${J_INSTALL_DIR}/jre/lib/security/${configfile} + fi +done + +for configfile in blacklist blacklisted.certs java.policy java.security trusted.libraries +do + if [ ! -e ${J_INSTALL_DIR}/jre/lib/security/${configfile} ] && [ -e /etc/${J_ID}/security/${configfile} ]; then + ln -s /etc/${J_ID}/security/${configfile} ${J_INSTALL_DIR}/jre/lib/security/ + fi +done + +cat << 'EOD' + _ _ _ ___ _ ____ _ __ + / \ __| | ___ _ __ | |_ / _ \ _ __ ___ _ __ | | _ \| |/ / + / _ \ / _` |/ _ \| '_ \| __| | | | '_ \ / _ \ '_ \ _ | | | | | ' / + / ___ \ (_| | (_) | |_) | |_| |_| | |_) | __/ | | | |_| | |_| | . \ +/_/ \_\__,_|\___/| .__/ \__|\___/| .__/ \___|_| |_|\___/|____/|_|\_\ + |_| |_| +EOD + +echo "AdoptOpenJDK JRE 11 with OpenJ9 installed" +echo "To set AdoptOpenJDK JRE 11 with OpenJ9 as default, install the \"adoptopenjdk-11-jre-openj9-set-default\" package." + +#DEBHELPER# + diff -Nru adoptopenjdk-11-jre-openj9-installer-202001231459~11.0.6b10~focal/debian/adoptopenjdk-11-jre-openj9-installer.postinst.ppc64el adoptopenjdk-11-jre-openj9-installer-202007160913~11.0.8b10~focal/debian/adoptopenjdk-11-jre-openj9-installer.postinst.ppc64el --- adoptopenjdk-11-jre-openj9-installer-202001231459~11.0.6b10~focal/debian/adoptopenjdk-11-jre-openj9-installer.postinst.ppc64el 2020-01-23 14:59:02.000000000 +0000 +++ adoptopenjdk-11-jre-openj9-installer-202007160913~11.0.8b10~focal/debian/adoptopenjdk-11-jre-openj9-installer.postinst.ppc64el 2020-07-16 09:13:43.000000000 +0000 @@ -9,9 +9,9 @@ exit 1 } -FILENAME_TAR_GZ="OpenJDK11U-jre_ppc64le_linux_openj9_11.0.6_10_openj9-0.18.1.tar.gz" -DOWNLOAD_TAR_GZ_URL="https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.6%2B10_openj9-0.18.1/OpenJDK11U-jre_ppc64le_linux_openj9_11.0.6_10_openj9-0.18.1.tar.gz" -SHA256SUM_TGZ="47c3e176cc3f32e0ab7eeb51a00d4f634192379657fe223fe23366e004a2aedb" +FILENAME_TAR_GZ="OpenJDK11U-jre_ppc64le_linux_openj9_11.0.8_10_openj9-0.21.0.tar.gz" +DOWNLOAD_TAR_GZ_URL="https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.8%2B10_openj9-0.21.0/OpenJDK11U-jre_ppc64le_linux_openj9_11.0.8_10_openj9-0.21.0.tar.gz" +SHA256SUM_TGZ="2d65c778d9b0116baa832f8c238470052e3c9eca930eeec8a717de1bb8454828" # @TODO: maybe remove J_ID J_ID=adoptopenjdk-11-jre-openj9 INSTALLER_DIR=/var/cache/adoptopenjdk-11-jre-openj9-installer diff -Nru adoptopenjdk-11-jre-openj9-installer-202001231459~11.0.6b10~focal/debian/adoptopenjdk-11-jre-openj9-installer.postinst.s390x adoptopenjdk-11-jre-openj9-installer-202007160913~11.0.8b10~focal/debian/adoptopenjdk-11-jre-openj9-installer.postinst.s390x --- adoptopenjdk-11-jre-openj9-installer-202001231459~11.0.6b10~focal/debian/adoptopenjdk-11-jre-openj9-installer.postinst.s390x 2020-01-23 14:59:02.000000000 +0000 +++ adoptopenjdk-11-jre-openj9-installer-202007160913~11.0.8b10~focal/debian/adoptopenjdk-11-jre-openj9-installer.postinst.s390x 2020-07-16 09:13:43.000000000 +0000 @@ -9,9 +9,9 @@ exit 1 } -FILENAME_TAR_GZ="OpenJDK11U-jre_s390x_linux_openj9_11.0.6_10_openj9-0.18.1.tar.gz" -DOWNLOAD_TAR_GZ_URL="https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.6%2B10_openj9-0.18.1/OpenJDK11U-jre_s390x_linux_openj9_11.0.6_10_openj9-0.18.1.tar.gz" -SHA256SUM_TGZ="74b08517185fd6b77ffc2f26e5673a4d5cdd9c726ba3ac0c7dbddaf2cd5b32de" +FILENAME_TAR_GZ="OpenJDK11U-jre_s390x_linux_openj9_11.0.8_10_openj9-0.21.0.tar.gz" +DOWNLOAD_TAR_GZ_URL="https://github.com/AdoptOpenJDK/openjdk11-binaries/releases/download/jdk-11.0.8%2B10_openj9-0.21.0/OpenJDK11U-jre_s390x_linux_openj9_11.0.8_10_openj9-0.21.0.tar.gz" +SHA256SUM_TGZ="4e44051683689efe25e00181bc09525aa378aea85e2ab03ab114c942c0abc999" # @TODO: maybe remove J_ID J_ID=adoptopenjdk-11-jre-openj9 INSTALLER_DIR=/var/cache/adoptopenjdk-11-jre-openj9-installer diff -Nru adoptopenjdk-11-jre-openj9-installer-202001231459~11.0.6b10~focal/debian/changelog adoptopenjdk-11-jre-openj9-installer-202007160913~11.0.8b10~focal/debian/changelog --- adoptopenjdk-11-jre-openj9-installer-202001231459~11.0.6b10~focal/debian/changelog 2020-01-23 14:59:02.000000000 +0000 +++ adoptopenjdk-11-jre-openj9-installer-202007160913~11.0.8b10~focal/debian/changelog 2020-07-16 09:13:43.000000000 +0000 @@ -1,9 +1,10 @@ -adoptopenjdk-11-jre-openj9-installer (202001231459~11.0.6b10~focal) focal; urgency=medium +adoptopenjdk-11-jre-openj9-installer (202007160913~11.0.8b10~focal) focal; urgency=medium * Installer for AdoptOpenJDK JRE 11 with OpenJ9 - * JRE 11 composed version 202001231459~11.0.6b10~focal. - * Exact version for architecture amd64: jdk-11.0.6+10_openj9-0.18.1 - * Exact version for architecture s390x: jdk-11.0.6+10_openj9-0.18.1 - * Exact version for architecture ppc64el: jdk-11.0.6+10_openj9-0.18.1 + * JRE 11 composed version 202007160913~11.0.8b10~focal. + * Exact version for architecture arm64: jdk-11.0.8+10_openj9-0.21.0 + * Exact version for architecture amd64: jdk-11.0.8+10_openj9-0.21.0 + * Exact version for architecture s390x: jdk-11.0.8+10_openj9-0.21.0 + * Exact version for architecture ppc64el: jdk-11.0.8+10_openj9-0.21.0 - -- Ricardo Pardini (Pardini Yubi 2017) Thu, 23 Jan 2020 14:59:02 +0000 + -- Ricardo Pardini (Pardini Yubi 2017) Thu, 16 Jul 2020 09:13:43 +0000 diff -Nru adoptopenjdk-11-jre-openj9-installer-202001231459~11.0.6b10~focal/debian/control adoptopenjdk-11-jre-openj9-installer-202007160913~11.0.8b10~focal/debian/control --- adoptopenjdk-11-jre-openj9-installer-202001231459~11.0.6b10~focal/debian/control 2020-01-23 14:59:02.000000000 +0000 +++ adoptopenjdk-11-jre-openj9-installer-202007160913~11.0.8b10~focal/debian/control 2020-07-16 09:13:43.000000000 +0000 @@ -8,7 +8,7 @@ Package: adoptopenjdk-11-jre-openj9-installer Section: java -Architecture: amd64 s390x ppc64el +Architecture: arm64 amd64 s390x ppc64el Pre-Depends: wget, ca-certificates, bash (>= 4.0) Depends: java-common (>= 0.24), locales, libxrender1, libxtst6, libxi6, libfontconfig1, libasound2, ${misc:Depends} Recommends: fonts-dejavu-extra @@ -23,7 +23,7 @@ Package: adoptopenjdk-11-jre-openj9-set-default Section: java -Architecture: amd64 s390x ppc64el +Architecture: arm64 amd64 s390x ppc64el Pre-Depends: adoptopenjdk-11-jre-openj9-installer(= ${binary:Version}) Depends: ${misc:Depends} Provides: adoptopenjdk-default @@ -35,7 +35,7 @@ #Package: adoptopenjdk-11-installer #Section: java -#Architecture: amd64 s390x ppc64el +#Architecture: arm64 amd64 s390x ppc64el #Depends: adoptopenjdk-11-jre-openj9-installer(= ${binary:Version}), ${misc:Depends} #Recommends: adoptopenjdk-11-jre-openj9-set-default(= ${binary:Version}) #Description: Virtual package for AdoptOpenJDK JRE 11 with OpenJ9