From 70ca3fef77ee8bdc6e3ac28589a6fa08c024cc69 Mon Sep 17 00:00:00 2001 From: AlexanderCurl Date: Sat, 18 Apr 2026 17:46:06 +0100 Subject: Replaced file structures for themes in the correct format --- .../core/internal/utils/gsettings.go | 31 ++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 raveos-hyprland-theme/theme-data/DankMaterialShell/core/internal/utils/gsettings.go (limited to 'raveos-hyprland-theme/theme-data/DankMaterialShell/core/internal/utils/gsettings.go') diff --git a/raveos-hyprland-theme/theme-data/DankMaterialShell/core/internal/utils/gsettings.go b/raveos-hyprland-theme/theme-data/DankMaterialShell/core/internal/utils/gsettings.go new file mode 100644 index 0000000..cc8d084 --- /dev/null +++ b/raveos-hyprland-theme/theme-data/DankMaterialShell/core/internal/utils/gsettings.go @@ -0,0 +1,31 @@ +package utils + +import ( + "fmt" + "os/exec" + "strings" +) + +func dconfPath(schema, key string) string { + return "/" + strings.ReplaceAll(schema, ".", "/") + "/" + key +} + +// GsettingsGet reads a gsettings value, falling back to dconf read. +func GsettingsGet(schema, key string) (string, error) { + if out, err := exec.Command("gsettings", "get", schema, key).Output(); err == nil { + return strings.TrimSpace(string(out)), nil + } + out, err := exec.Command("dconf", "read", dconfPath(schema, key)).Output() + if err != nil { + return "", fmt.Errorf("gsettings/dconf get failed for %s %s: %w", schema, key, err) + } + return strings.TrimSpace(string(out)), nil +} + +// GsettingsSet writes a gsettings value, falling back to dconf write. +func GsettingsSet(schema, key, value string) error { + if err := exec.Command("gsettings", "set", schema, key, value).Run(); err == nil { + return nil + } + return exec.Command("dconf", "write", dconfPath(schema, key), "'"+value+"'").Run() +} -- cgit v1.3