-
Notifications
You must be signed in to change notification settings - Fork 0
/
.xinitrc
executable file
·85 lines (63 loc) · 1.64 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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#!/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 nice 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
# User config
###############################################
# Keymap
setxkbmap -option ctrl:nocaps
# fcitx
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
fcitx
# For java programs
export _JAVA_AWT_WM_NONREPARENTING=1
# statusbar
while true; do
# Power/Battery Status
if [ "$( cat /sys/class/power_supply/AC/online )" -eq "1" ]; then
DWM_BATTERY="AC";
DWM_RENEW_INT=3;
else
DWM_BATTERY=$(( `cat /sys/class/power_supply/BAT1/energy_now` * 100 / `cat /sys/class/power_supply/BAT1/energy_full` ));
DWM_RENEW_INT=30;
fi;
# Memory
DWM_MEM=$( free -m |awk '/Mem:/ {print $3"M" }' );
# Thermal
DWM_TEM="$(( `cat /sys/class/thermal/thermal_zone0/temp` / 1000 ))C"
# Volume Level
DWM_VOL=$( amixer -c1 sget Master | awk -vORS='' '/Mono:/ {print($6$4)}' );
# Date and Time
DWM_CLOCK=$( date +%a\ %b\ %d\ %H:%M );
# Overall output command
DWM_STATUS="Power:[$DWM_BATTERY]|Mem:$DWM_MEM|TEM:$DWM_TEM|Vol:$DWM_VOL|$DWM_CLOCK";
xsetroot -name "$DWM_STATUS";
sleep $DWM_RENEW_INT;
done &
# Window Manager
while true; do
dwm
done