Difference between revisions of "Funtoo:Wayland/EnablingWayland"

From Funtoo
Jump to navigation Jump to search
(Adding context, etc.)
 
Line 1: Line 1:
To enable wayland, the following steps are required:<br>
== Introduction ==
From [https://wayland.freedesktop.org/ Wayland]: <q>Wayland is a replacement for the X11 window system protocol and architecture with the aim to be easier to develop, extend, and maintain.</q>


A simplified way of looking at it is that Wayland is a decentralised approach versus the X centralised approach.
As such, the dev-libs/wayland ebuild provides methods and functions for writing and managing various components.


'''General'''<br>
One main aspect of Wayland implementation is the Wayland Compositor (display server), and a list of them can be found at [https://en.wikipedia.org/wiki/List_of_display_servers#Wayland Wikipedia List of Wayland compositors].


Enable the wayland mix-in: <code>epro mix-ins +wayland</code>, then <code>emerge -auND @world</code><br>
For clients that do not natively display in Wayland, there is [https://wayland.freedesktop.org/xserver.html Xwayland], an Xorg server running on top of the wayland server.


== How does one start Wayland? ==
Starting a Wayland session equates to starting the relevant Wayland Compositor.
For GNOME, this is usually done via the display manager GDM. Instructions can be found at [[https://www.funtoo.org/GNOME_First_Steps#Optional_Wayland_Support GNOME Optional Wayland Support]].


'''GNOME'''<br>
For KDE, this is usually done via the display manager SDDM.


Edit <code>/etc/gdm/custom.conf</code> to change <code>WaylandEnable=false</code> to <code>WaylandEnable=true</code>.
== What graphics cards are supported? ==
Support for GPUs is via Mesa (either GBM (Generic Buffer Management) or EGL (Embedded-System Graphics Library)).
Using the Funtoo [[https://www.funtoo.org/Install/Profiles#Funtoo_Graphics_Mix-Ins graphics mix-ins]] should work (to be tested).
 
== How does one see if it's working? ==
The simplest way to verify your session type is via <code>echo "${XDG_SESSION_TYPE}"</code>
KDE kwin has a debug console that shows whether each window is displaying natively in Wayland or using xwayland: <code>qdbus org.kde.KWin /KWin org.kde.KWin.showDebugConsole</code>
 
== What is and isn't supported compared to X? ==
Comparisons to X can be found at [https://wayland.freedesktop.org/architecture.html Wayland Architecture] and [https://en.wikipedia.org/wiki/Wayland_(protocol)#Differences_between_Wayland_and_X Wikipedia Differences between Wayland and X].
 
== Other considerations ==
Tips for running specific applications in Wayland mode can be found at [https://wiki.gentoo.org/wiki/Wayland#Running_Google_Chrome_or_Chromium_in_Wayland_mode Gentoo wiki].

Latest revision as of 19:13, February 11, 2024

Introduction

From Wayland: Wayland is a replacement for the X11 window system protocol and architecture with the aim to be easier to develop, extend, and maintain.

A simplified way of looking at it is that Wayland is a decentralised approach versus the X centralised approach. As such, the dev-libs/wayland ebuild provides methods and functions for writing and managing various components.

One main aspect of Wayland implementation is the Wayland Compositor (display server), and a list of them can be found at Wikipedia List of Wayland compositors.

For clients that do not natively display in Wayland, there is Xwayland, an Xorg server running on top of the wayland server.

How does one start Wayland?

Starting a Wayland session equates to starting the relevant Wayland Compositor. For GNOME, this is usually done via the display manager GDM. Instructions can be found at [GNOME Optional Wayland Support].

For KDE, this is usually done via the display manager SDDM.

What graphics cards are supported?

Support for GPUs is via Mesa (either GBM (Generic Buffer Management) or EGL (Embedded-System Graphics Library)). Using the Funtoo [graphics mix-ins] should work (to be tested).

How does one see if it's working?

The simplest way to verify your session type is via echo "${XDG_SESSION_TYPE}" KDE kwin has a debug console that shows whether each window is displaying natively in Wayland or using xwayland: qdbus org.kde.KWin /KWin org.kde.KWin.showDebugConsole

What is and isn't supported compared to X?

Comparisons to X can be found at Wayland Architecture and Wikipedia Differences between Wayland and X.

Other considerations

Tips for running specific applications in Wayland mode can be found at Gentoo wiki.