diff --git a/CHANGELOG.md b/CHANGELOG.md index b0a4914..602b897 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,6 +18,7 @@ one per merged pull request. - **fix: in the app a click on a row only selects it (a second click on the selected row used to flip it, so a click on a switch needed two); a click on the switch itself, or on the BIOS update button, acts at once and selects the row too** - **feat: a run that only needs a new GNOME login (the theme, no reboot) ends with a countdown on the done screen ("Restarting GNOME in 10 s", with Restart GNOME now and Cancel) and then logs in again by itself, the counterpart of KDE restarting plasmashell (GNOME Shell on Wayland is the compositor too and can't restart in place). A run that needs a reboot keeps "Restart now" (it loads GNOME fresh): before, the Restart GNOME button was hidden then, and nothing started by itself** - **fix: Restart GNOME logs in to GNOME: after the SteamOS conversion the account's session is gaming mode, and the relogin went there (a restart that took a minute: Steam starting in gaming mode). `steamify-gdm-relogin` takes the session to log in to (the one the app runs in) for this login only and puts the account's session, the one the next boot goes to, back once the new session is up** +- **fix: turning the GNOME theme off also removes the dock's and tiling's settings schemas that were copied to `~/.local/share/glib-2.0/schemas` for GNOME Settings' panel (they stayed behind, for extensions that were gone). Desktop Icons NG and AppIndicator stay: they belong to the SteamOS conversion (the desktop shortcut and Steam's tray icon)** ## 2.12.0 - 2026-10-13 diff --git a/lib/gnome-theme.sh b/lib/gnome-theme.sh index a2675b3..d7a6855 100644 --- a/lib/gnome-theme.sh +++ b/lib/gnome-theme.sh @@ -198,6 +198,18 @@ gnometheme_disable() { # (The Dock/Desktop Icons/Tiling Settings launchers of earlier prototypes.) rm -f "${XDG_DATA_HOME:-$HOME/.local/share}"/applications/steamify-{dock,icons,tiling}-settings.desktop \ "${XDG_DATA_HOME:-$HOME/.local/share}/gnome-background-properties/steamify-steamos.xml" + # The schemas of the dock and of tiling that were copied next to the user's own for GNOME Settings' panel + # (gnometheme_extensions_install): they go with the extensions, or settings schemas of nothing are left behind. + local schemas="${XDG_DATA_HOME:-$HOME/.local/share}/glib-2.0/schemas" ext f + for ext in ubuntu-dock@ubuntu.com tiling-assistant@ubuntu.com; do + for f in "$GNOME_USER_EXTENSIONS/$ext"/schemas/*.gschema.xml; do + [[ -e "$f" ]] && rm -f "$schemas/$(basename "$f")" + done + done + # (Also by name: the extension folders may be gone already.) + rm -f "$schemas"/org.gnome.shell.extensions.{dash-to-dock,tiling-assistant}.gschema.xml + if compgen -G "$schemas/*.gschema.xml" >/dev/null; then glib-compile-schemas "$schemas" 2>/dev/null + else rm -f "$schemas/gschemas.compiled"; rmdir "$schemas" 2>/dev/null; fi rm -rf "$GNOME_USER_EXTENSIONS/steamify-vapor@steamify.github.io" "$GNOME_USER_EXTENSIONS/ubuntu-dock@ubuntu.com" "$GNOME_USER_EXTENSIONS/tiling-assistant@ubuntu.com" if [[ -f "$STATE_DIR/gnometheme-gtk4.css" ]]; then mv -f "$STATE_DIR/gnometheme-gtk4.css" "$GNOME_THEME_CSS"