The Focus Of Wayland's Weston Compositor

Written by Michael Larabel in Wayland on 19 April 2013 at 08:47 PM EDT. 26 Comments
WAYLAND
Kristian Høgsberg has clarified the scope and goals of Weston, Wayland's reference compositor. Now that Weston has become somewhat of its own desktop environment, Kristian has clarified its intentions to benefit future patches.

In hopes of clarifying future development work that could be potentially accepted upstream, Kristian has written on the developer's mailing list about clarifying the scope and goals for Weston.

Here's the heart of Kristian's message:
Part of the confusion around this is that weston started out as just a way to verify the protocol as well as gbm, KMS, evdev etc integration, which implies that it's throw-away code or at best a source for copy and paste. On the other end of the scale, what weston is today is obviously a lot more than just sample code, we even have a toy desktop that makes it look like it's a real desktop environment.

In my mind, the main output of weston is the core compositor and the plug-in API. We have a very efficient GLES2 renderer, very good KMS integration and overlay usage, and a good input stack. We have good infrastructure for writing custom backends and a flexible way to plug-in a higher-level shell component to handle window-manager-like responsiblities. This is the part of weston I consider product quality and we have to maintain high standards when working in that area - strict error checking, handle all corner cases etc. The core compositors goal is to be a base for other projects, similar to how the X server isn't a full desktop environment or mobile/embedded UI, but a core technology to build one upon. It is also still the reference implementation and must implement and exercise all core protocol.

The desktop shell in weston serves three goals: to validate wl_shell protocol, to make weston do something useful when you start it up, and to provide a reference for how to implement a shell module. The desktop shell is not supposed to be a generally useful desktop
environment. When we're implementing something for the weston desktop shell, we go for simplicity and protocol coverage rather than full configurability or external dependencies.

As for xwayland, I'd like this module to be better quality and provide easy integration of X applications for UIs that build on weston. As it is, it's rather spotty in its support for ICCCM and EWMH though, and mainly serves as a validation effort for X integration.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week