66 lines
1.7 KiB
Bash
Executable File
66 lines
1.7 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
# this file is executed when calling startx
|
|
|
|
# to start a different WM, set session="WM" below, or in console run:
|
|
# startx ~/.xinitrc WM
|
|
|
|
|
|
# session to run if none passed as first arg ($1)
|
|
session="${1:-openbox}"
|
|
|
|
# set environment wm for use in scripts
|
|
export WM="$session"
|
|
|
|
# default arch xinit scripts
|
|
if [ -d /etc/X11/xinit/xinitrc.d ]; then
|
|
for f in /etc/X11/xinit/xinitrc.d/*.sh; do
|
|
[ -x "$f" ] && . "$f"
|
|
done
|
|
fi
|
|
|
|
# user init scripts and settings
|
|
[ -f /etc/X11/xinit/.Xmodmap ] && xmodmap /etc/X11/xinit/.Xmodmap
|
|
[ -f ~/.Xmodmap ] && xmodmap ~/.Xmodmap
|
|
[ -f ~/.Xresources ] && xrdb -merge ~/.Xresources
|
|
[ -f ~/.xprofile ] && source ~/.xprofile
|
|
|
|
# some things to start for awesome
|
|
# other wm already have these started elsewhere
|
|
if [[ $session == "awesome" ]]; then
|
|
|
|
# keyring for storing passwords
|
|
if hash gnome-keyring &>/dev/null; then
|
|
gnome-keyring-daemon --start --components=pkcs11 &
|
|
fi
|
|
|
|
# gnome polkit
|
|
if [[ -x /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 ]]; then
|
|
/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 &
|
|
fi
|
|
|
|
# simulate Alt+F1 with just pressing Super
|
|
if hash ksuperkey &>/dev/null; then
|
|
ksuperkey -e 'Super_L=Alt_L|F1' &
|
|
ksuperkey -e 'Super_R=Alt_L|F1' &
|
|
fi
|
|
fi
|
|
|
|
# display timeout and sleep
|
|
xset s 3600 3600
|
|
xset dpms 3600 3700 4000
|
|
|
|
# keyboard repeat rate
|
|
xset r rate 400 50
|
|
kbdrate -d 400 -r 50
|
|
|
|
# do NOT put commands below the exec lines
|
|
case $session in
|
|
i3|i3wm) exec i3 ;;
|
|
bsp|bspwm) exec bspwm ;;
|
|
xfce|xfce4) exec startxfce4 ;;
|
|
openbox) exec openbox-session ;;
|
|
awesome) exec awesome ;;
|
|
*) exec "$session" # Unknown, try running it
|
|
esac
|