about summary refs log tree commit diff stats
path: root/home-manager/soispha/packages/scripts/small_functions/gtk-themes
diff options
context:
space:
mode:
Diffstat (limited to 'home-manager/soispha/packages/scripts/small_functions/gtk-themes')
-rwxr-xr-xhome-manager/soispha/packages/scripts/small_functions/gtk-themes21
1 files changed, 21 insertions, 0 deletions
diff --git a/home-manager/soispha/packages/scripts/small_functions/gtk-themes b/home-manager/soispha/packages/scripts/small_functions/gtk-themes
new file mode 100755
index 00000000..6ebf2735
--- /dev/null
+++ b/home-manager/soispha/packages/scripts/small_functions/gtk-themes
@@ -0,0 +1,21 @@
+#! /usr/bin/env dash
+
+# shellcheck source=/dev/null
+SHELL_LIBRARY_VERSION="1.1.4" . %SHELL_LIBRARY_PATH
+
+
+# TODO document, what this does
+
+# usage: import-gsettings
+config="${XDG_CONFIG_HOME:-$HOME/.config}/gtk-3.0/settings.ini"
+if [ ! -f "$config" ]; then exit 1; fi
+
+gnome_schema="org.gnome.desktop.interface"
+gtk_theme="$(grep 'gtk-theme-name' "$config" | sed 's/.*\s*=\s*//')"
+icon_theme="$(grep 'gtk-icon-theme-name' "$config" | sed 's/.*\s*=\s*//')"
+cursor_theme="$(grep 'gtk-cursor-theme-name' "$config" | sed 's/.*\s*=\s*//')"
+font_name="$(grep 'gtk-font-name' "$config" | sed 's/.*\s*=\s*//')"
+gsettings set "$gnome_schema" gtk-theme "$gtk_theme"
+gsettings set "$gnome_schema" icon-theme "$icon_theme"
+gsettings set "$gnome_schema" cursor-theme "$cursor_theme"
+gsettings set "$gnome_schema" font-name "$font_name"