GNOME

GNOME Taschenrechner friert beim Start ein

02. August 2025 · Anwendungen · andreas · Kein Kommentar

In Debian 12 hat der von Gnome mitgelieferte Taschenrechner das Problem, daß er beim Start reproduzierbar einfriert.

GNOME Taschenrechner

Wie in Debian Bug report #1059773 “gnome-calculator: completely freeze at startup” zu lesen, hängt dies am fehlgeschlagenen Download einer Wechselkurs-Datei.

Zur Lösung gibt es zwei Wege:

Entweder in der Kommandozeile mittels “dconf” die Aktualisierung abschalten

$ dconf write /org/gnome/calculator/refresh-interval 0

oder bei unterbrochener Internetverbindung die Einstellung “Aktualisierungsintervall von Wechselkursen” auf den Wert “Niemals” stellen.


GNOME-Extension während der Entwicklung testen

06. Juni 2025 · Programmierung · andreas · Kein Kommentar

Während unter X11 zum Testen einer Erweiterung die Möglichkeit bestand, mittels Alt+F2 und “r” die GNOME-Shell ohne Abmeldung neu zu starten, ist dies mit Wayland nicht mehr möglich. Es erscheint lediglich der Hinweis “Neu Starten ist unter Wayland nicht verfügbar”.

Nested GNOME-Shell

Der Getting Stared-Guide empfiehlt als Alternative eine “nested GNOME-Shell session” zu starten:

$ dbus-run-session -- gnome-shell --nested --wayland

Nach Ausführen des Befehls öffnet sich ein Fenster mit einer neuen Instanz der GNOME-Shell, in der die Erweiterung getestet werden kann. Wer die Größe des sich öffnenden Fensters beeinflussen möchte, kann dies durch Setzen der Umgebungsvariable “MUTTER_DEBUG_DUMMY_MODE_SPECS” tun.

export MUTTER_DEBUG_DUMMY_MODE_SPECS=1400x900

Standard-Ordner in GNOME loswerden

31. Oktober 2023 · Betriebssysteme · andreas · Kein Kommentar

Gut gemeint ist nicht immer gut gemacht, so auch im Falle von GNOME und dessen Dateimanager Files: egal, ob die Ordner verwendet werden oder nicht, den freedesktop.org-Spezifikationen folgend werden bei jedem Login die XDG-Standard-Ordner wie z.B. “Musik” und “Videos” angelegt und auch in der Seitenleiste von Files angezeigt. Eine Möglichkeit, dies innerhalb der Oberfläche zu konfigurieren ist nicht vorgesehen.

This program reads a configuration file, and a set of default directories. It then creates localized versions of these directories in the users home directory and sets up a config file in $(XDG_CONFIG_HOME)/user-dirs.dirs (XDG_CONFIG_HOME defaults to ~/.config) that applications can read to find these directories. [Quelle]

Das Verhalten kann aber mit Hilfe von Konfigurationsdateien angepasst werden.

Ändern der Verzeichnisse

Wer den grundlegenden Mechanismus aktiviert lassen möchte, kann in der Datei “~/.config/user-dirs.dirs” die nicht benötigten Verzeichniseinträge auf sein “home”-Verzeichnis umbiegen.

Dies wird auch so vorgeschlagen:

To disable a directory, point it to the homedir. [Quelle]

Alternativ ist auch ein Auskommentieren der nicht benötigten Zeilen möglich, dies würde aber ggf. dazu führen, daß eine Applikation einen benötigten Ablageort nicht (mehr) findet.

# This file is written by xdg-user-dirs-update # If you want to change or add directories, just edit the line you're # interested in. All local changes will be retained on the next run. # Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped # homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an # absolute path. No other format is supported. # XDG_DESKTOP_DIR="$HOME/Schreibtisch" XDG_DOWNLOAD_DIR="$HOME/Downloads" XDG_TEMPLATES_DIR="$HOME/Vorlagen" XDG_PUBLICSHARE_DIR="$HOME" XDG_DOCUMENTS_DIR="$HOME/Dokumente" XDG_MUSIC_DIR="$HOME" XDG_PICTURES_DIR="$HOME/Bilder" XDG_VIDEOS_DIR="$HOME"

Da “home” bereits exisitiert, werden Ordner, welche auf “$HOME” verweisen, nicht nochmal angelegt und auch nicht zusätzlich zum “Persönlichen Ordner” angezeigt. Das Verbiegen einer Variable mit dem Namen “XDG_PUBLICSHARE_DIR” auf “$HOME” hinterlässt aber auf Systemen, auf denen mehr als ein Benutzer aktiv ist, ein ungutes Gefühl.

