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, withgfx.webrender.force-disabled
in its about:config UI, running withMOZ_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:
- Itch.io client application. It displays a blank (default window color) window with nothing in it. IIRC this is one of those applications that is mostly a web view. Blank window running on Wayland desktop in Linux · Issue #2680 · itchio/itch · GitHub
- Google Chrome, which displays the same blank window as the itch.io app. Not a browser I usually use but I keep it around.
- Signal desktop. More or less the same kind of blank window as the above. Support Wayland natively · Issue #3411 · signalapp/Signal-Desktop · GitHub
- Zoom - not a program I use by choice, but I need it. Similar “empty” window as Firefox, but with a visible titlebar.
- OBS Studio. The actual GUI shows up fine, but there is no available plugin to capture desktop or windows under Wayland. This project AUR (en) - obs-xdg-portal-git supposedly provides that functionality but it’s dependent on a package that no longer exists.
- GNOME “Extensions” configuration tool. Similar to Firefox’s empty window with ghosting.
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 :]