Nach anderthalb Jahren Entwicklung wurde die stabile Version des Kompositionsservers Weston 10.0 veröffentlicht, die Technologien weiterentwickelt, die vollständige Unterstützung des Wayland-Protokolls in Enlightenment, GNOME, KDE und anderen Desktop-Umgebungen ermöglichen. Die Entwicklung von Weston zielt darauf ab, eine qualitativ hochwertige Codebasis und Arbeitsbeispiele für die Nutzung von Wayland in Desktop-Umgebungen und eingebetteten Lösungen bereitzustellen, wie etwa Plattformen für automobile Infotainmentsysteme, Smartphones, Fernseher und andere Verbrauchergeräte. Der Code des Projekts wird unter der MIT-Lizenz veröffentlicht.
Der Wechsel zu einer signifikanten Version von Weston ist auf Änderungen der ABI zurückzuführen, die die Kompatibilität beeinträchtigen. Änderungen im neuen Zweig von Weston:
- Farbenverwaltungskomponenten wurden hinzugefügt, die die Umwandlung von Farben, Gamma-Korrektur und die Arbeit mit Farbprofilen ermöglichen. Die Änderungen beschränken sich vorerst auf interne Subsysteme; sichtbare Farbverwaltungsmöglichkeiten werden in der nächsten Version verfügbar sein.
- In die Implementierung des Protokolls linux-dmabuf-unstable-v1, das die gemeinsame Nutzung mehrerer Grafikkarten über die DMA-BUF-Technologie ermöglicht, wurde ein 'dma-buf feedback'-Mechanismus integriert, der dem Compositor zu einem Server zusätzliche Informationen über vorhandene GPUs liefert und die Effizienz des Datenaustauschs zwischen der Haupt- und der sekundären GPU erhöht. Beispielsweise erweitert die Unterstützung von 'dma-buf feedback' die Anwendbarkeit der Ausgabe ohne Zwischenpufferung (zero-copy scanout).
- Die Unterstützung der libseat-Bibliothek wurde hinzugefügt, die Funktionen zur Organisation des Zugriffs auf gemeinsam genutzte Eingabe- und Ausgabegeräte bereitstellt, wodurch Root-Rechte überflüssig werden (die Koordination des Zugriffs erfolgt durch einen separaten Hintergrundprozess, seatd). In zukünftigen Versionen ist geplant, alle Komponenten zum Starten von Weston durch libseat zu ersetzen.
- Alle Beispiele für Client-Anwendungen wurden auf die Verwendung der xdg-shell-Protokollerweiterung umgestellt, die eine Schnittstelle zur Interaktion mit Oberflächen wie mit Fenstern bereitstellt, was das Verschieben, Minimieren, Maximieren und Ändern der Größe von Oberflächen ermöglicht.
- Es wurde die Möglichkeit hinzugefügt, Client-Software nach dem Start automatisch auszuführen, beispielsweise um Programme nach dem Anmelden automatisch zu starten.
- Die Schnittstellen wl_shell, das fbdev-Backend und das Tool weston-launch wurden als veraltet erklärt (zum Starten sollte seatd-launch oder logind-launch verwendet werden).
- Die Anforderungen an die Abhängigkeiten wurden erhöht; für den Build werden jetzt libdrm 2.4.95, libwayland 1.18.0 und wayland-protocols 1.24 benötigt. Beim Erstellen des Remote Access Plugins auf Basis von PipeWire ist libpipewire 0.3 erforderlich.
- Das Testpaket wurde erweitert.
Quelle: opennet.ru
