-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy path.xinitrc
executable file
·71 lines (57 loc) · 1.62 KB
/
.xinitrc
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
#!/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
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
# adjust cursor repeat rate
xset r rate 300 40
# mouse, set acceleration and threshold
xinput set-prop "USB Optical Mouse" "libinput Accel Speed" 1.0 &> /dev/null
# select wm/de with: startx ~/.xinitrc session
session=${1:-bspwm}
# this to make xob work
[[ `command -v xob` ]] && ~/.config/xob/launch.sh &> /dev/null
if [[ `hostname` == "thinkpad" ]]; then
# needed for rofi-pass to work properly
setxkbmap de
fi
# wallpaper
if command -v feh > /dev/null && [ -d ~/pictures/wallpapers/photos/desktop ]; then
# NOTE: would --random-source=/dev/urandom improve the quality of random numbers?
all_img=$(find ~/pictures/wallpapers/photos/desktop -regextype egrep -iregex '.*.(png|jpe?g|heic)')
img=$(echo "$all_img" | sort -R | tail -n 1)
feh --bg-center --bg-fill "$img"
fi
case "$session" in
bspwm)
exec bspwm ;;
awesome)
exec awesome ;;
termite|term)
exec termite --geometry='1920x1080' ;;
alacritty)
exec alacritty --dimensions 213 56 ;;
i3|i3wm)
exec i3 ;;
*)
exec "$session"
esac