-
-
Notifications
You must be signed in to change notification settings - Fork 76
Experimenting with Wayland
If you are interesting in hacking on Pantheon's Wayland support, you will need to create the session files. These are:
/usr/share/wayland-sessions/pantheon-wayland.desktop
with the following contents:
[Desktop Entry]
Name=Pantheon (Wayland)
Comment=This session provides elementary experience
Exec=gnome-session --builtin --session=pantheon-wayland
TryExec=io.elementary.wingpanel
Icon=
DesktopNames=Pantheon
Type=Application
And /usr/share/gnome-session/sessions/pantheon-wayland.session
with the following contents:
[GNOME Session]
Name=Pantheon (Wayland)
RequiredComponents=gala-wayland;gala-daemon;org.gnome.SettingsDaemon.A11ySettings;org.gnome.SettingsDaemon.Color;org.gnome.SettingsDaemon.Datetime;org.gnome.SettingsDaemon.Housekeeping;org.gnome.SettingsDaemon.Keyboard;org.gnome.SettingsDaemon.MediaKeys;org.gnome.SettingsDaemon.Power;org.gnome.SettingsDaemon.PrintNotifications;org.gnome.SettingsDaemon.Rfkill;org.gnome.SettingsDaemon.Sharing;org.gnome.SettingsDaemon.Smartcard;org.gnome.SettingsDaemon.Sound;org.gnome.SettingsDaemon.Wacom;org.gnome.SettingsDaemon.XSettings;
FallbackSession=pantheon
DesktopName=Pantheon
Once these are created, the greeter should offer the choice between Pantheon and Pantheon (Wayland).
At the time of writing, there are currently two blocking issues in Gala that cause it to hang/crash during startup when running it in Wayland mode. These are:
#970
Gtk.StyleContext and Gtk.WidgetPath are currently broken in Gala Wayland, so you need to comment out all their occurrances, or use (wayland-testing)[https://github.com/elementary/gala/tree/wayland-testing] branch, where it's already done.
After this, the Wayland session will run, but it's still a long way from being usable due to Plank being completely incompatible with Wayland and Wingpanel not being able to size/position itself correctly. There will be a number of other bugs that haven't been found yet. Here be dragons.
To use X11 apps you need to install Xwayland:
sudo apt install xwayland