Nvidia 470 + Wayland desktop - issues with specific applications

Since the latest Stable update added the Nvidia 470 beta drivers as well as XWayland 21.1.2, I decided to try running Wayland on my desktop PC (discrete GTX 1070) for the first time. I figured I’d catalog what works and what doesn’t here, in case it’s useful to other Manjaro users and because I’m not sure where else to start troubleshooting: each one of these issues could be an Nvidia issue, a GNOME issue, an issue with that specific software project, or (least likely, perhaps) a Manjaro issue. And maybe some of these already have known fixes or workarounds, or a fix is on its way.

First, the applications I run that appear to work 100% fine and that appear to be running in “pure” Wayland, ie are not still X windows running via Xwayland:

  • All the base GNOME applications: terminal, nautilus, gedit, settings, etc.
  • SLADE, a wxGTK program for editing Doom mods.
  • Various GTK3 programs: Castor, for browsing Gemini sites; EasyTAG, for modifying MP3 ID3 tags, Thunar Bulk Rename.

Second, applications that run but still default to using Xwayland:

  • Firefox, my primary web browser. When I try to run it with MOZ_ENABLE_WAYLAND=1, I get only the blank outline (desktop visible behind it) of the window and an odd ghosting effect inside it, as if only the cursor and window drop shadow are being rendered. I know Firefox is supposed to have full Wayland support by now but it’s possible that Nvidia’s brand new Wayland support is an exception. I notice that when I completely disable WebRender, Firefox’s newer and better renderer, with gfx.webrender.force-disabled in its about:config UI, running with MOZ_ENABLE_WAYLAND=1 successfully runs Firefox in a proper Wayland window. But I don’t want to give up the performance benefit that WebRender brings. Edit: I discovered that this issue has a bug on Mozilla’s tracker: 1717673 - Nvidia Wayland Empty Window
  • Audacious, a Qt5 music player. It can be run in Wayland with QT_QPA_PLATFORM=wayland, where it lacks some GTK theming consistency but otherwise runs fine.
  • VLC, another Qt5 media player. It simply ignores QT_QPA_PLATFORM=wayland, I think they don’t support it with the EGLstreams code path Nvidia’s Wayland support uses.
  • GIMP, a GTK2 program. I haven’t tried running the newer, pre-release GTK3 branch, as installing it demands I replace my existing GIMP install.
  • Steam client application. Actual game performance seems fine in Wayland, which is great! Even fairly demanding Windows games running via Proton, like No Man’s Sky.
  • Cemu, a WiiU emulator that runs via Wine. No real change in its performance or functionality. Wine’s Wayland support is apparently underway.
  • Emacs. I use version 27 from the official repos. Supposedly Emacs 28 can run without XWayland.
  • Playscii, an ASCII art tool that I am the creator and maintainer of. It uses SDL2 and PyOpenGL to draw a 3D viewport with a bespoke GUI. When I try to run it with SDL_VIDEODRIVER=wayland, I get a fatal exception from PyOpenGL about not having a valid GL context to draw to. I’m not expecting anyone here to know about or help troubleshoot this one; I’ll chase down whatever is happening.

Third and last, applications that are out and out broken in Wayland with the Nvidia 470 drivers:

Once that last category of programs are all fixed, I would consider running Wayland full time. It’s impressive how much already works, and Nvidia’s 470 driver is still in beta. Here’s hoping support improves more quickly than the 10+ years it took to get to this point :]

8 Likes

This is useful information for me.
:+1:

1 Like

The only update I have on these compat efforts is that the issue with Firefox when using the WebRender renderer is now fixed: 1646135 - Firefox-Wayland doesn't start on the proprietary nvidia driver

So Firefox basically works great in Nvidia + Wayland + GNOME now, though it still needs to be launched with MOZ_ENABLE_WAYLAND=1 to get Wayland.

These two are now fixed for me.

This package can now be installed, but the plugin can’t be used as I run into the same issues that the folks on the AUR page comments do. And with QT_QPA_PLATFORM=wayland OBS fails to launch with the “GPU unsupported” error described there. So OBS still doesn’t work in wayland but maybe there’s progress.

Update on these since it’s been a while:

  • Signal desktop: as of a recent update to the application, it works (via XWayland).
  • OBS Studio: still the same “GPU unsupported” error in the current release (27.1.3-1), but it looks like a fix came through recently that will be in OBS 27.2. There might still be bits of missing functionality, eg capturing windows and screens; we’ll see.
  • Zoom: same result as last time I tried it, but there appears to have been some troubleshooting by the people who maintain the Zoom Flatpak.
  • Itch.io client: While this initially seemed to have the same issue as before, when I tried running it later in the same session it launched using XWayland just fine! So that’s an upgrade from not working at all.

So that’s at least some progress. Maybe sometime in early 2022 Wayland can be a daily driver for Nvidia users!

No change in any of these statuses with the new Nvidia 510 drivers.
OBS 27.2 is coming within the next few weeks so hopefully that’ll start working.
The itch.io client app does not seem to work so whatever I did last time that made it start working was a fluke I can’t reproduce.

On the bright side, nvidia-settings now runs on Wayland, although you can’t really configure much and the displays are not nearly as comprehensive.

One thing I notice is that all newly opened windows start at the top left corner of the screen (right under the top bar, and just to the right of my dock) under Wayland. Not sure if that’s a GNOME-specific issue or not.