GNOME Wayland porting – the endgame

Mosaic by Alison's Eyes.

Its been a while since I mentioned Wayland in this space – of course that doesn’t mean that work on GNOME Wayland support has stopped.

Quite the opposite, in fact. The GNOME 3.15.4 release that is due this week will close a number of the remaining gaps:

  • libinput 0.8 has been released, with most of the APIs that we need
  • Handling of input configuration has largely moved to mutter (the picture is not quite as clean as it could be, because we still need support for X configurations that do not use libinput in gnome-settings-daemon)
  • The corresponding control-center changes are about to land too
  • gnome-shell supports pointer barriers for the hot corner under Wayland as well
  • GTK+ popovers are using subsurfaces now, so they can extend beyond window boundaries
  • GTK+ prefers the Wayland backend over the X backend, if both are available

One gap that has not been closed yet is support for Wacom tablets. The required libinput changes and Wayland protocol extensions did not quite make it into libinput 0.8 – but much of the work has been done and will hopefully land before long.

The hero’s of this latest round of Wayland progress are Carlos Garnacho, Rui Matos, Jonas Ådahl, Jasper St. Pierre, Peter Hutterer and Hans de Goede, to name just a few.

I can hear you ask the question:

Thats all great, but when is it going to be done ?!

Clearly, we want to reach an endpoint where we can declare the Wayland port done and use it by default, in Fedora.  So, in order to not drag this out forever, we are aiming for the following:

  •  Use Wayland for the login screen in Fedora 22

Why ? The login screen is pretty self-contained and we don’t have to worry about application compatibility or support for exotic devices. And we will get Wayland to run on (almost) all systems this way, which should give a lot more exposure and help shake out lingering bugs and hardware issues.

  • Use the Wayland backends of the various toolkits (mainly GTK+, but also SDL and maybe Qt), if we are in a Wayland session.

Why ? This ensures that we get the maximum amount of exposure from the brave souls who are trying the Wayland session today, while not affecting the experience of everybody else who prefers the traditional X session.

As mentioned above, this change is happening for GTK+ in 3.15.4.

  • Make the Wayland session the default in rawhide, soon after we’ve branched for F22.

Why ?  If we want to have a shot at switching the default for Fedora 23, we need to do this anyway. And doing it sooner rather than later is the only logical choice.

+ +

10 thoughts on “GNOME Wayland porting – the endgame”

  1. Is it possible to get Wayland working on a Debian system these days?

    I tried it a few months back. I installed all of the Wayland packages I could find. The only thing I could kind of get working was Wayland running in an X window, and even then it would crash frequently. I couldn’t get Wayland running outside of X. I couldn’t find any good documentation about getting it running, even!

    What good is GNOME on Wayland going to be for me if I can’t even get Wayland itself running? If Wayland is so immature or unsupported so as to be unusable for most users, and these users will have to use X for years to come, are resources just being wasted on this porting of GNOME?

    [WORDPRESS HASHCASH] The poster sent us ‘0 which is not a hashcash value.

    1. I’m using Debian Jessie, and in my experience Wayland works. Weston under X, Weston by itself and Gnome Shell in Wayland-mode, all work (apart from the well-known remaining missing features).
      What errors do you get?

  2. As long as it supports root windowless mode, whatever works is fine for me. Also, it must work out of the box on most common distributions, without requiring extra software installation. Configuration is fine though, not even X11 forwarding is enabled on many platforms by default.
    I have sadly seen nothing of value in Wayland that would be worth losing X11 over SSH forwarding. I really need some similar feature, and I am not aware of anything usable being available with Mir or Wayland. VNC doesn’t cut it unless it can export single windows.
    I am well aware that X11 tunneling is an aged piece of technology that is in serious need of facelift, but the new alternative to X11 should match the functionality. Before that happens, I will keep uninstalling Wayland and Mir, because the critical requirements (for me and my environments) have not been met.

    1. There is XWayland which provides exactly that, you can connect using an application using the X11 protocol and have a bridge to talk to the Wayland compositor, you get the best of both worlds.

  3. everything sounds great! Do you know when nautilus 3.15 will arrive on rawhide? i’m looking forward to see the improvements on a wayland session. I’m excited for epiphany too, but i saw that it needs some work to improve html5 compatibility and support for wayland. Do you know something about that? is there a blog/mailing list/site where i can see the development status?
    thank you, and keep up the GREAT work 😉

  4. I can’t wait! 🙂

    I have tried wayland on and off, but due to my trackpad not working, I haven’t been able to give it a good go. Hopefully libinput has support for my MacBook Pro’s trackpad.

    Please keep up the good work! 🙂

    Christopher

  5. One late night, I tested wayland on Fedora 21 on my laptop. The next day I totally forgot about it. So I ran wayland for about a week, and the only major annoyance I found was that the ssh agent didn’t work, seemed like the environment variables for that didn’t get exported.
    Now, I spent one day trying to figure out which update that messed this up, until I realized that I was running wayland… 🙂
    So the wayland setup for Fedora 21 using XWayland is impressive, since I almost didn’t notice the difference. So I’m really looking forward to Fedora 22, and hopefully the ssh agent problems are solved by then.
    Great job.

    1. I guess you’re not a big drag/drop user? That was the only thing that bit me when I tried using the F21 Wayland desktop… I didn’t test how extensive the problem was, but the only thing I really noticed was drag/drop in Firefox wasn’t working.

Comments are closed.