Vergangene Woche habe ich in einem viel beachteten Artikel über Rolling Releases über ein Problem berichtet, bei dem einer meiner Computer nach dem Log-in immer die helle Darstellung anzeigte, anstatt den gewählten dunklen Modus zu verwenden. Eine Anfrage im Manjaro-Forum brachte die Lösung. Wie erwartet, lag es an einer GNOME-Shell-Extension, nämlich der Erweiterung nightthemeswitcher@romainvigier.fr, mit der abhängig von der Tageszeit zwischen dem hellen und dunklen Thema umgeschaltet wird.
Diese Erfahrung nehme ich zum Anlass, erneut über die GNOME-Erweiterungen zu schreiben. Die Extensions dienen der Erweiterung der GNOME-Desktopumgebung und erlauben diese mit Funktionen zu erweitern. Da die GNOME-Shell bewusst sehr reduziert ist, werden vermutlich die meisten Anwender:innen ein paar Erweiterungen installieren, um die Umgebung an die eigenen Bedürfnisse anzupassen.
So nett die Möglichkeit zur Erweiterung der persönlichen Arbeitsumgebung ist, so problematisch können die Extensions sein. Die meisten von ihnen greifen in das Konfigurationssystem von GNOME 3 ein, die dconf-Datenbank. Darin findet man Schlüssel/Wert-Paare für eine Vielzahl von Optionen. Diese Werte können über die Kommandozeile abgerufen bzw. gesetzt werden, oder mittels des Dconf-Editors bearbeitet werden.
Hier ein Beispiel: Der Schlüssel org.gnome.desktop.interface color-scheme regelt, ob man standardmässig das helle oder dunkle Thema sehen möchte. Im Dconf-Editor sieht das so aus:
Nun kann es sein, dass sich mehrere GNOME-Shell-Extensions um diesen Wert kümmern und einander ins Gehege kommen. Oder man hat einmal eine Einstellung gemacht, an die man sich nach einem Jahr nicht mehr erinnern kann. Hier gilt es den Überblick zu behalten: Welche Erweiterungen hat man warum installiert und was darin ein- oder ausgeschaltet?
Ich empfinde die Erweiterungen als eigenes Paketformat mit einer eigenen Paketverwaltung (ich bitte um Nachsicht in den Kommentaren zu dieser Äusserung :). Grundsätzlich werden die Erweiterungen über die Webseite https://extensions.gnome.org/ verwaltet, was nicht optimal ist. Warum soll sich eine Webseite um meine lokal installierten Erweiterungen kümmern? Für mich fühlt sich das nicht richtig an.
Alles, was ein Paket auf deiner Festplatte ist, wird in erster Linie vom Paketmanager deines Systems kontrolliert. So auch bei den GNOME-Extensions. Bei Manjaros grafischer Paketverwaltung (pamac) stellen sich die Erweiterungen so dar:
Für das Suchen, Installieren und Deinstallieren ist das schön und gut. Nicht jedoch, wenn es um den Zugriff auf die Einstellungen der Erweiterungen geht. Deshalb gibt es eigene Verwaltungsprogramme dafür. Standardmässig bringt der GNOME-Desktop die Anwendung Extensions mit.
Wie ihr im Screenshot seht, kann man damit die Erweiterungen ein-/ausschalten, es gibt einen Link auf die Webseite, die Einstellungen können bearbeitet werden und man kann die Erweiterung entfernen. Was nicht geht, ist das Suchen und Installieren von neuen Erweiterungen (die Lupe sucht nur nach bereits installierten Erweiterungen).
Diese Lücke schliesst eine Anwendung (es ist auch eine GNOME-Extension) namens Extension-Manager. Damit ist alles möglich, was die GNOME-eigene App kann. Zusätzlich wird die Suche und Installation neuer Erweiterungen unterstützt. So sieht sie aus:
Ihr seht es: Die Erweiterungen werden übersichtlicher dargestellt und es gibt mehr Funktionalität. Nach meiner Meinung ist das die beste Anwendung, um GNOME-Extensions zu verwalten.
Selbstverständlich gibt es auch für die Kommandozeile eine Verwaltungsanwendung, die standardmässig bereits installiert ist. Hier seht ihr das Angebot des Kommandos: gnome-extensions
Befehle:
help Hilfe ausgeben
version Version ausgeben
enable Erweiterung aktivieren
disable Erweiterung deaktivieren
reset Erweiterung zurücksetzen
uninstall Erweiterung deinstallieren
list Erweiterungen auflisten
info Erweiterungsinformationen anzeigen
show Erweiterungsinformationen anzeigen
prefs Erweiterungseinstellungen öffnen
create Erweiterung erstellen
pack Paket-Erweiterung
install Erweiterungspaket installieren
Der Befehl gnome-extensions list --enabled ist nützlich, wenn man ein Problem hat und in einem Forum um Hilfe bittet (siehe oben). Dann sehen die Supporter gleich, welche Erweiterungen man installiert und eingeschaltet hat.
Wer viel mit GNOME-Extensions arbeitet, findet bei uns eine Menge Beiträge zu diesem Thema. Verwendet unsere Suchfunktion mit Begriffen wie: Extension oder Extensions.