Nach fast einem Jahr Entwicklung wurde die Version 1.12 des Composite Managers Sway veröffentlicht, die mit dem Wayland-Protokoll entwickelt wurde und mit dem tiling Window Manager i3 sowie der i3bar kompatibel ist. Der Code des Projekts ist in C geschrieben und wird unter der MIT-Lizenz veröffentlicht. Das Projekt zielt auf die Verwendung unter Linux und FreeBSD ab.
Sway ermöglicht die logische Anordnung von Fenstern (der Window Manager wĂ€hlt dynamisch die Position und GröĂe des Fensters unter BerĂŒcksichtigung anderer geöffneter Fenster und vermeidet Ăberlappungen), anstelle der traditionellen rĂ€umlichen Anordnung (der Benutzer wĂ€hlt einen beliebigen Ort und eine GröĂe des Fensters mit möglichem Ăberlappen der Fenster). Die Fenster werden in einem Gitter angeordnet, das den Bildschirmraum optimal nutzt und es ermöglicht, Fenster schnell nur mit der Tastatur zu manipulieren. Die KompatibilitĂ€t mit i3 wird durch Befehle, Konfigurationsdateien und IPC aufrechterhalten, was es ermöglicht, Sway als transparente Alternative zu i3 zu verwenden, die Wayland anstelle von X11 nutzt.
Um eine vollstĂ€ndige Benutzerumgebung zu gestalten, stehen folgende Komponenten zur VerfĂŒgung: swayidle (Hintergrundprozess zur Implementierung des Energiesparmodus), swaylock (Bildschirmschoner), mako (Benachrichtigungsmanager), grim (Erstellung von Bildschirmfotos), slurp (Bereichsauswahl auf dem Bildschirm), wf-recorder (Videoaufnahme), waybar (Anwendungsleiste) und virtboard (Bildschirmtastatur), wl-clipboard (Zwischenablageverwaltung) sowie wallutils (Desktop-Hintergrundverwaltung).
Sway entwickelt sich als ein modulares Projekt, das auf der Bibliothek wlroots basiert, welche alle grundlegenden Primitiven zur Organisation der Arbeit eines Compositing-Managers bereitstellt. Wlroots enthÀlt Backends zur
Abstraktion des Zugriffs auf den Bildschirm, EingabegerĂ€te, Rendering ohne direkte OpenGL-Anbindung, Interaktion mit KMS/DRM, libinput, Wayland und X11 (es wird eine Schicht bereitgestellt, um X11-Anwendungen ĂŒber Xwayland auszufĂŒhren). Neben Sway wird die Bibliothek wlroots auch in anderen Projekten aktiv genutzt. Neben der UnterstĂŒtzung der Sprachen C/C++ werden auch Bindings fĂŒr Scheme, Common Lisp, Go, Haskell, OCaml, Zig, Python und Rust angeboten.
In der neuen Version:
- Die Möglichkeit zur Aufnahme einzelner Fenster wurde hinzugefĂŒgt.
- UnterstĂŒtzung fĂŒr die Ausgabe im erweiterten dynamischen Helligkeitsbereich HDR10 bei Verwendung von Vulkan-basiertem Rendering implementiert.
- UnterstĂŒtzung fĂŒr Wayland-Protokolle hinzugefĂŒgt:
- color-management-v1 zur Farbverwaltung und UnterstĂŒtzung des erweiterten dynamischen Helligkeitsbereichs (HDR, High Dynamic Range).
- color-representation-v1 zur Definition der Farbdarstellung von Wayland-OberflÀchen.
- xdg-toplevel-tag-v1 zur Anbringung von Tags durch Wayland-Clients an OberflĂ€chen der obersten Ebene, die zusammengesetzt sind. der Server zur Wiederherstellung der Position, GröĂe und Eigenschaften von Fenstern nach einem Neustart verwenden kann, sowie zur Festlegung besonderer Regeln fĂŒr verschiedene Fensterarten.
- ext-workspace-v1 zur Erstellung von Paneelen oder Indikatoren, die eine Liste verfĂŒgbarer Elemente anzeigen virtuellen ArbeitsflĂ€chen und den Wechsel zwischen ihnen ermöglichen.
- wl_fixes zur Behebung von Problemen mit anderen Software-Schnittstellen der grundlegenden Protokolle, die nicht durch die eigenen FÀhigkeiten dieser Schnittstellen gelöst werden können.
- Die Option ââdevice-primariesâ wurde implementiert, bei der das Farbprofil auf der Grundlage von Daten erstellt wird, die vom Monitor ĂŒber EDID abgerufen werden.
- UnterstĂŒtzung fĂŒr die Erkennung der Anwesenheit eines Keypads hinzugefĂŒgt, unter Verwendung des LIBINPUT_SWITCH_KEYPAD_SLIDE-Flags in libinput.
- In die Konfigurationsdatei wurden Bindungen fĂŒr spezielle Multimedia-Tasten (wie Pause, Wiedergabe fortsetzen, nĂ€chster Titel usw.) integriert, um die Wiedergabe von Multimedia-Inhalten mit dem Tool playerctl zu steuern.
- Das Ausgabefarbprofil srgb verwendet jetzt eine stĂŒckweise (piece-wise) Ăbertragungsfunktion anstelle von Gamma 2,2. FĂŒr Gamma 2,2 sollte ein separater Gamma22-Profil verwendet werden, der standardmĂ€Ăig angewendet wird.
- Der Start in Systemen mit nicht unterstĂŒtzten GPUs (zum Beispiel bei Verwendung von proprietĂ€ren NVIDIA-Treibern) fĂŒhrt jetzt zu einer Warnung statt zu einem Fehlerabbruch. Die Warnung kann mit dem Flag "âunsupported-gpu" oder der Umgebungsvariable SWAY_UNSUPPORTED_GPU deaktiviert werden.
- Offizielle UnterstĂŒtzung fĂŒr die Verwendung von Display-Managern zum Starten von Sway wurde hinzugefĂŒgt.
- Neue Funktionen der Bibliothek wlroots 0.20 wurden implementiert. Zu den Ănderungen in der neuen Version von wlroots gehören: UnterstĂŒtzung fĂŒr die Bestimmung der Farbdarstellung von Wayland-OberflĂ€chen, Farbmanagement und die Verwendung von HDR durch die Protokolle color-representation-v1 und color-management-v1. UnterstĂŒtzung der Wayland-Protokolle cursor-shape-v1 zur Anpassung des Cursor-Aussehens,
ext-workspace-v1 zur Verwendung des Konzepts virtueller ArbeitsflÀchen und xdg-toplevel-tag-v1 zur Identifikation von Fenstern/OberflÀchen durch Tag-Bindungen.

Quelle: opennet.ru
