Pläne für GNOME 43

Mo, 4. April 2022, Ralf Hersel

Obwohl GNOME 42 erst vor knapp zwei Wochen erschienen ist und sozusagen noch 'dampft', gibt es bereits Überlegungen darüber, welche Anwendungen und Funktionen in der nächsten und späteren Versionen der Desktop-Umgebung kommen könnten. Chris Davis, Mitglied des GNOME Kernteams, hat in seinem Blog einige Arbeiten genannt, mit denen er sich für GNOME 43 beschäftigen möchte, welches im September 2022 erscheinen soll.

Akzentfarben und Libadwaita-API zur Umfärbung

Libadwaita macht es einfach, eine lang ersehnte Personalisierungsfunktion zu implementieren: anpassbare Akzentfarben. Globale Akzentfarben werden für App-Entwickler opt-in sein. Davis möchte, dass für das Backend Akzentfarben desktop- und plattformunabhängig sind, wie die neue dunkle Stilpräferenz. Er plant, dem xdg-desktop-portal in naher Zukunft einen entsprechenden Vorschlag zu unterbreiten. In GNOME wäre es wahrscheinlich am besten, nur ein paar QA-getestete Akzente in der Benutzeroberfläche zu zeigen, aber libadwaita würde beliebige Farben unterstützen, sodass Anwendungen von KDE, GNOME und weitere alle die gleichen Farben verwenden, wenn sie die Einstellung unterstützen.

Entwickler, die die Umfärbungs-API verwenden, würden in der Lage sein, Farben in ihren Anwendungen programmatisch zu ändern und abhängige Farben automatisch aktualisieren zu lassen. Sie könnten auf einfache Weise Voreinstellungen erstellen, die z. B. verwendet werden können, um das Fenster auf der Grundlage des Farbschemas einer Textansicht neu zu färben. Technisch sei dies bereits mit CSS in libadwaita 1.0 möglich, aber die API würde es einfacher machen. Anstatt jede einzelne Farbe berücksichtigen zu müssen, müssten nur einige wenige festgelegt werden, und libadwaita würde den Rest richtig handhaben. Die hier verwendeten Heuristiken würden auch verwendet, um sicherzustellen, dass die Akzentfarben den richtigen Kontrast zum Hintergrund einer Anwendung hätten.

Adaptiver Nautilus und verbesserter Dateiwähler

Die GTK-Dateiauswahl hat ein paar Probleme. Zum Beispiel unterstützt sie keine GNOME-Funktionen wie mit Sternen versehene Dateien und muss von nachgelagerten Anbietern (z.B. PureOS, Mobian) gepatcht werden, um auf mobilen Formfaktoren zu funktionieren. Um mit den Konventionen der Plattformen Schritt zu halten, sollte die Dateiauswahl idealerweise Teil des GNOME-Kerns werden und nicht Teil von GTK. Es gibt noch einige Diskussionen über Lösungen, aber Chris Davis glaubt, dass es klug wäre, die Dateiauswahl und den Dateibrowser synchron zu halten, indem die Dateiauswahl ein Teil der Dateiauswahl wird.

Deshalb plant er, Nautilus für mobile Formfaktoren anpassungsfähig zu machen und einen neuen Dateiauswahlmodus hinzuzufügen. Da die Dateiauswahl in Nautilus und nicht in GTK untergebracht ist, könnten die Funktionen der GNOME-Plattform im Tempo von GNOME und nicht im Tempo von GTK unterstützt werden, GNOME-Entwurfsmustern folgen und Funktionen wie eine Gitteransicht mit Miniaturansichten implementieren, ohne bei Null anfangen zu müssen.

Loupe (Bildbetrachter)

Seit einer Weile arbeitet Davis ich immer wieder an Loupe, einem neuen Bildbetrachter, der in Rust mit GTK4 und libadwaita geschrieben wurde. Er plant, dass Loupe adaptiv, Touchpad- und Touchscreen-freundlich und einfach zu bedienen sein soll. Er möchte auch, dass es sich in Nautilus integriert, sodass Loupe den Sortiereinstellungen folgt, die man für einen Ordner in Nautilus hat.

Langfristig soll Loupe einfache Bildbearbeitungsfunktionen erhalten, nämlich Zuschneiden, Drehen und Anmerkungen. Mit Anmerkungen könnte Loupe in den neuen Screenshot-Flow integriert werden, sodass Benutzer Screenshots machen und mit Anmerkungen versehen können, ohne zusätzliche Programme zu benötigen.

Baobab in Rust umschreiben, und neues Design implementieren

Baobab (a.k.a. Disk Usage Analyzer) ist in Vala geschrieben. Vala hat keinen Zugang zu den grossen Bibliotheken, und auch das Tooling lässt zu wünschen übrig, meint Davis. Rust hingegen hätte ein florierendes Bibliotheks-Ökosystem und wunderbare Werkzeuge. Rust hat auch gute GTK-Bindungen, die ständig verbessert würden. Indem er Baobab in Rust umschriebe, könne er Vorteile des Ökosystems voll ausschöpfen und gleichzeitig die Leistung seiner Hauptfunktion verbessern: die Analyse der Festplattennutzung. Davis habe bereits mit der Arbeit in dieser Richtung begonnen, obwohl es noch nicht auf GitLab verfügbar ist.

Neben der Neufassung plant er auch ein Redesign auf der Grundlage von Allan Days Mockups. Das neue Design würde die Benutzeroberfläche modernisieren, indem neue Muster verwendet und einige der Hauptprobleme der Benutzeroberfläche behoben würden, die die Anwender:innen mit dem aktuellen Design haben.

Benachbarte Dateien im FileChooser-Portal öffnen

Die Dateiauswahl im xdg-desktop-portal erlaubt es nicht, benachbarte Dateien zu öffnen, wenn man eine Datei auswählt. Anwendungen wie Image-Browser, Web-Browser und Programm-Runner benötigen alle ein Loch in der Sandbox, wenn sie reibungslos funktionieren sollen. Wenn man einen Webbrowser als Flatpak verwendet, kennt man vielleicht das Problem: Öffnet man eine HTML-Datei, werden zugehörige HTML-Dateien oder Mediendateien nicht geladen. Wer lokal an einer Website arbeitet, muss sich eines Webserver bedienen, um eine Vorschau zu erhalten - z. B. mit python -m http.server.

Davis möchte an einem Portal arbeiten, das es Entwicklern ermöglicht, beim Öffnen einer Datei den Zugriff auf benachbarte Dateien anzufordern. Mit diesem Portal könnte er Loupe als Flatpak ausliefern, ohne irgendwelche Sandbox-Löcher zu benötigen, und Anwendungen wie Lutris oder Bottles wären auch als Flatpaks realisierbar. Mehr dazu gibt es hier.

Korrekturen für Barrierefreiheit

GTK4 macht die Zugänglichkeit einfacher als je zuvor. Dennoch gibt es immer noch Verbesserungen, wenn es darum geht, Kernanwendungen zugänglich zu machen. Davis möchte die GNOME-Kernanwendungen durchgehen, sie mit den verfügbaren Zugänglichkeitswerkzeugen testen und alle dabei auftretenden Probleme dokumentieren und beheben.

Wer Chris Davis bei seiner Arbeit unterstützen möchte, findet unter der Quelle entsprechende Angaben.

Quelle: https://blogs.gnome.org/christopherdavis/2022/04/03/plans-for-gnome-43-and-beyond/