Die Version 1.6 des Composite Managers Sway ist jetzt verfügbar, entwickelt mit dem Wayland-Protokoll und vollständig kompatibel mit dem Kachelfenster-Manager i3 sowie der i3bar. Der Code des Projekts ist in C geschrieben und steht unter der MIT-Lizenz. Das Projekt ist für die Nutzung auf Linux und FreeBSD ausgelegt.
Die Kompatibilität mit i3 wird auf der Ebene der Befehle, Konfigurationsdateien und IPC gewährleistet, wodurch Sway als transparente Alternative zu i3 fungiert, die Wayland anstelle von X11 verwendet. Sway ermöglicht es, Fenster logisch auf dem Bildschirm anzuordnen, anstatt sie räumlich zu platzieren. Fenster werden in einem Gitter angeordnet, das den Bildschirmraum optimal nutzt und eine schnelle Manipulation der Fenster nur mit der Tastatur ermöglicht.
Für die Einrichtung einer vollwertigen Benutzerumgebung werden begleitende Komponenten angeboten: swayidle (Hintergrundprozess zur Implementierung des KDE idle-Protokolls), swaylock (Bildschirmsperre), mako (Benachrichtigungsmanager), grim (Screenshot-Erstellung), slurp (Bereichsauswahl auf dem Bildschirm), wf-recorder (Videoaufnahme), waybar (Anwendungsleiste), virtboard (Bildschirmtastatur), wl-clipboard (Zwischenablage-Verwaltung), wallutils (Hintergrundbildverwaltung).
Sway entwickelt sich als modulares Projekt, das auf der Bibliothek wlroots basiert, die alle grundlegenden Primitiven für die Organisation der Arbeit des Compositing-Managers bereitstellt. Wlroots umfasst Backends zur Abstraktion des Zugriffs auf den Bildschirm, Eingabegeräte, Rendering ohne direkten Zugriff auf OpenGL, Interaktion mit KMS/DRM, libinput, Wayland und X11 (eine Schicht zur Ausführung von X11-Anwendungen auf Basis von Xwayland wird bereitgestellt). Neben Sway wird die Bibliothek wlroots auch in anderen Projekten wie Librem5 und Cage aktiv genutzt. Neben C/C++ wurden Bindings für Scheme, Common Lisp, Go, Haskell, OCaml, Python und Rust entwickelt.
In der neuen Version:
- Die Möglichkeit zur Verwendung von Eingabemethoden-Editoren (IME) in den Benutzeroberflächenelementen wie Panels und dem Sperrbildschirm wurde implementiert.
- Die Fluidität interaktiver Vorgänge beim Verschieben und Ändern der Fenstergröße wurde verbessert.
- In den eigenständigen Paketen Flatpak und Snap wurde das xdg-foreign-Protokoll zur Verbesserung der Systemintegration eingesetzt.
- Die Kompatibilität mit dem Fenstermanager i3 wurde hinsichtlich der Befehle, die das Layout der Fenster auf dem Bildschirm ändern, verbessert.
- Es wurde eine Option hinzugefügt, um den Cursor während der Eingabe auszublenden.
- Die Implementierung des Papierkorbs wurde für Systeme ohne systemd oder elogind angepasst.
- Die Zuverlässigkeit der Arbeit mit der Zwischenablage für X11-Anwendungen wurde erhöht.
Quelle: opennet.ru
