EroticDevelopment / GuideMe

An interactive story viewer
MIT License
9 stars 4 forks source link

Linux Wayland compatibility issues #6

Open gnutp opened 3 years ago

gnutp commented 3 years ago

Hi, thanks for keeping GuideMe alive, and your recent cross-platform fixes!

I didn't previously realise there is an active fork over here - maybe worth updating the README in the original guide-me/GuideMe repository to point to this repository?

I've tested your Linux build and noticed that under Wayland there are two workarounds needed to get the application to start.

  1. Set environment variable GDK_BACKEND=x11 to force GTK/GDK to use Xwayland.
  2. Set Java system property VLCJ_INITX=no to disable VLCJ's X initialization routine (as per vlcj issue 929).

  1. GTK error:
    
    12:00:59.270 [main] TRACE org.guideme.guideme.ui.DebugShell - Exit createShell

(SWT:67655): Gtk-WARNING **: 12:00:59.334: GtkSocket: only works under X11

(SWT:67655): Gdk-WARNING **: 12:00:59.363: ../gtk/gdk/x11/gdkwindow-x11.c:5650 drawable is not a native X11 window #

A fatal error has been detected by the Java Runtime Environment:

#

SIGSEGV (0xb) at pc=0x00007ff825533b1b, pid=67655, tid=67656

#

JRE version: OpenJDK Runtime Environment (11.0.8+10) (build 11.0.8+10)

Java VM: OpenJDK 64-Bit Server VM (11.0.8+10, mixed mode, tiered, compressed oops, g1 gc, linux-amd64)

Problematic frame:

C [libX11.so.6+0x40b1b]

#


---

2. VLCJ error, caused by `AudioMediaPlayerComponent` constructor use introduced with c823647676f4a300f88a7f952484e085f9cdd8db:

12:06:04.944 [main] TRACE org.guideme.guideme.App - open shell #

A fatal error has been detected by the Java Runtime Environment:

#

SIGSEGV (0xb) at pc=0x00007f799f49f664, pid=68232, tid=68233

#

JRE version: OpenJDK Runtime Environment (11.0.8+10) (build 11.0.8+10)

Java VM: OpenJDK 64-Bit Server VM (11.0.8+10, mixed mode, tiered, compressed oops, g1 gc, linux-amd64)

Problematic frame:

C [libpthread.so.0+0xb664] pthread_mutex_lock+0x4

#


---

System info:

$ uname -a Linux x220-arch 5.10.3-arch1-1 #1 SMP PREEMPT Sun, 27 Dec 2020 10:50:46 +0000 x86_64 GNU/Linux

$ vlc --version VLC media player 3.0.11.1 Vetinari (revision 3.0.11.1-0-g52483f3ca2) VLC version 3.0.11.1 Vetinari (3.0.11.1-0-g52483f3ca2) Compiled by builduser on arch (Nov 10 2020 20:47:37) Compiler: gcc version 10.2.0 (GCC)

$ java -version openjdk version "11.0.8" 2020-07-14 OpenJDK Runtime Environment (build 11.0.8+10) OpenJDK 64-Bit Server VM (build 11.0.8+10, mixed mode)

EroticDevelopment commented 3 years ago

Hi, Thanks for the detailed issue description and merge request. So far I've only done limited testing of GuideMe on Linux and I haven't had a chance to test on Wayland so I'm glad to see it works with relatively minor changes.

There's been a lot of discussion recently on the Milovana thread about this program, but I've volunteered to work on it and help keep things up-to-date. Unfortunately I don't have access to the original repository so I can't update the README there, but maybe @philormand would be willing to?