It's also possible to build Prismlauncher with modern Java versions by not having compatibility with the very old Forge versions. I don't think this compatibility is too important, but I can be very wrong here. Therefore I suggest using Gentoo's solution here too, i.e. patch the Java 7 target to Java 8 if the installed Java version requires it. (Obviously inform the user that the compatibility is removed, if this is done)
Search Criteria
Package Details: prismlauncher 8.3-1
Package Actions
Git Clone URL: | https://aur.archlinux.org/prismlauncher.git (read-only, click to copy) |
---|---|
Package Base: | prismlauncher |
Description: | Minecraft launcher with ability to manage multiple instances. |
Upstream URL: | https://prismlauncher.org |
Licenses: | GPL3 |
Submitter: | Scrumplex |
Maintainer: | Scrumplex (txtsd, g3tchoo) |
Last Packager: | g3tchoo |
Votes: | 152 |
Popularity: | 10.28 |
First Submitted: | 2022-10-18 06:42 (UTC) |
Last Updated: | 2024-04-23 18:37 (UTC) |
Dependencies (23)
- cmark (cmark-gitAUR)
- hicolor-icon-theme (hicolor-icon-theme-gitAUR)
- java-runtime (jre10AUR, jre12AUR, server-jreAUR, jdk10AUR, jdk10-openj9-binAUR, jdk7AUR, jre7AUR, amazon-corretto-16AUR, jdk8-graalvm-binAUR, jdk16-graalvm-binAUR, jdk16-adoptopenjdkAUR, jdk8-armAUR, liberica-jre-11-binAUR, jdk11-j9-binAUR, jre11-jbr-xdgAUR, jre16-openjdkAUR, jre14-openjdkAUR, amazon-corretto-18AUR, jre15AUR, jre14AUR, jre13AUR, jre16AUR, jre18-openjdkAUR, jdk-android-studioAUR, amazon-corretto-19-binAUR, jdk19-graalvm-binAUR, liberica-jre-11-full-binAUR, jdk19-graalvm-ee-binAUR, jdk13-openjdk-binAUR, liberica-jre-8-full-binAUR, jdk11-graalvm-binAUR, jre19-openjdkAUR, jre-openj9AUR, jdk11-graalvm-ee-binAUR, jre12-openjdkAUR, jdk11-dragonwell-standard-binAUR, jdk11-jetbrains-binAUR, jdk20-graalvm-binAUR, jdk17-graalvm-binAUR, jdk8-graalvm-ee-binAUR, amazon-corretto-20-binAUR, zulu-15-binAUR, jdk20-openj9-binAUR, zulu-13-binAUR, jdk8-dragonwell-extended-binAUR, jdk8-dragonwell-standard-binAUR, jdk11-dragonwell-extended-binAUR, jdk17-dragonwell-standard-binAUR, jdk20-graalvm-ee-binAUR, jre11AUR, jdk8-j9-binAUR, jdk7-j9-binAUR, jdk7r1-j9-binAUR, jdk8-dragonwell-extendedAUR, jre13-openjdkAUR, jre15-openjdkAUR, jdk21-graalvm-binAUR, liberica-jdk-17-full-binAUR, liberica-jdk-11-binAUR, liberica-jdk-11-full-binAUR, liberica-jdk-11-lite-binAUR, mandrel-binAUR, jdk17-openj9-binAUR, jdk8AUR, jre8AUR, jdk17-zulu-prime-binAUR, jdk-openj9-binAUR, jdk11-openj9-binAUR, jre17-jetbrainsAUR, jre-jetbrainsAUR, jre21-jetbrainsAUR, jre21-jetbrains-gitAUR, jre-openjdk-wakefieldAUR, jdk-openjdk-wakefieldAUR, jdk8-perfAUR, zulu-jdk-fx-binAUR, jdk8-openj9-binAUR, zulu-jre-fx-binAUR, jdk-temurinAUR, amazon-corretto-22-binAUR, jdk22-graalvm-binAUR, zing-8-binAUR, zing-21-binAUR, amazon-corretto-17AUR, amazon-corretto-21-binAUR, java-openjdk-binAUR, liberica-jdk-full-binAUR, liberica-jdk-21-full-binAUR, liberica-jdk-8-full-binAUR, zulu-21-binAUR, zulu-8-binAUR, zulu-11-binAUR, zulu-17-binAUR, jdk21-temurinAUR, jdk17-temurinAUR, jdk11-temurinAUR, amazon-corretto-8AUR, amazon-corretto-11AUR, jdk8-temurinAUR, jreAUR, jdkAUR, jre-ltsAUR, jre17AUR, microsoft-openjdk-11-binAUR, microsoft-openjdk-17-binAUR, microsoft-openjdk-21-binAUR, jdk17-graalvm-ee-binAUR, jdk21-graalvm-ee-binAUR, jdk22-graalvm-ee-binAUR, jdk21-jetbrains-binAUR, jdk17-jetbrains-binAUR, java-openjdk-ea-binAUR, jdk-openjdk, jdk11-openjdk, jdk17-openjdk, jdk21-openjdk, jre-openjdk, jre11-openjdk, jre17-openjdk, jre21-openjdk, jre8-openjdk)
- libgl (nvidia-340xx-utilsAUR, amdgpu-pro-oglpAUR, libglvnd-gitAUR, libglvnd)
- qt6-5compat
- qt6-base (qt6-base-gitAUR, qt6-base-headlessAUR)
- qt6-imageformats
- qt6-svg
- quazip-qt6
- tomlplusplus
- zlib (zlib-ng-compat-gitAUR, zlib-gitAUR, zlib-ng-compatAUR)
- cmake (cmake-gitAUR) (make)
- extra-cmake-modules (extra-cmake-modules-gitAUR) (make)
- gamemode (gamemode-gitAUR) (make)
- ghc-filesystem (make)
- git (git-gitAUR) (make)
- jdk17-openjdk (jdk17-temurinAUR) (make)
- scdoc (scdoc-gitAUR) (make)
- glfw (glfw-gitAUR, glfw-wayland-minecraftAUR, glfw-wayland-minecraft-libdecorationAUR, glfw-wayland-minecraft-cursorfixAUR) (optional) – to use system GLFW libraries
- java-runtime (jre10AUR, jre12AUR, server-jreAUR, jdk10AUR, jdk10-openj9-binAUR, jdk7AUR, jre7AUR, amazon-corretto-16AUR, jdk8-graalvm-binAUR, jdk16-graalvm-binAUR, jdk16-adoptopenjdkAUR, jdk8-armAUR, liberica-jre-11-binAUR, jdk11-j9-binAUR, jre11-jbr-xdgAUR, jre16-openjdkAUR, jre14-openjdkAUR, amazon-corretto-18AUR, jre15AUR, jre14AUR, jre13AUR, jre16AUR, jre18-openjdkAUR, jdk-android-studioAUR, amazon-corretto-19-binAUR, jdk19-graalvm-binAUR, liberica-jre-11-full-binAUR, jdk19-graalvm-ee-binAUR, jdk13-openjdk-binAUR, liberica-jre-8-full-binAUR, jdk11-graalvm-binAUR, jre19-openjdkAUR, jre-openj9AUR, jdk11-graalvm-ee-binAUR, jre12-openjdkAUR, jdk11-dragonwell-standard-binAUR, jdk11-jetbrains-binAUR, jdk20-graalvm-binAUR, jdk17-graalvm-binAUR, jdk8-graalvm-ee-binAUR, amazon-corretto-20-binAUR, zulu-15-binAUR, jdk20-openj9-binAUR, zulu-13-binAUR, jdk8-dragonwell-extended-binAUR, jdk8-dragonwell-standard-binAUR, jdk11-dragonwell-extended-binAUR, jdk17-dragonwell-standard-binAUR, jdk20-graalvm-ee-binAUR, jre11AUR, jdk8-j9-binAUR, jdk7-j9-binAUR, jdk7r1-j9-binAUR, jdk8-dragonwell-extendedAUR, jre13-openjdkAUR, jre15-openjdkAUR, jdk21-graalvm-binAUR, liberica-jdk-17-full-binAUR, liberica-jdk-11-binAUR, liberica-jdk-11-full-binAUR, liberica-jdk-11-lite-binAUR, mandrel-binAUR, jdk17-openj9-binAUR, jdk8AUR, jre8AUR, jdk17-zulu-prime-binAUR, jdk-openj9-binAUR, jdk11-openj9-binAUR, jre17-jetbrainsAUR, jre-jetbrainsAUR, jre21-jetbrainsAUR, jre21-jetbrains-gitAUR, jre-openjdk-wakefieldAUR, jdk-openjdk-wakefieldAUR, jdk8-perfAUR, zulu-jdk-fx-binAUR, jdk8-openj9-binAUR, zulu-jre-fx-binAUR, jdk-temurinAUR, amazon-corretto-22-binAUR, jdk22-graalvm-binAUR, zing-8-binAUR, zing-21-binAUR, amazon-corretto-17AUR, amazon-corretto-21-binAUR, java-openjdk-binAUR, liberica-jdk-full-binAUR, liberica-jdk-21-full-binAUR, liberica-jdk-8-full-binAUR, zulu-21-binAUR, zulu-8-binAUR, zulu-11-binAUR, zulu-17-binAUR, jdk21-temurinAUR, jdk17-temurinAUR, jdk11-temurinAUR, amazon-corretto-8AUR, amazon-corretto-11AUR, jdk8-temurinAUR, jreAUR, jdkAUR, jre-ltsAUR, jre17AUR, microsoft-openjdk-11-binAUR, microsoft-openjdk-17-binAUR, microsoft-openjdk-21-binAUR, jdk17-graalvm-ee-binAUR, jdk21-graalvm-ee-binAUR, jdk22-graalvm-ee-binAUR, jdk21-jetbrains-binAUR, jdk17-jetbrains-binAUR, java-openjdk-ea-binAUR, jdk-openjdk, jdk11-openjdk, jdk17-openjdk, jdk21-openjdk, jre-openjdk, jre11-openjdk, jre17-openjdk, jre21-openjdk, jre8-openjdk) (optional) – for older minecraft versions
- Show 3 more dependencies...
Required by (2)
- launcher-curseforge-bin (optional)
- prismlauncher-themes-git (optional)
Sources (1)
UnknownUser commented on 2024-05-17 13:17 (UTC)
UnknownUser commented on 2024-05-17 13:04 (UTC)
Minecraft 1.20.5 requires Java 21, so having Java 17 as a dependency doesn't make sense anymore.
crwn commented on 2024-05-17 12:26 (UTC)
@Scrumplex that doesn't really solve what im asking, jdk17-openjdk is already in makeopts so that doesn't have anything to do with what im suggesting, im suggesting to not runtime target java-runtime=17 directly, but java-runtime instead, so people have better options.
Scrumplex commented on 2024-05-17 07:40 (UTC)
would it be possible to remove the hard dependency on java completely and make it a opt dependency? if not then could you please not target java-runtime=17 and just use java-runtime?
Java 17 is needed for building Prism Launcher, as newer Java versions don't support building for Java 7 anymore, which is required for very old Minecraft (Forge) versions to work.
crwn commented on 2024-05-16 18:28 (UTC)
would it be possible to remove the hard dependency on java completely and make it a opt dependency? if not then could you please not target java-runtime=17 and just use java-runtime?
UnknownUser commented on 2024-04-24 14:13 (UTC) (edited on 2024-04-24 15:01 (UTC) by UnknownUser)
I cannot build this.
warning: [options] bootstrap class path is not set in conjunction with -source 7 not setting the bootstrap class path may lead to class files that cannot run on JDK 8 --release 7 is recommended instead of -source 7 -target 7 because it sets the bootstrap class path automatically error: Source option 7 is no longer supported. Use 8 or later. error: Target option 7 is no longer supported. Use 8 or later. make[2]: *** [libraries/launcher/CMakeFiles/NewLaunch.dir/build.make:94: libraries/launcher/CMakeFiles/NewLaunch.dir/java_compiled_NewLaunch] Error 2 make[1]: *** [CMakeFiles/Makefile2:1460: libraries/launcher/CMakeFiles/NewLaunch.dir/all] Error 2
This is acknowledged upstream here and here.
A workaround is to change both libraries/launcher/CMakeLists.txt
and libraries/launcher/CMakeLists.txt
so that they check for Java 8.
Gentoo does this too, although they do it depending on the installed JRE.
Edit: This was too annoying, because it requires to unpack the tar, change the values, pack the tar, and then update the sha256. Adding sed -i "s/7/8/g" libraries/{launcher,javacheck}/CMakeLists.txt
to prepare()
is significantly easier.
chrrybmb commented on 2024-04-24 08:11 (UTC)
Minecraft 1.20.5 is now out and it requires Java 21.
betseg commented on 2024-04-04 09:08 (UTC)
24w14a requires Java 21, the package requires java-runtime=17
Pinned Comments
Scrumplex commented on 2023-12-02 12:39 (UTC)
Options like
-j $(nproc)
are supposed to be set by your local makepkg.conf.Please read https://wiki.archlinux.org/title/Makepkg#Parallel_compilation
g3tchoo commented on 2023-11-06 16:38 (UTC) (edited on 2023-11-06 16:38 (UTC) by g3tchoo)
following some feedback and reports of issues, i think we're going to stick with
jdk17-openjdk
for now. while user choice is important, i believe there needs to be a balance between that and reliably building this package without manual intervention. this is also why thedepends
array will still containjava-runtime
rather than any specific jdk - since unlike building prism, we don't need to know the path of the jdk to ensure things work as expected.to ensure you don't still have
jdk17-openjdk
after building (and you don't use it), you can tell makepkg to remove unneededmakedepends
when it's done:if you have already built prismlauncher, you can also run one of the following commands:
for those facing further issues with dependencies in the future, i would also recommend using chroot builds. these allow aur packages to build in isolated and more reproducible environments, which can commonly fix these types of issues. the
devtools
package provides a script namedextra-x86_64-build
that can be used in place of makepkg to do this easily. building prismlauncher with this can be done like so: