Minecraft launcher with ability to manage multiple instances
Details
- Reviewers
vvd - Group Reviewers
Contributor Reviewers (ports) - Commits
- R11:cfd09d6e9d1b: games/prismlauncher: New port: Minecraft launcher with ability to manage…
Poudriere FreeBSD 14 amd64: OK
Diff Detail
- Repository
- R11 FreeBSD ports repository
- Lint
Lint Not Applicable - Unit
Tests Not Applicable
Event Timeline
I never used any launchers for Minecraft.
I'm using shell script for run it: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=278014#c2
I don't know how I can help here. :-(
Additionally, it would be nice if the launcher supported the following settings:
- For some gfx cards (for example old Intel) require env variables: MESA_GL_VERSION_OVERRIDE=3.2 and MESA_GLSL_VERSION_OVERRIDE=330
- For some versions of nvidia proprietary drivers need /usr/local/etc/libmap.d/minecraft.conf:
[/usr/local/openjdk17/] libGLX.so libGL-NVIDIA.so libGLX.so.0 libGL-NVIDIA.so.1 [/usr/local/openjdk21/] libGLX.so libGL-NVIDIA.so libGLX.so.0 libGL-NVIDIA.so.1
Hello,
thank you very much for your comment.
- The launcher supports custom environment variables which are then taken when starting a session.
- Unfortunately I don't have an NVIDIA card, can I use this as you have written it?
- Yes. Maybe ask user if he have troubles with run. But this can affect other java graphic applications.
- Same for 1 - if user have troubles he can try set env variables.
Did you test run game using this launcher?
What versions did you tested?
games/prismlauncher/pkg-message | ||
---|---|---|
5 | Just info: 1.20.x require OpenJDK 17 and can work with OpenJDK 21. | |
19 | I don't know can this work with env. [/usr/local/openjdk17/] libGLX.so libGL-NVIDIA.so libGLX.so.0 libGL-NVIDIA.so.1 [/usr/local/openjdk21/] libGLX.so libGL-NVIDIA.so libGLX.so.0 libGL-NVIDIA.so.1 |
games/prismlauncher/pkg-message | ||
---|---|---|
19 | I said about libmap.conf(5): https://man.freebsd.org/cgi/man.cgi?libmap.conf |
I have tested the launcher.
Everything lwjgl2 works ofc.
I dont have tried the other version as they are not available because of the current GLFW problem.
games/prismlauncher/pkg-message | ||
---|---|---|
5 | The cake was only meant to be cut briefly here. | |
19 | I think that it works, I entered it in the launcher and it complained that the nvidia library was not found and with that way you dont touch other openjdk applications like you have said. |
LD_LIBMAP A library replacement list in the same format as libmap.conf(5). For convenience, the characters `=' and `,' can be used instead of a space and a new- line. This variable is parsed after libmap.conf(5), and will override its entries. This variable is un- set for set-user-ID and set-group-ID programs.
Thanks. It work for me with LD_LIBMAP env too!
I dont have tried the other version as they are not available because of the current GLFW problem.
You can apply patch from https://reviews.freebsd.org/D44490, rebuild GLFW and test.
Yes i can confirm that i have now an running 1.20.4.
I also took an modified version of the minecraft-runtime script
from the old minecraft port.
This way nobody have to deal with jave arguments.
I will re roll this in the next days.
So I talked to er2off (via Discord) who already had a port in the background and i am allowed to take patches from him, which among other things removes concerns about lwjgl selection.
I've added credits to his patches accordingly.
-- Performing Test COMPILER_HAS_DEPRECATED_ATTR -- Performing Test COMPILER_HAS_DEPRECATED_ATTR - Success CMake Error at libraries/launcher/CMakeLists.txt:2 (project): No CMAKE_Java_COMPILER could be found. Tell CMake where to find the compiler by setting either the environment variable "JAVA_COMPILER" or the CMake cache entry CMAKE_Java_COMPILER to the full path to the compiler, or to the compiler name if it is in the PATH. -- Configuring incomplete, errors occurred! *** Error code 1 Stop. make: stopped in /usr/ports/games/prismlauncher
I think you incorrect set variables:
USE_JAVA= yes JAVA_RUN= 21 JAVA_VERSION= 8 17 21
PORTNAME= prismlauncher DISTVERSION= 8.4 CATEGORIES= games java MAINTAINER= Alexander88207@protonmail.com COMMENT= Minecraft launcher with ability to manage multiple instances WWW= https://prismlauncher.org/ LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/COPYING.md LIB_DEPENDS= libcmark.so:textproc/cmark \ libquazip1-qt6.so:archivers/quazip@qt6 \ libtomlplusplus.so:devel/tomlplusplus RUN_DEPENDS= lwjgl>0:games/lwjgl \ lwjgl3>0:games/lwjgl3 \ openjdk21>0:java/openjdk21 \ xrandr:x11/xrandr USES= cmake compiler:c++17-lang desktop-file-utils gl kde:6 qt:6 \ shared-mime-info USE_GITHUB= yes GH_ACCOUNT= PrismLauncher GH_PROJECT= ${GH_ACCOUNT} GH_TUPLE= gulrak:filesystem:2fc4b463:filesystem/libraries/filesystem \ PrismLauncher:libnbtplusplus:23b95512:libnbtplusplus/libraries/libnbtplusplus USE_GL= opengl USE_JAVA= yes USE_KDE= ecm:build USE_QT= 5compat base CMAKE_ARGS= -DJAVA_HOME=${JAVA_HOME} -DJava_JAVAC_EXECUTABLE=${JAVAC} \ -DLauncher_BUILD_PLATFORM=FreeBSD .include <bsd.port.mk>
Java 21 support:
files/patch-libraries_javacheck_CMakeLists.txt:
--- libraries/javacheck/CMakeLists.txt.orig 2024-06-18 18:07:06 UTC +++ libraries/javacheck/CMakeLists.txt @@ -4,7 +4,7 @@ set(CMAKE_JAVA_JAR_ENTRY_POINT JavaCheck) include(UseJava) set(CMAKE_JAVA_JAR_ENTRY_POINT JavaCheck) -set(CMAKE_JAVA_COMPILE_FLAGS -target 7 -source 7 -Xlint:deprecation -Xlint:unchecked) +set(CMAKE_JAVA_COMPILE_FLAGS -target 8 -source 8 -Xlint:deprecation -Xlint:unchecked) set(SRC JavaCheck.java
files/patch-libraries_launcher_CMakeLists.txt:
--- libraries/launcher/CMakeLists.txt.orig 2024-06-18 18:07:06 UTC +++ libraries/launcher/CMakeLists.txt @@ -4,7 +4,7 @@ set(CMAKE_JAVA_JAR_ENTRY_POINT org.prismlauncher.Entry include(UseJava) set(CMAKE_JAVA_JAR_ENTRY_POINT org.prismlauncher.EntryPoint) -set(CMAKE_JAVA_COMPILE_FLAGS -target 7 -source 7) +set(CMAKE_JAVA_COMPILE_FLAGS -target 8 -source 8) set(SRC org/prismlauncher/EntryPoint.java