##[[Vorlage(Getestet, jammy)]] {{{#!vorlage Wissen [:Terminal: Ein Terminal öffnen] [:Editor:einen Editor öffnen] [:mit Root-Rechten arbeiten:] }}} [[Inhaltsverzeichnis()]] [[Bild(wayland.png, 72, align=left)]] [https://wayland.freedesktop.org/ Wayland] {en} ist ein Protokoll, welches die Kommunikation zwischen dem Display Server und Clients wie z.B. Fenstern einer grafischen Umgebung regelt. Wayland ist der designierte Nachfolger des [wikipedia:X_Window_System:X Window Systems] (auch: einfach nur "X" oder auch "X11" bzw. "X Version 11" - aber nicht: X-Windows) und wird explizit entwickelt, um dieses zu ersetzen. Der wichtige Unterschied ist, dass Wayland nur die Kommunikation festlegt, während X auch den [:XServer:] mitbringt, der sich zusammen mit dem [:Displaymanager:] dann um die Darstellung der Fenster und des Desktops kümmert. Da Wayland wesentlich neuer ist als der XServer und von Grund auf neu geschrieben wurde, gilt das Protokoll im Vergleich zu X als sicherer. So gibt es z.B. eine sehr strikte Trennungen zwischen den einzelnen Nutzer des Systems und den Clients innerhalb einer Wayland Sitzung. Des Weiteren hat Wayland eine schlankere Codebasis. Zur Kommunikation nutzt Wayland die Mechanismen der [https://tldp.org/LDP/tlk/ipc/ipc.html Interprozesskommunikation] {en} des Linux Kernels über [wikipedia:Unix_Domain_Socket:Unix Domain Sockets] und kein [wikipedia_en:X_Window_System_core_protocol:Netzwerkprotokoll] wie X. Für die Umsetzung des Wayland-Protokolls ist ein [wikipedia_en:Wayland_(protocol)#Wayland_compositors:Wayland Compositor] zuständig bzw. notwendig. Dieser kümmert sich um die Darstellung des Fensterinhalts und der Fensterdekoration. Es gibt eine Referenzimplementierung namens [https://wayland.pages.freedesktop.org/weston/ Weston] {en} des Wayland-Projekts. Unter Ubuntu kommen die [:Fenstermanager:] des GNOME-Projekts ([wikipedia:Mutter_(Software):Mutter]) sowie des KDE-Projekts ([wikipedia:KWin:]) als Wayland Compositor zum Einsatz. Wayland ist standardmäßig ab [:22.04:Ubuntu 22.04 Jammy Jellyfish] aktiv, sofern ein Wayland Compositor aktiv ist und die Treiber für die Grafikhardware mit Wayland zusammenarbeiten. = Benutzung = Ist Wayland aktiv, nutzt man es automatisch, wenn man die grafische Oberfläche nutzt. == Prüfen, ob Wayland verwendet wird == Möchte man prüfen, ob Wayland aktiv ist, führt man im Terminal[1] folgenden Befehl aus: {{{#!vorlage Befehl echo $XDG_SESSION_TYPE }}} Die Ausgabe ist dann entweder `wayland` oder `x11`. Alternativ kann man auch den folgenden Befehl nutzen: {{{#!vorlage Befehl echo $WAYLAND_DISPLAY }}} Erhält man eine Ausgabe wie {{{ wayland-0 }}} ist Wayland als Display-Server-Protokoll aktiv. Erhält man keine Ausgabe, dann nutzt man den XServer. == Xwayland == Wayland bringt standardmäßig mit Xwayland auch eine Implementierung eines XServers mit. Der Wayland Compositor startet Programme, die nicht mit Wayland zusammenarbeiten können, automatisch in einer X-Session unter Verwendung von Xwayland. Dies geschieht z.B., wenn man – unsicher arbeitend! – mittels [:sudo:] eine grafische Anwendung mit [:Root-Rechte:Root-Rechten] startet. Unter Wayland selbst wäre dies nicht möglich, da dies einen Benutzerwechsel in der laufenden Sitzung bedeutet, was die Sicherheitsrichtlinien des Wayland Protokolls nicht zulassen. Um zu sehen, welche Programme in einer X Session laufen, führt man den folgenden Befehl im Terminal[1] aus: {{{#!vorlage Befehl xlsclients }}} Die Ausgabe sieht dann z.B. so aus: {{{ thinkbook15 gsd-xsettings thinkbook15 ibus-x11 thinkbook15 gnome-shell thinkbook15 firefox }}} Die erste Spalte zeigt den Rechnernamen, die zweite Spalte den Namen des Programms, welches unter Xwayland läuft. == Wayland unter anderen Arbeitsumgebungen == === KDE Plasma === Um unter Kubuntu (bis 24.04) eine Wayland-Stitzung verfügbar zu machen, benötigt man folgendes Paket {{{#!vorlage Paketinstallation plasma-workspace-wayland, universe; bis [:24.04:] }}} Danach hat man die entsprechende Auswahl im Anmeldefenster (SDDM). Spätere Kubuntuversionen bringen diese Auswahl bereits mit. === Cinnamon === Ab Cinnamon 6.0.4 (Ubuntu Cinnamon 24.04) gibt es eine experimentelle Unterstützung für Wayland, wobei der Bildschirmschoner jedoch deaktiviert wird. === Xfce === Ab Xfce 4.20 (Xubuntu 25.04) ist eine experimentelle Wayland-Unterstützung möglich – die Release Notes schweigen sich dazu jedoch aus. === Budgie === Das Ziel Budgie 10.10 für Ubuntu Budgie 25.10 und damit eine Wayland-Unterstützung auszuliefern, konnte nicht erreicht werden. === LxQt === Lubuntu 25.10 soll erste Pakete zu Wayland bereits mitbringen, eine vollständige Wayland-Unterstützung ist jedoch auf Lubuntu 26.04 verschoben worden. === Unity === Unity7 ist an X11 gebunden. Das in Lomiri umbenannte Unity8 könnte eine Alternative sein, jedoch wird es unter Ubuntu Unity (noch) nicht verwendet. === MATE === Ab MATE 1.28 gibt es die erste Wayland-Unterstüzung, jedoch ist diese Version noch nicht Ubuntu angekommen. == X statt Wayland verwenden == Möchte man statt Wayland für eine Sitzung X als Displayserver verwenden, klickt man im Anmeldedialog (Login) des GNOME Desktops erst auf den eigenen Benutzername, dann rechts unten auf das Zahnradsymbol und wählt dort ''"Ubuntu auf Xorg"'' aus. Bei Kubuntu klickt man im Anmeldedialog von [:SDDM:] auf aus Auswahlmenü und wählt dort ''"Plasma (X11)"'' aus. Um Wayland unter Ubuntu dauerhaft zu deaktivieren, muss man die Konfigurationsdatei '''/etc/gdm3/custom.conf''' von [:GDM:] editieren. Man öffnet die Datei mit einem Editor mit Root-Rechten[2][3] und fügt im Abschnitt `[daemon]` die folgenden zwei Zeilen ein: {{{ WaylandEnable=false DefaultSession=gnome-xorg.desktop }}} Danach muss man das System neu starten. = Links = * [https://wayland.freedesktop.org/ Homepage des Wayland Projekts] {en} bei freedesktop.org * [https://wayland.freedesktop.org/docs/html/ch01.html Startseite der Dokumentation] {en} von Wayland. Enthält auch Skizzen / Diagramme zur Funktionsweise und zum Signalfluss * [https://wayland.freedesktop.org/xserver.html Dokumentation von Xwayland] {en} * [wikipedia_en:Wayland_(protocol):englischsprachige Seite bei Wikipedia zu Wayland], enthält viele weiterführende technische Hintergründe und Schaubilder zu Kommunikation / zum Aufbau * [https://wayland-book.com/introduction.html Wayland Book] {en} - ausführliches Online Buch zu Wayland #tag: Grafik, System