I have been running everything under Wayland for several months. Today, I noticed the updates included revised packages for some mesa-egl stuff, so I decided to re-verify that things were still running under native Wayland. What I discovered is that they are not.
First, I surfed to about:support in Firefox. It showed that it is now using GLX, which indicates it is running under XWayland. Bad.
Then, I ran looking glass to make sure. Every running window (Firefox and two for Gnome terminal) is running under XWayland. Very bad.
I have not done anything overt to invoke XWayland in Fedora 30. How do I correct this?
I checked a couple of more Gnome applications. Nautilus is also running in XWayland. Curiously, Gnome Calendar is running in pure Wayland.
If I run Firefox with GDK_BACKEND=wayland set, it runs in native Wayland, as it should.
So, has Fedora 30 stopped defaulting to pure Wayland? I thought Wayland was supposed to be the default for 30.
OK, as nearly as I can tell, here’s the deal.
I exported GDK_BACKEND=wayland at the system level. This lets most Gnome applications run in native Wayland. However, starting Firefox Nightly from the Activities menu, it still runs in Xwayland. But, if I start Firefox Nightly from the Gnome Terminal, it runs in native Wayland.
This is because I can export the variable only for non-interactive shells. The gnome-shell still runs without the setting of the variable. I tried to set the variable for all shells, and I was unable to login to Gnome (I think it did login, but returned me to the login screen after a couple of seconds - an endless loop).
So, at this point, many Gnome applications will run in Wayland and a few will run in Xwayland. I will have to start Firefox from the CLI to have it run in Wayland. If I start it the normal Gnome way, it will run in Xwayland.
What a mess!
I found this on a Gnome blog. I’m not sure how it relates to my issue(s).
Firefox for Wayland : Martin Stransky has been hard at work making Firefox be able to run Wayland-native. That work is tantalizingly near, but we decided to postpone it for Fedora Workstation 31 in the end to make sure it is really well polished before releasing it upon the world.
Apparently, native Wayland Firefox is not the default in Fedora 30, contrary to what I had believed.
Indeed there is a package called
$ dnf info firefox-wayland
Name : firefox-wayland
Version : 67.0
Release : 4.fc30
Architecture : x86_64
Size : 19 k
Source : firefox-67.0-4.fc30.src.rpm
Repository : updates
Summary : Firefox Wayland launcher.
URL : https://www.mozilla.org/firefox/
License : MPLv1.1 or GPLv2+ or LGPLv2+
Description : The firefox-wayland package contains launcher and desktop file
: to run Firefox natively on Wayland.
Thank you, @alciregi . I always run Firefox Nightly, though.