summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorManuel Díaz2021-11-03 12:47:50 -0600
committerManuel Díaz2021-11-03 12:47:50 -0600
commit95211b4284cccebe11504f017e96da72b1288c46 (patch)
treee51b441562335fe447d51a9a4f7e773c90069886
downloadaur-95211b4284cccebe11504f017e96da72b1288c46.tar.gz
Zulu JDK FX (Java 17)
-rw-r--r--.SRCINFO19
-rw-r--r--PKGBUILD66
-rw-r--r--zulu-jdk-fx-bin.install50
3 files changed, 135 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..2f82b542eaf8
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,19 @@
+pkgbase = zulu-jdk-fx-bin
+ pkgdesc = Azul Zulu builds of OpenJDK are open source, TCK-tested and certified builds of OpenJDK.
+ pkgver = 17.0.1
+ pkgrel = 1
+ url = https://www.azul.com/downloads/
+ install = zulu-jdk-fx-bin.install
+ arch = x86_64
+ license = custom
+ depends = java-runtime-common>=3
+ depends = ca-certificates-utils
+ provides = java-runtime-headless=17
+ provides = java-runtime-headless-openjdk=17
+ provides = java-runtime=17
+ provides = java-runtime-openjdk=17
+ provides = java-openjfx=17
+ source = https://cdn.azul.com/zulu/bin/zulu17.30.15-ca-fx-jdk17.0.1-linux_x64.tar.gz
+ sha256sums = 93c30f6d09140abef265f4c65223f18880eabfe6e4dcd873373e2b067a4b0001
+
+pkgname = zulu-jdk-fx-bin
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..00cb69007aad
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,66 @@
+# Contributor: Sam Guymer <sam at guymer dot me>
+# Contributor: so1ar <so1ar114514@gmail.com>
+# Maintainer: Macnolo0x7D4 <yosoymacnolo@gmail.com>
+
+_java_ver=17
+_jdkname="zulu-jdk-fx"
+_zulu_build="${_java_ver}.30.15-ca"
+pkgname="zulu-jdk-fx-bin"
+pkgver="${_java_ver}.0.1"
+pkgrel=1
+pkgdesc='Azul Zulu builds of OpenJDK are open source, TCK-tested and certified builds of OpenJDK.'
+arch=('x86_64')
+url='https://www.azul.com/downloads/'
+license=('custom')
+depends=(
+ 'java-runtime-common>=3'
+ 'ca-certificates-utils'
+)
+provides=(
+ "java-runtime-headless=$_java_ver"
+ "java-runtime-headless-openjdk=$_java_ver"
+ "java-runtime=$_java_ver"
+ "java-runtime-openjdk=$_java_ver"
+ "java-openjfx=$_java_ver"
+)
+install="$pkgname.install"
+_tarballname="zulu${_zulu_build}-fx-jdk${pkgver}-linux_x64"
+source=("https://cdn.azul.com/zulu/bin/${_tarballname}.tar.gz")
+sha256sums=('93c30f6d09140abef265f4c65223f18880eabfe6e4dcd873373e2b067a4b0001')
+
+_jvmdir="/usr/lib/jvm/${_jdkname}"
+
+package() {
+ cd "$srcdir/${_tarballname}"
+
+ install -dm 755 "${pkgdir}/${_jvmdir}"
+ cp -a . "${pkgdir}/${_jvmdir}/"
+
+ # based on java-openjdk package_jdk-openjdk
+ # https://github.com/archlinux/svntogit-packages/blob/3f6aa8ddd98f728a9b0701288a933d16f0e8bbaf/trunk/PKGBUILD
+
+ # Conf
+ install -dm 755 "${pkgdir}/etc"
+ cp -r conf "${pkgdir}/etc/${_jdkname}"
+ rm -r "${pkgdir}/${_jvmdir}/conf"
+ ln -s "/etc/${_jdkname}" "${pkgdir}/${_jvmdir}/conf"
+
+ # Legal
+ install -dm 755 "${pkgdir}/usr/share/licenses"
+ cp -r legal "${pkgdir}/usr/share/licenses/${_jdkname}"
+ rm -r "${pkgdir}/${_jvmdir}/legal"
+ ln -s "/usr/share/licenses/${_jdkname}" "${pkgdir}/${_jvmdir}/legal"
+
+# # Man pages
+# for f in bin/*; do
+# f=$(basename "${f}")
+# _man=man/man1/"${f}.1"
+# test -f "${_man}" && install -Dm 644 "${_man}" "${pkgdir}/usr/share/man/man1/${f}-${_jdkname}.1"
+# done
+# rm -r "${pkgdir}/${_jvmdir}/man"
+# ln -s /usr/share/man "${pkgdir}/${_jvmdir}/man"
+
+ # Link JKS keystore from ca-certificates-utils
+ rm -f "${pkgdir}/${_jvmdir}/lib/security/cacerts"
+ ln -sf /etc/ssl/certs/java/cacerts "${pkgdir}/${_jvmdir}/lib/security/cacerts"
+}
diff --git a/zulu-jdk-fx-bin.install b/zulu-jdk-fx-bin.install
new file mode 100644
index 000000000000..ab1bcaf29e2c
--- /dev/null
+++ b/zulu-jdk-fx-bin.install
@@ -0,0 +1,50 @@
+THIS_JDK='zulu-jdk-fx'
+
+fix_default() {
+ if [ ! -x /usr/bin/java ]; then
+ /usr/bin/archlinux-java unset
+ echo ""
+ else
+ /usr/bin/archlinux-java get
+ fi
+}
+
+post_install() {
+ default=$(fix_default)
+ case ${default} in
+ "")
+ /usr/bin/archlinux-java set ${THIS_JDK}
+ ;;
+ ${THIS_JDK})
+ # Nothing
+ ;;
+ *)
+ echo "Default Java environment is already set to '${default}'"
+ echo "See 'archlinux-java help' to change it"
+ ;;
+ esac
+
+ if [ ! -f /etc/ssl/certs/java/cacerts ]; then
+ /usr/bin/update-ca-trust
+ fi
+}
+
+post_upgrade() {
+ default=$(fix_default)
+ if [ -z "${default}" ]; then
+ /usr/bin/archlinux-java set ${THIS_JDK}
+ fi
+
+ if [ ! -f /etc/ssl/certs/java/cacerts ]; then
+ /usr/bin/update-ca-trust
+ fi
+}
+
+pre_remove() {
+ if [ "x$(fix_default)" = "x${THIS_JDK}" ]; then
+ # Check binary is still available
+ if [ -x /usr/lib/jvm/${THIS_JDK}/bin/java ]; then
+ /usr/bin/archlinux-java unset
+ fi
+ fi
+}