*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-wayland --enable-systemd 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: ------------- Next, you will need to adjust the options that you pass to Enlightenment during the compile phase. In order for Enlightenment to be compiled as Wayland compositor you will need to pass an option to the configure stage of Enlightenment: --enable-wayland If you also want support for running X applications under Wayland you might want to try out XWayland support: --enable-xwayland NOTE: DO NOT DISABLE THE MIXER MODULE BUILD IF YOU ARE USING XWAYLAND. You have been warned. 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 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 new EFL release * Nested compositors (wl_wl output) cannot create internal windows - Requires new EFL release * Window close animations will not play for most Wayland clients - Requires upstream Wayland protocol additions * Restarting Enlightenment kills all open applications - Requires upstream *-shell protocol additions, XWayland improvements * XWayland clients do not smoothly resize - Requires upstream XWayland improvements * The first-launched X11 client will sometimes fail to show - Requires upstream XWayland improvements * Keyboard layout switching is not available - Requires various improvements