diff options
author | Sam Guymer | 2020-01-18 19:44:14 +0000 |
---|---|---|
committer | Sam Guymer | 2020-01-18 19:47:12 +0000 |
commit | dbcef6a7e3e18040fde74a9b9ee486a439bcc896 (patch) | |
tree | 09a1d7e0984099fa1c83f4075d88222bc4deafef | |
download | aur-dbcef6a7e3e18040fde74a9b9ee486a439bcc896.tar.gz |
Initial commit
-rw-r--r-- | .SRCINFO | 25 | ||||
-rw-r--r-- | .gitignore | 6 | ||||
-rw-r--r-- | PKGBUILD | 90 | ||||
-rw-r--r-- | zulu-8-bin.install | 50 |
4 files changed, 171 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..e42fdac56cba --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,25 @@ +pkgbase = zulu-8-bin + pkgdesc = Zulu Community builds of OpenJDK are fully certified and 100% open source Java Development Kits (JDKs) for all Java development and production workloads. + pkgver = 8.0.242 + pkgrel = 1 + url = https://www.azul.com/products/zulu-community/ + install = zulu-8-bin.install + arch = x86_64 + license = custom + depends = java-environment-common + depends = java-runtime-common + depends = ca-certificates-utils + depends = nss + depends = xdg-utils + depends = hicolor-icon-theme + provides = java-environment=8 + provides = java-environment-openjdk=8 + provides = java-runtime-headless=8 + provides = java-runtime-headless-openjdk=8 + provides = java-runtime=8 + provides = java-runtime-openjdk=8 + source = https://cdn.azul.com/zulu/bin/zulu8.44.0.9-ca-jdk8.0.242-linux_x64.tar.gz + sha256sums = 7731f08723cac4ad3d5e2fab4e80b275577ecf07a174033fdda5fc8bdaddaeea + +pkgname = zulu-8-bin + diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000000..43fae32db538 --- /dev/null +++ b/.gitignore @@ -0,0 +1,6 @@ +/*.tar.gz +/*.pkg.tar +/*.pkg.tar.xz + +/src/ +/pkg/ diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..40e61346a470 --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,90 @@ +# Maintainer: Sam Guymer <sam at guymer dot me> + +_jdkname=zulu-8 +pkgname="${_jdkname}-bin" +_java_ver=8 +_zulu_build=8.44.0.9-ca +pkgver=8.0.242 +pkgrel=1 +pkgdesc='Zulu Community builds of OpenJDK are fully certified and 100% open source Java Development Kits (JDKs) for all Java development and production workloads.' +arch=('x86_64') +url='https://www.azul.com/products/zulu-community/' +license=('custom') +depends=( + 'java-environment-common' 'java-runtime-common' 'ca-certificates-utils' + # not 100% sure if all of these dependencies are needed + # dependencies from jre8-openjdk-headless + 'nss' + # dependencies from jre8-openjdk + 'xdg-utils' 'hicolor-icon-theme' +) +provides=( + "java-environment=$_java_ver" + "java-environment-openjdk=$_java_ver" + "java-runtime-headless=$_java_ver" + "java-runtime-headless-openjdk=$_java_ver" + "java-runtime=$_java_ver" + "java-runtime-openjdk=$_java_ver" +) +install="$pkgname.install" +_tarballname="zulu${_zulu_build}-jdk${pkgver}-linux_x64" +source=("https://cdn.azul.com/zulu/bin/${_tarballname}.tar.gz") +sha256sums=('7731f08723cac4ad3d5e2fab4e80b275577ecf07a174033fdda5fc8bdaddaeea') + +_jvmdir="/usr/lib/jvm/${_jdkname}" + +# Upstream config files that should go to etc and get backup +_conf_files=( + amd64/jvm.cfg + calendars.properties + content-types.properties + flavormap.properties + images/cursors/cursors.properties + logging.properties + management/jmxremote.access + management/jmxremote.password + management/management.properties + management/snmp.acl + net.properties + psfont.properties.ja + psfontj2d.properties + security/java.policy + security/java.security + sound.properties +) + +package() { + cd "$srcdir/${_tarballname}" + + install -dm 755 "${pkgdir}/${_jvmdir}" + cp -a . "${pkgdir}/${_jvmdir}/" + + # copied from java8-openjdk + + # Set config files + mv "${pkgdir}${_jvmdir}"/jre/lib/management/jmxremote.password{.template,} + mv "${pkgdir}${_jvmdir}"/jre/lib/management/snmp.acl{.template,} + + # Conf + install -dm 755 "${pkgdir}/etc/${_jdkname}" + for f in "${_conf_files[@]}"; do + _file="${_jvmdir}/jre/lib/$f" + install -D -m 644 "${pkgdir}${_file}" "${pkgdir}/etc/${_jdkname}/$f" + ln -sf "/etc/${_jdkname}/$f" "${pkgdir}${_file}" + done + + # Install license + install -d -m 755 "${pkgdir}/usr/share/licenses/${pkgbase}/" + install -m 644 ASSEMBLY_EXCEPTION LICENSE THIRD_PARTY_README "${pkgdir}/usr/share/licenses/${pkgbase}" + + # Man pages + for f in man/man1/* man/ja/man1/*; do + install -Dm 644 "${f}" "${pkgdir}/usr/share/${f/\.1/-zulu-8.1}" + done + rm -rf "${pkgdir}/${_jvmdir}/man" + ln -s /usr/share/man "${pkgdir}/${_jvmdir}/man" + + # Link JKS keystore from ca-certificates-utils + rm -f "${pkgdir}${_jvmdir}/jre/lib/security/cacerts" + ln -sf /etc/ssl/certs/java/cacerts "${pkgdir}${_jvmdir}/jre/lib/security/cacerts" +} diff --git a/zulu-8-bin.install b/zulu-8-bin.install new file mode 100644 index 000000000000..4fb0fd3ca8b2 --- /dev/null +++ b/zulu-8-bin.install @@ -0,0 +1,50 @@ +THIS_JDK='zulu-8' + +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 + "" | ${THIS_JDK}/jre) + /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}" -o "x${default}" = "x${THIS_JDK}/jre" ]; 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 + /usr/bin/archlinux-java unset + if [ -x /usr/lib/jvm/${THIS_JDK}/jre/bin/java ]; then + /usr/bin/archlinux-java set ${THIS_JDK}/jre + fi + fi +} |