A barebone version of Weston?
jadahl at gmail.com
Tue Jul 10 23:27:53 PDT 2012
On Wed, Jul 11, 2012 at 3:53 AM, Mikalai Kisialiou <kisialiou at gmail.com> wrote:
> There is an article on http://www.phoronix.com that there is a new feature
> of sliding desktop support in Weston. I am wondering if it would make sense
> to split Weston implemention into 2 distinct ones: a barebone implementation
> with minimal features (architecture + driver compatibility) and a
> full-featured version?
> I am not saying that the sliding desktop is somehow a bad idea (it is a
> great idea). I do love this feature and will definitely like to see it on my
> desktop. My concern, however, is slightly different:
> Some people may look at potential opportunities to implement their own
> version of a Wayland-compliant server. These people will likely be from
> different areas and seek some kind of a "Hello world" version of a Wayland
> compliant server. The applications may range from low-power portable devices
> with limited performance to powerful CAD workstations stacking dual graphics
> card firepower. Because the requirements and expectations for the graphics
> interface on such systems are vastly different, I am afraid that a W-server
> that aims to be one-size-fits-all may end up being one-size-fits-none. As
> optional features start propagating into Weston it will grow into something
> similar to another X-server, and we are going to be back to square 1.
> I understand that there will be some overhead involved for developers to
> maintain 2 branches. However, most features will probably not fall into the
> barebone version, so the commits for new cool features would still be
> limited to 1 branch only. Bug fixes will indeed be harder to commit. Can the
> 2nd full-featured branch be a library on top of the barebone architectural
> Also, is there some sort of a policy or a decision making process as to what
> gets committed into Weston? What do the main developers think about 2
> branches? I just thought I'd raise these concerns before a whole list of
> optional features gets committed into Weston.
As it is now, the type of features you are talking about are mostly
implemented in a shell plugin that is loaded on start up and a shell
client that also is spawned on startup. There are currently two of
both in the weston tree right now, the desktop shell and the tablet
shell (with one plugin and one client each). The sliding stuff you saw
recently was implemented in the desktop shell client. If a platform
would want to be more minimal it could implement another shell plugin
and client without animations and other features. Backends are also
implemented this way; loaded as a plugin on startup.
If people want to implement their own wayland servers, they also don't
have to go via weston at all; not even via libwayland-server.so; even
though it would probably be easier and more convenient.
More information about the wayland-devel