shellcheck / shellcheck (push) Failing after 15s
gnome-extensions.sh loaded gnome-settings.dconf unconditionally, so each refresh (install.sh runs it) undid users' changes to those settings, bypassing apply-gnome-settings.sh's check that the file has changed. That script, which install.sh runs later, already loads the settings when needed. The smoketest's 11-refresh caught it: Tiling Shell's selected-layouts went back to the file's value. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
34 lines
990 B
Bash
Executable File
34 lines
990 B
Bash
Executable File
#!/bin/bash
|
|
|
|
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|
source "$SCRIPT_DIR/../utils.sh"
|
|
|
|
install_packages python-pipx gnome-shell-extensions
|
|
|
|
ensure_gext
|
|
|
|
EXTENSIONS=(
|
|
"tilingshell@ferrarodomenico.com"
|
|
"tailscale-gnome@diskmth.fr"
|
|
)
|
|
|
|
echo "Detected GNOME Shell version: $(gnome-shell --version)"
|
|
|
|
for ext in "${EXTENSIONS[@]}"; do
|
|
if ~/.local/bin/gext list | grep -q "$ext"; then
|
|
echo "Extension already installed: $ext"
|
|
continue
|
|
fi
|
|
|
|
echo "Installing extension: $ext..."
|
|
# The filesystem backend installs without GNOME Shell's confirmation dialog;
|
|
# the extension loads at next login
|
|
~/.local/bin/gext --filesystem install "$ext"
|
|
~/.local/bin/gext --filesystem enable "$ext"
|
|
echo " Installed and enabled: $ext"
|
|
done
|
|
|
|
# The extensions' settings (gnome-settings.dconf) are loaded by
|
|
# apply-gnome-settings.sh, which install.sh runs later, and only when the file
|
|
# has changed. Loading them here too reset users' own changes on every refresh.
|