Describe the bug
Recaf 2.21.13, latest 3.0.0-SNAPSHOT and recaf-launcher-0.1.3.jar all fail to start Recaf
To Reproduce
Steps to reproduce the behavior:
- Be on Nixos
- Download any of the versions I talked about
- Open a new shell with java inside:
nix-shell -p jdk17 openjfx17
- Run the recaf jars
- See error
Exception
log
Nov 13, 2023 1:41:25 AM com.sun.javafx.application.PlatformImpl startup
WARNING: Unsupported JavaFX configuration: classes were loaded from 'unnamed module @66a2429c'
Loading library prism_es2 from resource failed: java.lang.UnsatisfiedLinkError: /home/user/.openjfx/cache/22-ea+16/amd64/libprism_es2.so: libXxf86vm.so.1: cannot open shared object file: No such file or directory
java.lang.UnsatisfiedLinkError: /home/user/.openjfx/cache/22-ea+16/amd64/libprism_es2.so: libXxf86vm.so.1: cannot open shared object file: No such file or directory
at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:388)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:232)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:174)
at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2389)
at java.base/java.lang.Runtime.load0(Runtime.java:755)
at java.base/java.lang.System.load(System.java:1953)
at com.sun.glass.utils.NativeLibLoader.installLibraryFromResource(NativeLibLoader.java:220)
at com.sun.glass.utils.NativeLibLoader.loadLibraryFromResource(NativeLibLoader.java:200)
at com.sun.glass.utils.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:142)
at com.sun.glass.utils.NativeLibLoader.loadLibrary(NativeLibLoader.java:58)
at com.sun.prism.es2.ES2Pipeline.lambda$static$0(ES2Pipeline.java:63)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
at com.sun.prism.es2.ES2Pipeline.<clinit>(ES2Pipeline.java:52)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:375)
at com.sun.prism.GraphicsPipeline.createPipeline(GraphicsPipeline.java:218)
at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.init(QuantumRenderer.java:92)
at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:125)
at java.base/java.lang.Thread.run(Thread.java:833)
Loading library glassgtk3 from resource failed: java.lang.UnsatisfiedLinkError: /home/user/.openjfx/cache/22-ea+16/amd64/libglassgtk3.so: libXtst.so.6: cannot open shared object file: No such file or directory
java.lang.UnsatisfiedLinkError: /home/user/.openjfx/cache/22-ea+16/amd64/libglassgtk3.so: libXtst.so.6: cannot open shared object file: No such file or directory
at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:388)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:232)
at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:174)
at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2389)
at java.base/java.lang.Runtime.load0(Runtime.java:755)
at java.base/java.lang.System.load(System.java:1953)
at com.sun.glass.utils.NativeLibLoader.installLibraryFromResource(NativeLibLoader.java:220)
at com.sun.glass.utils.NativeLibLoader.loadLibraryFromResource(NativeLibLoader.java:200)
at com.sun.glass.utils.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:142)
at com.sun.glass.utils.NativeLibLoader.loadLibrary(NativeLibLoader.java:58)
at com.sun.glass.ui.gtk.GtkApplication.lambda$new$5(GtkApplication.java:173)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
at com.sun.glass.ui.gtk.GtkApplication.<init>(GtkApplication.java:162)
at com.sun.glass.ui.gtk.GtkPlatformFactory.createApplication(GtkPlatformFactory.java:40)
at com.sun.glass.ui.Application.run(Application.java:146)
at com.sun.javafx.tk.quantum.QuantumToolkit.startup(QuantumToolkit.java:290)
at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:292)
at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:162)
at com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:651)
at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:671)
at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:196)
at java.base/java.lang.Thread.run(Thread.java:833)
01:41:26.021 [Main/main] ERROR: Uncaught exception on thread 'main'
java.lang.RuntimeException: java.lang.UnsatisfiedLinkError: no glassgtk3 in java.library.path:
at com.sun.javafx.tk.quantum.QuantumToolkit.startup(QuantumToolkit.java:300)
at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:292)
at com.sun.javafx.application.PlatformImpl.startup(PlatformImpl.java:162)
at com.sun.javafx.application.LauncherImpl.startToolkit(LauncherImpl.java:651)
at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:671)
at com.sun.javafx.application.LauncherImpl.lambda$launchApplication$2(LauncherImpl.java:196)
at java.base/java.lang.Thread.run(Thread.java:833)
Caused by: java.lang.UnsatisfiedLinkError: no glassgtk3 in java.library.path:
at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2429)
at java.base/java.lang.Runtime.loadLibrary0(Runtime.java:818)
at java.base/java.lang.System.loadLibrary(System.java:1989)
at com.sun.glass.utils.NativeLibLoader.loadLibraryInternal(NativeLibLoader.java:170)
at com.sun.glass.utils.NativeLibLoader.loadLibrary(NativeLibLoader.java:58)
at com.sun.glass.ui.gtk.GtkApplication.lambda$new$5(GtkApplication.java:173)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:318)
at com.sun.glass.ui.gtk.GtkApplication.<init>(GtkApplication.java:162)
at com.sun.glass.ui.gtk.GtkPlatformFactory.createApplication(GtkPlatformFactory.java:40)
at com.sun.glass.ui.Application.run(Application.java:146)
at com.sun.javafx.tk.quantum.QuantumToolkit.startup(QuantumToolkit.java:290)
... 6 common frames omitted
Weld SE container recaf shut down by shutdown hook
The core issue here is probably most likely the changes that nix makes to library loading.
Feel free to see this issue as more of a tracking issue.
(I already tried packaging my software for nix, and it wasn't easy)
I made a package request to nix: NixOS/nixpkgs#267124
Screenshots
If applicable, add screenshots to help explain your problem.
Describe the bug
Recaf 2.21.13, latest 3.0.0-SNAPSHOT and recaf-launcher-0.1.3.jar all fail to start Recaf
To Reproduce
Steps to reproduce the behavior:
nix-shell -p jdk17 openjfx17Exception
log
The core issue here is probably most likely the changes that nix makes to library loading.
Feel free to see this issue as more of a tracking issue.
(I already tried packaging my software for nix, and it wasn't easy)
I made a package request to nix: NixOS/nixpkgs#267124
Screenshots
If applicable, add screenshots to help explain your problem.