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