diff options
author | so1ar | 2022-01-23 00:24:38 +0800 |
---|---|---|
committer | so1ar | 2022-01-23 00:24:38 +0800 |
commit | a7bf2f092b79efd0f0f919ff7fc019d9d014dd7a (patch) | |
tree | ad7defc3ce3cb51f4fc45e2d0187eb9862506425 | |
download | aur-a7bf2f092b79efd0f0f919ff7fc019d9d014dd7a.tar.gz |
init
-rw-r--r-- | .SRCINFO | 36 | ||||
-rw-r--r-- | PKGBUILD | 96 | ||||
-rw-r--r-- | craft_table.png | bin | 0 -> 12058 bytes | |||
-rwxr-xr-x | hmcl-launch-script | 9 | ||||
-rw-r--r-- | hmcl-zulu-bin.install | 50 | ||||
-rw-r--r-- | hmcl.desktop | 11 |
6 files changed, 202 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..9f186c72440e --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,36 @@ +pkgbase = hmcl-zulu-bin + pkgdesc = Hello Minecraft Launcher, with zulu openjdk included. + pkgver = 3.5.2.216.zulu.17.0.2 + pkgrel = 1 + url = https://github.com/huanghongxun/HMCL + install = hmcl-zulu-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 + provides = jre-openjdk=17 + provides = hmcl + conflicts = hmcl + conflicts = zulu-jre-fx-bin + noextract = hmcl-zulu-bin-3.5.2.216.zulu.17.0.2-1.jar + source = hmcl.desktop + source = hmcl-launch-script + source = craft_table.png + source = LICENSE::https://raw.githubusercontent.com/huanghongxun/HMCL/javafx/LICENSE + source = hmcl-zulu-bin-3.5.2.216.zulu.17.0.2-1.jar::https://github.com/huanghongxun/HMCL/releases/download/v3.5.2.216/HMCL-3.5.2.216.jar + source = https://cdn.azul.com/zulu/bin/zulu17.32.13-ca-fx-jre17.0.2-linux_x64.tar.gz + source = hmcl-zulu-bin.install + sha256sums = 8f12b377b03124612da0127a95a6148bbc3e58894932d50408f4d3d179f0b9fb + sha256sums = 5f53d37fef37aa654e474a073f2457601c5fc607ba836f7b1404c89a07b196a3 + sha256sums = 2989a1b5301b8c7b9afdae5696c6a4e5246afa2d4f1f3d3dad5c192f036a9b4c + sha256sums = 3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb36986 + sha256sums = 7f2840476c8cbbc55a7dd2eb87e830672e3c375c67cfd92206c87dca5cb9ebe0 + sha256sums = 7e38850b05d89669a61b51f9df83674ac48e3f87839d6b702cb48f590b985497 + sha256sums = b8d220e15b774407d9602d1e40dc896ecd9df26a3ff23a649367b5b566c7f930 + +pkgname = hmcl-zulu-bin diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..a1b6466d2a7a --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,96 @@ +# Contributor: Sam Guymer <sam at guymer dot me> +# Maintainer: so1ar <so1ar114514@gmail.com> + +_java_ver=17 +_jdkname="zulu-jre-fx" +_zulu_build="${_java_ver}.32.13-ca" +_hmcl_ver=3.5.2 +_hmcl_build=216 +_jdk_ver=${_java_ver}.0.2 +pkgname=hmcl-zulu-bin +pkgver=${_hmcl_ver}.${_hmcl_build}.zulu.${_jdk_ver} +pkgrel=1 +pkgdesc="Hello Minecraft Launcher, with zulu openjdk included." +arch=('x86_64') +url='https://github.com/huanghongxun/HMCL' +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" + "jre-openjdk=$_java_ver" + "hmcl" +) +conflicts=('hmcl' 'zulu-jre-fx-bin') + +install="$pkgname.install" +_tarballname="zulu${_zulu_build}-fx-jre${_jdk_ver}-linux_x64" +source=("hmcl.desktop" + "hmcl-launch-script" + "craft_table.png" + "LICENSE::https://raw.githubusercontent.com/huanghongxun/HMCL/javafx/LICENSE" + "${pkgname}-${pkgver}-${pkgrel}.jar::https://github.com/huanghongxun/HMCL/releases/download/v${_hmcl_ver}.${_hmcl_build}/HMCL-${_hmcl_ver}.${_hmcl_build}.jar" + "https://cdn.azul.com/zulu/bin/${_tarballname}.tar.gz" + "hmcl-zulu-bin.install") + +sha256sums=('8f12b377b03124612da0127a95a6148bbc3e58894932d50408f4d3d179f0b9fb' + '5f53d37fef37aa654e474a073f2457601c5fc607ba836f7b1404c89a07b196a3' + '2989a1b5301b8c7b9afdae5696c6a4e5246afa2d4f1f3d3dad5c192f036a9b4c' + '3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb36986' + '7f2840476c8cbbc55a7dd2eb87e830672e3c375c67cfd92206c87dca5cb9ebe0' + '7e38850b05d89669a61b51f9df83674ac48e3f87839d6b702cb48f590b985497' + 'b8d220e15b774407d9602d1e40dc896ecd9df26a3ff23a649367b5b566c7f930') + +noextract=("${pkgname}-${pkgver}-${pkgrel}.jar") + + +_jvmdir="/usr/lib/jvm/${_jdkname}" + +package() { + # launcher + install -Dm755 "hmcl-launch-script" "${pkgdir}/usr/bin/${pkgname}" + install -Dm644 "hmcl.desktop" "${pkgdir}/usr/share/applications/${pkgname}.desktop" + install -Dm644 "${pkgname}-${pkgver}-${pkgrel}.jar" "${pkgdir}/usr/share/java/${pkgname}/${pkgname}.jar" + install -Dm644 "craft_table.png" "${pkgdir}/usr/share/icons/hicolor/48x48/apps/${pkgname}.png" + install -Dm644 "LICENSE" "$pkgdir"/usr/share/licenses/$pkgname/LICENSE + + # jdk + 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/craft_table.png b/craft_table.png Binary files differnew file mode 100644 index 000000000000..45740510a49e --- /dev/null +++ b/craft_table.png diff --git a/hmcl-launch-script b/hmcl-launch-script new file mode 100755 index 000000000000..232947f660ed --- /dev/null +++ b/hmcl-launch-script @@ -0,0 +1,9 @@ +#!/bin/sh + +if [[ "$1" != "-p" ]]; then + WORKDIR=${XDG_CONFIG_HOME:-$HOME/.config}/hmcl + mkdir -p $WORKDIR + cd $WORKDIR +fi + +exec /usr/lib/jvm/zulu-jre-fx/bin/java -jar "/usr/share/java/hmcl-zulu-bin/hmcl-zulu-bin.jar" "$@" diff --git a/hmcl-zulu-bin.install b/hmcl-zulu-bin.install new file mode 100644 index 000000000000..6fa8cc65efb8 --- /dev/null +++ b/hmcl-zulu-bin.install @@ -0,0 +1,50 @@ +THIS_JDK='zulu-jre-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 +} diff --git a/hmcl.desktop b/hmcl.desktop new file mode 100644 index 000000000000..dcc50782251a --- /dev/null +++ b/hmcl.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Version=1.0 +Type=Application +Name=HMCL +Comment=Hello Minecraft! Launcher, a powerful Minecraft launcher. +Exec=hmcl-zulu-bin +Icon=hmcl-zulu-bin +Terminal=false +StartupNotify=false +Categories=Game; +StartupWMClass=org.jackhuang.hmcl.Launcher |