summaryrefslogtreecommitdiff
path: root/.config/guix/modules/xserver.scm
diff options
context:
space:
mode:
Diffstat (limited to '.config/guix/modules/xserver.scm')
-rw-r--r--.config/guix/modules/xserver.scm75
1 files changed, 75 insertions, 0 deletions
diff --git a/.config/guix/modules/xserver.scm b/.config/guix/modules/xserver.scm
new file mode 100644
index 0000000..59e6652
--- /dev/null
+++ b/.config/guix/modules/xserver.scm
@@ -0,0 +1,75 @@
+(define-module (xserver)
+ #:use-module (gnu services)
+ #:use-module (guix gexp)
+ #:use-module (gnu home services)
+ #:use-module (gnu home services desktop))
+
+
+(define-public xorg-services
+ (list
+ (simple-service 'dotfiles
+ home-files-service-type
+ `((".Xresources"
+ ,(plain-file "Xresources" "Sxiv.background: #000000
+Sxiv.foreground: #00C0FF
+"))
+ (".Xmodmap"
+ ,(plain-file "Xmodmap" "clear lock
+clear control
+clear mod1
+clear mod2
+clear mod3
+clear mod4
+clear mod5
+keycode 37 = Hyper_L
+keycode 66 = Control_L
+add control = Control_L Control_R
+add mod1 = Alt_L Alt_R Meta_L
+add mod2 = Num_Lock
+add mod3 = Hyper_L
+add mod4 = Super_L Super_R
+add mod5 = Mode_switch ISO_Level3_Shift
+"))
+ (".xinitrc"
+ ,(plain-file "xinitrc" "#!/bin/sh
+
+userresources=$HOME/.Xresources
+usermodmap=$HOME/.Xmodmap
+sysresources=/etc/X11/xinit/.Xresources
+sysmodmap=/etc/X11/xinit/.Xmodmap
+
+# merge in defaults and keymaps
+
+if [ -f $sysresources ]; then
+
+ xrdb -merge $sysresources
+
+fi
+
+if [ -f $sysmodmap ]; then
+ xmodmap $sysmodmap
+fi
+
+if [ -f \"$userresources\" ]; then
+
+ xrdb -merge \"$userresources\"
+
+fi
+
+if [ -f \"$usermodmap\" ]; then
+ xmodmap \"$usermodmap\"
+fi
+
+# start some programs
+if [ -d /etc/X11/xinit/xinitrc.d ] ; then
+ for f in /etc/X11/xinit/xinitrc.d/?*.sh ; do
+ [ -x \"$f\" ] && . \"$f\"
+ done
+ unset f
+fi
+
+picom &
+time-getter &
+set-bg
+xset r rate 250 70
+exec dwm"))))))