hades-emu / Hades

🔥 A Nintendo Game Boy Advance Emulator
https://hades-emu.org
GNU General Public License v2.0
204 stars 9 forks source link

settings schema does not contain a key named 'antialiasing' #78

Closed ghost closed 7 months ago

ghost commented 7 months ago

this error occurs when appimage is launched under wayland-session (Gnome)

(hades:6744): GLib-GIO-ERROR **: 20:38:21.787: Settings schema 'org.gnome.settings-daemon.plugins.xsettings' does not contain a key named 'antialiasing' Trace/breakpoint trap (core dumped)

ghost commented 7 months ago

while trying to open the default file manager the following errors occur hades:7953): Gtk-CRITICAL **: 20:49:42.800: _gtk_style_provider_private_get_settings: assertion 'GTK_IS_STYLE_PROVIDER_PRIVATE (provider)' failed

(hades:7953): Gtk-CRITICAL **: 20:49:42.806: _gtk_style_provider_private_get_settings: assertion 'GTK_IS_STYLE_PROVIDER_PRIVATE (provider)' failed

(hades:7953): Gtk-CRITICAL **: 20:49:42.806: _gtk_style_provider_private_get_settings: assertion 'GTK_IS_STYLE_PROVIDER_PRIVATE (provider)' failed Segmentation fault (core dumped)

Arignir commented 7 months ago

Ah, I tried the AppImage on X11 but didn't think of Wayland, my bad!

Do you mind sharing your distribution's name and version?

ghost commented 7 months ago

Distribution : archlinux Desktop : Gnome 45 (wayland) the bug was reproduced in the latest stable release v1.0.0

Arignir commented 7 months ago

Ok, I can't fix it right now but it will be my main priority in a week or so when I get home 🫡

Arignir commented 7 months ago

I tried on sway(wayland) without any issue, I'm installing an ubuntu VM right now to check with gnome!

Arignir commented 7 months ago

Setting GDK_BACKEND to x11 before launching the AppImage fixed the issue for me, and after installing a few opengl-related packages I had the AppImage up & running.

Would you mind telling me if it fixes the issue on your end and if Hades starts correctly after that?

GDK_BACKEND=x11 ./hades.AppImage
ghost commented 7 months ago

Yes that fixes the issue but it seems to run in Xwayland. It's works fine but when trying to open the bios file or game files It crashes. although Xwayland is fine, Native wayland support would be appreciated. If not I will close the issue as per your choice.

Arignir commented 7 months ago

I made the AppImage with the intention that it should work on any Linux system that's at most ~5 years old, so it's based on x11 to ensure maximum compatibility (and I'm not sure how feasible it would be to have a universally native AppImage).

So the fact that it's running on xwayland is what I originally expected, and as of things are right now, if you want native Wayland support you'd have to compile Hades yourself.

I agree that native wayland support is much better, which leaves me with the following options (and if you have more ideas, feel free): 1) Propose another AppImage based on wayland (but it would be harder for users to understand which one to use, not all users are aware of their display server) 2) Propose more packages for more Linux distributions, therefore reducing the need for an AppImage 3) Try and see how feasible it is to have a universal x11/wayland AppImage 4) Accept the current situation even though it is not ideal

Ideally I'd like to propose native packages for as most distro as possible (solution 2), but that takes time and Github Actions supports only Ubuntu which doesn't help. I'll do some R&D to see how feasible it is to have a universal x11/wayland AppImage but it will also take time and isn't my priority right now.

For the specific case of Archlinux, submitting a package to the AUR shouldn't be too complicated though, no?

ghost commented 7 months ago

thank you I do not think there is any need for Wayland support. I understand that it is not a priority nor it should be. I tried setting the variable and it works but opening file manager from the menu doesn't work and leads to a crash. Now I load my games in x11 session and in Wayland I launch them using recent.

  1. Flatpaks are good but are complicated to package. As of maintaining separate appimages for x and wayland it would be confusing for other users.
  2. It is easier to use an appimage because it is universal. Requesting packages and getting approval for even the main tier distros is critical but an AUR package is viable and I will look into it.
  3. As of right now appimages work reasonably well on Xwayland. Maintaing a separate wayland appimage would be awesome. I know ludo-libretro has two appimages (x & wayland).

Right now I think current situation is good. Most emulators have appimages anyway. I love this project and thank you.

Arignir commented 7 months ago

I'll definitely have a look at your crash no worries! Can you open a new issue with as much details as possible? I'll close this one since it's another problem.

(You don't have to look for AUR, I'll submit the package myself when I find the time to look at their submission protocol, no worries)

Thank you so much for using Hades and for your feedback!