Serie: GNOME Erweiterungen - Die Grundlagen

Mi, 6. April 2022, Ralf Hersel

Obwohl der GNOME-Desktop zu den modernsten und benutzerfreundlichsten Arbeitsumgebungen in der GNU/Linux-Welt gehört, gibt es den Bedarf, diesen zu erweitern. Dieser Bedarf kommt nicht von ungefähr, da die GNOME-Entwickler dem KISS-Prinzip folgen ("keep it simple, stupid" = "Mach es doch so einfach wie möglich"). Wem dieses Prinzip zu banal klingt, kann sich auch an Ockhams Rasiermesser orientieren.

Wie dem auch sei, viele Anwender:innen möchten den einfach gehaltenen GNOME-Desktop um Funktionen erweitern. Dafür gibt es die GNOME-Extensions. Als Auftakt zu dieser Serie über diese Erweiterungen, möchte ich zuerst einmal auf die Grundlagen eingehen, um die Verwirrung einzudämmen.

GNOME-Extensions (GEs) sind kleine, von Drittentwicklern geschriebene Programmteile, die die Funktionsweise von GNOME verändern. (Wer mit Chrome-Erweiterungen oder Firefox-Addons vertraut ist, kann sich die GEs ähnlich vorstellen). Das Frontend für GEs ist die Webseite https://extensions.gnome.org über die GEs gesucht und installiert werden können. Da GEs ausserhalb des normalen GNOME-Design- und Entwicklungsprozesses erstellt werden, werden sie von ihren Autoren und nicht von der GNOME-Gemeinschaft unterstützt. Einige Funktionen, die zunächst als Erweiterungen implementiert wurden, könnten ihren Weg in zukünftige Versionen von GNOME finden.

Der Code in einer GNOME-Shell-Erweiterung wird Teil des laufenden Systems. Aus diesem Grund besteht die Möglichkeit, dass eine Erweiterung Fehlverhalten des Systems, Abstürze oder sogar bösartiges Verhalten wie das Ausspionieren des Benutzers oder die Anzeige unerwünschter Werbung verursacht. Alle Erweiterungen, die auf die o. g. Webseite hochgeladen werden, werden auf bösartiges Verhalten überprüft, bevor sie zum Download zur Verfügung gestellt werden. Dieser Prozess der Codeüberprüfung ähnelt dem Prozess für Firefox-Add-ons, die bei addons.mozilla.org eingereicht werden.

Wer selbst GEs schreiben möchte, findet die nötigen Informationen dazu auf dieser Seite.

Zu Beginn erfolgte die Suche, Information, Installation und Aktualisierung der GEs ausschliesslich über https://extensions.gnome.org. Seit einiger Zeit enthält der GNOME-Desktop die Anwendung GNOME-Extensions. Es dient der Aktualisierung von Erweiterungen, dem Konfigurieren der Voreinstellungen und dem Entfernen oder Deaktivieren nicht gewünschter Erweiterungen.

Einen Schritt weiter geht die neue Anwendung ExtensionManager. Der entscheidende Unterschied zur App GNOME-Extensions ist, dass der ExtensionManager auch die Suche nach Erweiterungen unterstützt. Damit sind alle Arbeiten im Zusammenhang mit Erweiterungen aus einer Anwendung heraus möglich. Bisher musste man auf der Webseite suchen und installieren und konnte mittels GNOME-Extensions diese verwalten und konfigurieren. All dies ist nun mit dem ExtensionManager möglich.

Linux wäre nicht Linux, wenn es nicht auch ein Werkzeug für die Kommandozeile gäbe. Et voilà!

So viel zum ersten Teil der Serie. Die folgenden Teile beschäftigen sich mit ausgewählten Erweiterungen.

Quellen:

https://extensions.gnome.org/

https://flathub.org/apps/details/org.gnome.Extensions

https://flathub.org/apps/details/com.mattjakeman.ExtensionManager

Tags

erweiterung