summaryrefslogtreecommitdiff
path: root/.config/guix/modules/xserver.scm
blob: 59e6652e84690fdc92c5bd654f28b1a20ce392f4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
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"))))))