Abschalten des Mechanismus

Alternativ (oder zusätzlich) kann der Mechanismus auch komplett stillgelegt werden.

At the moment there are only two settings, you can disable the whole thing, and you can specify the charset encoding used for filenames. [Quelle]

Dies kann entweder systemweit über die Datei “/etc/xdg/user-dirs.conf” gesteuert oder benutzerbezogen eingestellt werden.

Hierzu ist die Systemdatei zuerst ins Benutzerverzeichnis zu kopieren

$ cp /etc/xdg/user-dirs.conf ~/.config/

dann kann die Einstellung “enabled” von “True” auf “False” geändert werden:

# This controls the behaviour of xdg-user-dirs-update which is run on user login # You can also have per-user config in ~/.config/user-dirs.conf, or specify # the XDG_CONFIG_HOME and/or XDG_CONFIG_DIRS to override this # enabled=False # This sets the filename encoding to use. You can specify an explicit # encoding, or "locale" which means the encoding of the users locale # will be used filename_encoding=UTF-8

Bei der nächsten Anmeldung werden die Ordner nicht mehr neu angelegt und die Einträge in der Seitenleiste von “Files” sind verschwunden.

Dies ist eine Erweiterung zu den Beiträgen “Wahl der Desktopumgebung” und “Eigene Dateien umziehen”, in denen die xdg-user-dirs bereits angesprochen wurden.

Speicherort für GNOME Shell-Extension Schema-Dateien

19. Februar 2023 · Programmierung · andreas · Kein Kommentar

Eine selbsterstellte Erweiterung für die GNOME Shell funktionierte zwar einwandfrei, allerdings beschwerte sich der Dconf-Editor, daß die Konfigurations-Schlüssel trotz vorhandenener “schema”-Datei im Erweiterungsordner nicht von einem Schema definiert würden.

Screenshot

Beim Klick auf einen Schlüssel wurde zusätzlich eine erweiterte Fehlermeldung angezeigt:

Kein Schema verfügbar. Ein Schema beschreibt die Verwendung eines Schlüssels und Dconf-Editor kann kein Schema finden, das diesem Schlüssel zugeordnet ist.

Zur Lösung des Problems half ein Blick in die Dateiliste einer mit Debian mitgelieferten Erweiterung wie z.B. “Dash to Dock

/usr/share/glib-2.0/schemas/org.gnome.shell.extensions.dash-to-dock.gschema.xml

Offensichtlich müssen die “schema”-Dateien in einem gesonderten Verzeichnis gespeichert werden. Für eine im Benutzerkontext installierte Erweiterung ist dies der Ordner “~/.local/share/glib-2.0/schemas” statt dem Systemordner “/usr/share/glib-2.0/schemas”

$ mkdir -p ~/.local/share/glib-2.0/schemas $ cp org.gnome.shell.extensions.myscript.gschema.xml ~/.local/share/glib-2.0/schemas/org.gnome.shell.extensions.myscript.gschema.xml $ cd ~/.local/share/glib-2.0/schemas $ glib-compile-schemas .

Nach dem Anlegen des Ordners und dem Kopieren der Schema-Datei (wahlweise funktioniert auch das Setzen eines symbolischen Links) muß die Schema-Datei noch kompiliert werden, dann ist auch der Dconf-Editor zufrieden.

RTFM hätte hier auch ohne den Umweg über eine andere Erweiterung geholfen, denn die Hilfeseite zu “glib-compile-schemas” verrät bereits:

The usual location to install schema files is /usr/share/glib-2.0/schemas.


Einstellungen mit dconf sichern

27. Oktober 2022 · Betriebssysteme · andreas · Kein Kommentar

Während viele Programme ihre Einstellungen in Konfigurationsdateien speichern, verwenden andere die Kombination aus dconf/GSettings, um die Einstellungen in der zentralen GNOME-Konfigurationsdatenbank abzulegen.

Das Sichern der vorhandenen Einstellungen kann auf der Kommandozeile mit dconf erledigt werden, hier am Beispiel von Tilix:

$ dconf dump /com/gexperts/Tilix/ > tilix_settings.dconf

Das Ergebnis des Befehls ist eine Textdatei “tilix_settings.dconf”, welche editiert, kopiert und bei Bedarf auch wieder zurückimportiert werden kann

$ dconf load /com/gexperts/Tilix/ < tilix_settings.dconf