Question about Wayland dependancies
ppaalanen at gmail.com
Sat Sep 22 10:35:25 PDT 2012
On Sat, 22 Sep 2012 11:25:07 -0400
"Walter Dnes" <waltdnes at waltdnes.org> wrote:
> I don't know if this is the correct list to ask this question. If
> not, please let me know the correct list. According to Wikipedia
> Weston depends on udev. This was not an issue when Wayland was
> originally conceived, but things have changed over the years. udev
> has been rolled into the systemd tarball, and shares common code.
Also keep in mind, that Weston is not the only Wayland compositor.
> IANACP... I Am Not A C Programmer. I've been following the list for
> a few weeks to get some background of the situation. I notice
> references to evdev. A while ago, evdev became dependant on udev. I'm
> currently running Gentoo linux with mdev as a udev replacement on 3
> machines. X and ICEWM work fine. See...
> https://wiki.gentoo.org/wiki/Mdev and
> https://wiki.gentoo.org/wiki/Mdev/Automount_USB Do Weston/Wayland
> inherently requires udev/evdev? If not, I'd like to experiment with it
> myself. I am not a programmer, but I can...
> "./configure --with-various-options && make && make install".
Evdev is how you can use input devices on Linux, so yes, it is required
when you are running the compositor on "bare Linux", that means without
another windowing system beneath it. (And the other windowing
system beneath it would again use evdev for its input devices.)
Evdev does not depend on udev. For instance, Android has evdev without
If you instead refer to the evdev code in Weston repository, that
does not depend on udev anymore either. I did the separation, when
I wrote the Android backend, since Android does not have udev.
However, the Android backend is lacking. It does not support
hotplug yet, and I believe it would be ugly and racy to try to add
it without udev. In the very limited hardware environment of
Android it might still be feasible.
Weston's DRM backend depends on udev, yes. Input devices, hotplugging,
seat configuration, GPU device discovery; these use udev for a nice
implementation. You could write another DRM backend without udev,
but it would probably be frowned upon.
Wayland libraries (not only Weston) already use XDG_RUNTIME_DIR,
too. Implementing XDG_RUNTIME_DIR properly without systemd is
non-trivial, but I guess some distros are going to do it. So, there
will probably be enough systemd-avoiders to fork udev, too, in case
the situation becomes unbearable for you.
More information about the wayland-devel