State of Wayland, 2012-04-08

darxus at chaosreigns.com darxus at chaosreigns.com
Sun Apr 8 11:08:29 PDT 2012


This is far from official.  If you have better information, please provide
it.  HTML version: http://www.chaosreigns.com/wayland/state/


Drivers

   The reference compositor works with Intel, Radeon, and Nvidia
   (Nouveau) open source drivers. [1]Nouveau + OpenGL clients hangs.

XWayland

   XWayland, the ability to run X clients within Wayland, is
   [2]currently broken, in the middle of transitioning to using a
   special X window manager. [3]Tiago did some work on it, which has
   not been committed. Other than that, DDX support for Intel video
   exists, [4]a software implementation exists but may need updating,
   and someone has done some work on Radeon but not released source.
   Nvidia / Nouveau support hasn't been touched.

Toolkits

   Wayland usability is mostly down to applications migrating to GTK3
   and QT5.

   GTK+ 3.4.1 and QT5 appear to have complete Wayland support except
   for client side decorations. EFL and Clutter appear to have
   complete support.

   So any application should work with Wayland as long as it uses one
   of these four toolkits, and it doesn't call any Xlib functions.
   Unfortunately a number of GTK+ applications do call Xlib, through
   gdk_x11_* functions, and they need to be wrapped in [5]build-time
   and run-time backend checks.

   And while [6]GTK3 was released over a year ago, [7]QT5 only had
   its first alpha release last week. While many GTK+ applications
   haven't made the conversion yet, presumably Qt applications, for
   the most part, haven't started.

   GTK+ 3.4.0 has a [8]bug causing it to break when the X11 and
   Wayland backends are both built. The workaround has been applied
   in master and will be included in the [9]3.4.1 release on April
   18th.

   The GTK graphics glitch was a [10]cairo-gl bug, easy enough to
   avoid.

   Rob Bradford has a [11]branch of [12]gtk that doesn't require
   cairo-gl, which will be merged with master once 3.4 is branched
   off. I've tested it. This should allow Ubuntu to [13]enable the
   Wayland backend in GTK in the October 2012 (12.10) release.

Browsers

   The only web browser I've tested that works is qtwebkit, which is
   included with the QT5 source. [14]Weston occasionally crashes when
   running it. It seems likely that the [15]snowshoe browser works,
   via QT5.

   The [16]webkitgtk browser doesn't work. As expected, the
   [17]midori browser based on webkitgtk doesn't work.

   [18]Firefox has a long way to go.

   [19]Chrome / chromium might work, but I haven't seen how.

Terminals

   weston-terminal is actually pretty decent.

   vte, based on gtk, works fine.

   [20]gnome-terminal seems likely to work, I just haven't tried
   quite the right incantation yet.

   Surprisingly, there don't seem to be any terminal applications
   written in Qt or EFL. I haven't tried [21]clutterm, which uses
   Clutter, mostly because it says "This is a work in progress and
   it's far from ready for every day use."

Other Applications

   Of the 22 [22]gtk applications I tried from the default Ubuntu
   Precise menu (html5 video), 9 worked, and 13 didn't due to using
   Xlib calls. 41% worked as packaged by Ubuntu (after I rebuilt GTK
   with --enable-wayland-backend).

Open Bugs

     * [23]GTK+: Wayland and x11 backends simultaneously enabled is
       broken.
     * [24]Ubuntu: Enable wayland backend in GTK+
     * [25]Totem: Add wayland support (remove Xlib calls).
     * [26]WebKitGTK+: Enable wayland support (remove Xlib calls).

   The Nvidia proprietary + cairo-gl mess:
     * [27]Cairo: Dynamically load libGL in cairo-gl
     * [28]GTK+: Remove cairo-gl dependency from wayland backend,
       fall back to software as weston does.
     * [29]Debian packaging: Add support for versioned provides. This
       is 15 years old.


References

   1. https://bugs.freedesktop.org/show_bug.cgi?id=48074
   2. https://bugs.freedesktop.org/show_bug.cgi?id=46743
   3. http://lists.freedesktop.org/archives/wayland-devel/2012-April/002861.html
   4. http://lists.freedesktop.org/archives/wayland-devel/2011-June/001163.html
   5. http://developer.gnome.org/gtk3/3.3/ch24s02.html#id1502079
   6. https://mail.gnome.org/archives/gtk-devel-list/2011-February/msg00020.html
   7. http://labs.qt.nokia.com/2012/04/03/qt-5-alpha/
   8. http://developer.gnome.org/gtk3/3.3/ch24s02.html#id1502079
   9. https://live.gnome.org/ThreePointThree
  10. https://bugs.freedesktop.org/show_bug.cgi?id=48221
  11. https://github.com/rbradford/gtk/tree/wip/wayland-render-changes
  12. http://lists.freedesktop.org/archives/wayland-devel/2012-April/002876.html
  13. https://bugs.launchpad.net/ubuntu/+source/gtk+3.0/+bug/954352/
  14. https://bugs.freedesktop.org/show_bug.cgi?id=47728
  15. http://snowshoe.qtlabs.org.br/
  16. https://bugs.webkit.org/show_bug.cgi?id=81456
  17. https://bugs.launchpad.net/midori/+bug/975355
  18. https://bugzilla.mozilla.org/show_bug.cgi?id=635134
  19. http://www.phoronix.com/scan.php?page=news_item&px=OTc4NA
  20. https://bugzilla.gnome.org/show_bug.cgi?id=673323
  21. https://github.com/paradoxxxzero/clutterm
  22. http://www.chaosreigns.com/wayland/demos/2012-04-07-wayland-several-gtk-apps.html
  23. https://bugzilla.gnome.org/show_bug.cgi?id=672358
  24. https://bugs.launchpad.net/ubuntu/+source/gtk+3.0/+bug/954352
  25. https://bugzilla.gnome.org/show_bug.cgi?id=672735
  26. https://bugs.webkit.org/show_bug.cgi?id=81456
  27. https://bugs.freedesktop.org/show_bug.cgi?id=47480
  28. https://bugzilla.gnome.org/show_bug.cgi?id=672361
  29. http://www.chaosreigns.com/wayland/state/bugs.debian.org/cgi-bin/bugreport.cgi?bug=7330
  30. http://www.chaosreigns.com/wayland/state/2012-03-24.html
  31. http://www.chaosreigns.com/wayland/

-- 
"It is better to die on your feet than to live on your knees."
 - Emiliano Zapata, Mexican Revolution Leader
http://www.ChaosReigns.com


More information about the wayland-devel mailing list