aboutsummaryrefslogtreecommitdiff
path: root/bin/gnome-set-config
diff options
context:
space:
mode:
Diffstat (limited to 'bin/gnome-set-config')
-rwxr-xr-xbin/gnome-set-config24
1 files changed, 24 insertions, 0 deletions
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 <Super>p. I don't use it, and it's disruptive when I accidentally trigger it.
gsettings set org.gnome.mutter.keybindings switch-monitor '[]'
nihil fit ex nihilo