aboutsummaryrefslogtreecommitdiffstats
path: root/dconf
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--dconf/Makefile16
-rw-r--r--dconf/xinit17
2 files changed, 33 insertions, 0 deletions
diff --git a/dconf/Makefile b/dconf/Makefile
new file mode 100644
index 0000000..0b1b6a1
--- /dev/null
+++ b/dconf/Makefile
@@ -0,0 +1,16 @@
+.POSIX:
+
+XINITRC_ORDER = 10
+
+install:
+ mkdir -p -- ~/.config/X11/xinit/xinitrc.d
+ test ! -d ~/.config/X11/xinit/xinitrc.d/$(XINITRC_ORDER)-dconf
+ ln -sf -- ~/.dotfiles/dconf/xinit ~/.config/X11/xinit/xinitrc.d/$(XINITRC_ORDER)-dconf
+
+uninstall:
+ -unlink -- ~/.config/X11/xinit/xinitrc.d/$(XINITRC_ORDER)-dconf
+ -rmdir -- ~/.config/X11/xinit/xinitrc.d
+ -rmdir -- ~/.config/X11/xinit
+ -rmdir -- ~/.config/X11
+
+.PHONY: install uninstall
diff --git a/dconf/xinit b/dconf/xinit
new file mode 100644
index 0000000..645f699
--- /dev/null
+++ b/dconf/xinit
@@ -0,0 +1,17 @@
+# -*- shell-script -*-
+
+# Set dconf profile
+if test ! "${SET_DCONF_PROFILE}" = 0; then
+ export DCONF_PROFILE=~/.config/dconf/profiles/"${SESSION/-/_}"
+
+ mkdir -p ~/.config/dconf/profiles
+
+ if test ! -e ~/.config/dconf/profiles/"${SESSION/-/_}"; then
+ printf '%s\n' "user-db:${SESSION}" user-db:user system-db:local system-db:site \
+ > ~/.config/dconf/profiles/"${SESSION/-/_}"
+ fi
+
+ if test ! -e ~/.config/dconf/"${SESSION/-/_}" && test -e ~/.config/dconf/user; then
+ cp -- ~/.config/dconf/user ~/.config/dconf/"${SESSION/-/_}"
+ fi
+fi