Veröffentlichung der Benutzerumgebung Sway 1.11

Nach 7 Monaten Entwicklung wurde die Version des Kompositionsmanagers Sway 1.11 veröffentlicht, die mit dem Wayland-Protokoll erstellt wurde und mit dem Kachelfenster-Manager i3 sowie der i3bar kompatibel ist. Der Code des Projekts ist in C geschrieben und wird unter der MIT-Lizenz verbreitet. Das Projekt zielt auf die Verwendung in Linux und FreeBSD ab.

Sway ermöglicht das Anordnen von Fenstern auf dem Bildschirm nicht rÀumlich, sondern logisch. Die Fenster werden zu einem Raster angeordnet, das den Bildschirmraum optimal nutzt und es ermöglicht, Fenster nur mit der Tastatur schnell zu manipulieren. Die KompatibilitÀt mit i3 wird auf Befehls-, Konfigurationsdatei- und IPC-Ebene gewÀhrleistet, was es ermöglicht, Sway als transparente Alternative zu i3 zu verwenden, die Wayland anstelle von X11 nutzt.

Um eine vollwertige Benutzerumgebung einzurichten, werden begleitende Komponenten angeboten: swayidle (Hintergrundprozess mit Implementierung des Energiesparmodus), swaylock (Bildschirmschutz), mako (Benachrichtigungsmanager), grim (Screenshot-Erstellung), slurp (Bereichsmarkierung auf dem Bildschirm), wf-recorder (Videoaufnahme), waybar (Anwendungsleiste), virtboard (Bildschirmtastatur), wl-clipboard (Zwischenablage-Management), wallutils (Desktop-Hintergrundverwaltung).

Sway entwickelt sich als modulares Projekt, das auf der Bibliothek wlroots aufbaut, in die alle grundlegenden Primitiven zur Organisation des Kompositionsmanagers ausgegliedert wurden. 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 wird bereitgestellt, um X11-Anwendungen ĂŒber Xwayland auszufĂŒhren). Neben Sway wird die Bibliothek wlroots aktiv auch in anderen Projekten eingesetzt. Neben der UnterstĂŒtzung fĂŒr C/C++ werden auch Bindings fĂŒr die Sprachen Scheme, Common Lisp, Go, Haskell, OCaml, Zig, Python und Rust bereitgestellt.

In der neuen Version:

  • UnterstĂŒtzung des Wayland-Protokolls linux-drm-syncobj-v1 fĂŒr explizite Buffer-Synchronisation hinzugefĂŒgt, um sicherzustellen, dass der Rendering-Vorgang im Buffer abgeschlossen ist, bevor der Kompositionsmanager diesen Buffer anzeigt.
  • UnterstĂŒtzung des Wayland-Protokolls alpha-modifier-v1 hinzugefĂŒgt, das es Clients ermöglicht, den Transparenzgrad von OberflĂ€chen zu Ă€ndern und Transparenzoperationen auf die Seite des Kompositionsmanagers auszulagern, Server, der diese Operationen wiederum an das im Kernel laufende KMS-Modul weiterleiten kann.
  • UnterstĂŒtzung fĂŒr die Wayland-Protokolle ext-image-capture-source und ext-image-copy-capture hinzugefĂŒgt, um Inhalte, die auf dem Bildschirm angezeigt werden, zu erfassen.
  • UnterstĂŒtzung fĂŒr das Wayland-Protokoll ext-data-control hinzugefĂŒgt, das privilegierten Clients ermöglicht, die Datenverarbeitung zu steuern, beispielsweise zur Implementierung von Zwischenablage-Managern.
  • Der Interprozesskommunikationsmechanismus (IPC) wurde um die UnterstĂŒtzung von Metadaten fĂŒr Sicherheitskontexte erweitert, die ĂŒber das Wayland-Protokoll security-context-v1 umgesetzt werden.
  • Die Logik zur Konfiguration des Outputs wurde verbessert, um einen qualitativ hochwertigeren und schnelleren Wechsel zu anderen GerĂ€ten zu ermöglichen.
  • UnterstĂŒtzung fĂŒr Zeigertasten hinzugefĂŒgt.
  • Im Standardkonfigurationsdatei wurden Tastenkombinationen zum Aufrufen von Dienstprogrammen wie pactl, brightnessctl und grim hinzugefĂŒgt.
  • Das standardmĂ€ĂŸige vorgeschlagene MenĂŒ wurde so angepasst, dass es die Dienstprogramm wmenu-run verwendet und nicht mehr von dem Skript dmenu_path abhĂ€ngt.
  • Neue Funktionen der Bibliothek wlroots 0.19 aktiviert. Zu den Änderungen in wlroots gehören:
    • Umgesetzte Wayland-Protokolle:
      • color-management-v1 (zur UnterstĂŒtzung von HDR10);
      • ext-image-capture-source-v1 und ext-image-copy-capture-v1 (zum Erfassen von Bildschirminhalten);
      • ext-data-control-v1 (zur Steuerung der Zwischenablage);
      • xdg-toplevel-icon-v1 (zur Bindung eigener Icons);
      • xdg-dialog-v1 (zur Erstellung fortgeschrittener Dialogfenster);
      • xdg-system-bell-v1 (zum Ausgeben eines Signals);
      • ext-idle-notify-v1 (zur Überwachung der AktivitĂ€t);
      • presentation-time (fĂŒr die adaptive Änderung der Bildwiederholfrequenz des Monitors);
      • wlr-layer-shell-v1.5 (zum Festlegen von Grenzen exklusiver Bereiche auf dem Bildschirm).
    • In den Backends und Rendering-Engines wurde die UnterstĂŒtzung fĂŒr explizite Buffersynchronisation mittels DRM-Synchronisationsobjekten (Direct Rendering Manager) implementiert.
    • UnterstĂŒtzung fĂŒr Multi-GPU fĂŒr AusgabegerĂ€te hinzugefĂŒgt, wie USB-Adapter GUD.
    • Die Implementierung des direkten Outputs (direct scanout) in den Backends unterstĂŒtzt jetzt das Zuschnitt und die Skalierung von Buffern.
    • Operationen mit dem Szenengraphen (Scene-graph) wurden optimiert.

Veröffentlichung der Benutzerumgebung Sway 1.11


Quelle: opennet.ru
60GB SSD 8Gb DDR4