From 3786185d07ed6ddb6cb3f853559da699c270d3dd Mon Sep 17 00:00:00 2001 From: Raul Benencia Date: Fri, 27 Mar 2026 22:03:46 -0700 Subject: gnome-set-config: enable workspace-router on startup --- bin/gnome-set-config | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'bin') diff --git a/bin/gnome-set-config b/bin/gnome-set-config index eb5d1f8..608c111 100755 --- a/bin/gnome-set-config +++ b/bin/gnome-set-config @@ -4,10 +4,34 @@ # for e in $(gsettings list-schemas | grep bind); do gsettings list-recursively $e; done NUM_WORKSPACES=9 +WORKSPACE_ROUTER_UUID=workspace-router@rbenencia.name gsettings set org.gnome.mutter dynamic-workspaces false gsettings set org.gnome.desktop.wm.preferences num-workspaces $NUM_WORKSPACES +if [ -d "$HOME/.local/share/gnome-shell/extensions/$WORKSPACE_ROUTER_UUID" ] || + [ -d "$HOME/.local/gnome-shell/extensions/$WORKSPACE_ROUTER_UUID" ]; then + enabled_extensions=$( + python3 - "$WORKSPACE_ROUTER_UUID" "$(gsettings get org.gnome.shell enabled-extensions)" <<'PY' +import ast +import sys + +uuid = sys.argv[1] +enabled_extensions = ast.literal_eval(sys.argv[2]) + +if uuid not in enabled_extensions: + enabled_extensions.append(uuid) + +print(enabled_extensions) +PY + ) + gsettings set org.gnome.shell enabled-extensions "$enabled_extensions" + + if command -v gnome-extensions >/dev/null 2>&1; then + gnome-extensions enable "$WORKSPACE_ROUTER_UUID" >/dev/null 2>&1 || true + fi +fi + # Disable the default p. I don't use it, and it's disruptive when I accidentally trigger it. gsettings set org.gnome.mutter.keybindings switch-monitor '[]' -- cgit v1.2.3