|
|
|
*Wayland support in Enlightenment*
|
|
|
|
|
|
|
|
Running Enlightenment as a Wayland compositor is not considered "safe"
|
|
|
|
for everyday desktop use, though it is functional enough to test or
|
|
|
|
use in specialized environments.
|
|
|
|
A list of known issues can be found at the bottom of this file.
|
|
|
|
|
|
|
|
|
|
|
|
Requirements:
|
|
|
|
-------------
|
|
|
|
|
|
|
|
Aside from the normal requirements that Enlightenment needs, there are
|
|
|
|
a few things to note in order to get Enlightenment to build with
|
|
|
|
Wayland support.
|
|
|
|
|
|
|
|
Firstly, you MUST have EFL built with the following options:
|
|
|
|
|
|
|
|
--enable-drm
|
|
|
|
--enable-gl-drm (for hardware acceleration)
|
|
|
|
--enable-wayland
|
|
|
|
--enable-systemd
|
|
|
|
--enable-elput
|
|
|
|
|
|
|
|
Note that the drm engine will not be functional unless the target system
|
|
|
|
has libsystemd-login installed.
|
|
|
|
|
|
|
|
This Readme does not address the dependencies needed to enable Wayland
|
|
|
|
in EFL. If you require any information for that, please see:
|
|
|
|
|
|
|
|
https://phab.enlightenment.org/w/wayland/
|
|
|
|
|
|
|
|
If you would like support for EGL in Wayland, then also build EFL with:
|
|
|
|
|
|
|
|
--enable-egl
|
|
|
|
--with-opengl=es
|
|
|
|
|
|
|
|
The above options can be enabled for EFL without any adverse effects to
|
|
|
|
existing applications.
|
|
|
|
|
|
|
|
|
|
|
|
Compiling:
|
|
|
|
-------------
|
|
|
|
|
|
|
|
In order for Enlightenment to be compiled as Wayland compositor you will need to
|
|
|
|
pass an option to the configure stage of Enlightenment:
|
|
|
|
|
|
|
|
-Dwayland=true
|
|
|
|
|
|
|
|
At this stage, you should have EFL properly built, and Enlightenment
|
|
|
|
properly built. Let's move on to running it...
|
|
|
|
|
|
|
|
|
|
|
|
Usage:
|
|
|
|
-------------
|
|
|
|
|
|
|
|
Hopefully at this stage you have successfully built EFL and
|
|
|
|
Enlightenment in preparation for a Wayland-supported setup. Congratulations!!
|
|
|
|
Now, let's get it running...
|
|
|
|
|
|
|
|
Enlightenment, when compiled with Wayland support and started from a tty,
|
|
|
|
will automatically attempt to load the wl_drm output module and start
|
|
|
|
a Wayland session. Simply start as usual:
|
|
|
|
|
|
|
|
enlightenment_start
|
|
|
|
|
|
|
|
If you have a separate configuration profile that you would like to use,
|
|
|
|
you can tell Enlightenment to use that when you start it:
|
|
|
|
|
|
|
|
enlightenment_start -profile <my_profile>
|
|
|
|
|
|
|
|
To run a wayland session inside x11, export E_WL_FORCE=x11 before starting
|
|
|
|
enlightenment.
|
|
|
|
|
|
|
|
Known Issues
|
|
|
|
-------------
|
|
|
|
* Internal window (eg. filemanager), DnD is not currently functional
|
|
|
|
- Requires various improvements
|
|
|
|
* Restarting Enlightenment kills some applications
|
|
|
|
- Requires upstream external protocol support, XWayland improvements
|
|
|
|
* XWayland clients do not smoothly resize
|
|
|
|
- Requires upstream XWayland improvements
|
|
|
|
* There are not more than 4 keyboard layouts possible
|
|
|
|
- Requires libxkbcommon changes - https://github.com/xkbcommon/libxkbcommon/issues/37
|