Das Unternehmen System76, das die Linux-Distribution Pop!_OS entwickelt, hat Fortschritte bei der Entwicklung der Benutzeroberfläche COSMIC, die in der Programmiersprache Rust neu geschrieben wurde (nicht zu verwechseln mit dem alten COSMIC, das auf GNOME Shell basierte), bekannt gegeben. Die Oberfläche wird bereits seit über zwei Jahren entwickelt und steht kurz vor der Veröffentlichung der ersten Alpha-Version, die die Bereitschaft des grundlegenden Funktionsumfangs markieren wird, um die Oberfläche als funktionierendes Produkt zu betrachten. Die Alpha-Version soll Ende März veröffentlicht werden und wird helfen, mehr Feedback für die Feinabstimmung der Funktionalität und die Verbesserung der Benutzerfreundlichkeit zu sammeln.
Die Benutzeroberfläche entwickelt sich als universelles Projekt, das nicht an eine spezifische Distribution gebunden ist und den Freedesktop-Spezifikationen entspricht. Zur Erstellung der Benutzeroberfläche in COSMIC wird die Iced-Bibliothek verwendet, die sichere Typen, eine modulare Architektur und das reaktive Programmiermodell nutzt. Sie bietet zudem eine Architektur, die für Entwickler, die mit der deklarativen Sprache Elm vertraut sind, bekannt ist. Es stehen mehrere Rendering-Engines zur Verfügung, die Vulkan, Metal, DX12, OpenGL 2.1+ und OpenGL ES 2.0+ unterstützen. Entwicklern wird ein fertiges Set an Widgets angeboten, die Möglichkeit zur Erstellung asynchroner Handler und die Nutzung adaptiver Layouts entsprechend der Fenster- und Bildschirmgröße. Es wird auch an einem kompositorischen System gearbeitet. der Server cosmic-comp basierend auf Wayland.
Die in Entwicklung befindlichen Funktionen, die als minimal notwendig für die Erstellung der Alpha-Version von COSMIC betrachtet werden:
- COSMIC Terminal ist ein Terminalemulator, der mit dem Framework alacritty_terminal entwickelt wurde und Funktionen wie GPU-Rendering, Themen und erweiterte Eingabemethoden unterstützt. Zu den in der Entwicklung befindlichen Aufgaben gehört die Hinzufügung der Unterstützung für Mausemulation und die Möglichkeit, Hyperlinks im Terminal zu öffnen.
- Das COSMIC Randr-Tool wurde entwickelt, um Parameter anzuzeigen und Bildschirme in einer Umgebung basierend auf Wayland zu konfigurieren, das in den COSMIC Settings Konfigurator für die Anpassung der Ausgabeparameter integriert werden soll.

- Ein Applet zur Erstellung von Screenshots. Derzeit wurde bereits eine erste Implementierung zur Erstellung von Screenshots des gesamten Bildschirms, einzelner Fenster und ausgewählter Bereiche erstellt.

- Die Unterstützung von Systemen mit hybrider Grafik (integrierte GPU + dedizierte Grafikkarte) wird sichergestellt, wobei die Möglichkeit besteht, die dedizierte Grafikkarte zur Energieeinsparung im mobilen Betrieb abzuschalten oder selektiv für Spiele und grafikintensive Anwendungen zu aktivieren.
- Die Unterstützung für den Effekt des Frosted-Glass (verschwommener Hintergrund) in den Themen wurde implementiert.
- Erstellung eines Applets zur Verwaltung des Mosaikfensters und die Möglichkeit, das automatische Mosaikfenster für einen bestimmten Desktop zu aktivieren.

- Stapelsicherungsmodus für die Gruppierung verschiedener Anwendungsfenster, ähnlich wie Tabs im Browser. Diese Funktion befindet sich derzeit in der Planungs- und Diskussionsphase.
- Erstellung von Symbolen für neue Anwendungen und Applets.
- Die Möglichkeit, Informationen über den Inhalten (OSD – On-Screen Display) anzuzeigen und diese Funktion zu nutzen, um Helligkeits- und Lautstärkeindikatoren, den Wechsel zwischen Fenstern über Alt + Tab und den Übergang in den Offline-Modus anzuzeigen.
- Erstellung von stilisierten Hintergrundbildern für den Desktop und die Benutzeroberfläche, mit Funktionen wie Diashow und Skalierung des Bildes auf Vollbild.
- Anmelde- und Sperrbildschirme. Diese wurden entworfen und befinden sich in der Entwicklungsphase.
- Benutzeroberfläche zur Anpassung der Bildschirmorientierung, Maßstabs, Farbprofile und grafischen Modi. Derzeit sind nur Mockups verfügbar.
- Ein Interface zur Konfiguration von Input-Geräten, das die Anpassung von Maus- und Touchpad-Einstellungen wie die Geschwindigkeit des Cursors ermöglicht.
- Virtuelle Desktops. Die Diskussion über die Funktionalität ist abgeschlossen, und die Entwicklungsphase hat begonnen.
- Überarbeitung und Vereinheitlichung des Designs für alle bereits entwickelten Funktionen, wie das Anwendungsmenü, die Programmstartoberfläche und das Benachrichtigungssystem.
Quelle: opennet.ru



