81 lines
1.5 KiB
Bash
Executable File
81 lines
1.5 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
# this file is executed when calling startx
|
|
|
|
# To run different WM, run:
|
|
# startx ~/.xinitrc WM
|
|
|
|
|
|
# Session to run if none given
|
|
session=${1:-openbox}
|
|
|
|
# set ENV window manager for use in other scripts
|
|
export WM="$session"
|
|
|
|
# bspwm requires this to be set
|
|
export XDG_CONFIG_HOME=$HOME/.config
|
|
|
|
# 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
|
|
|
|
if [ -f /etc/X11/xinit/.Xmodmap ]; then
|
|
xmodmap /etc/X11/xinit/.Xmodmap
|
|
fi
|
|
|
|
# user init scripts and settings
|
|
if [ -f ~/.Xmodmap ]; then
|
|
xmodmap ~/.Xmodmap
|
|
fi
|
|
|
|
if [ -f ~/.Xresources ]; then
|
|
xrdb -merge ~/.Xresources
|
|
fi
|
|
|
|
if [ -f ~/.xprofile ]; then
|
|
source ~/.xprofile
|
|
fi
|
|
|
|
|
|
if hash gnome-keyring &>/dev/null; then
|
|
# keyring for storing passwords
|
|
gnome-keyring-daemon --start --components=pkcs11 &
|
|
fi
|
|
|
|
if [ -x "/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1" ]; then
|
|
# run policy kit
|
|
/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 &
|
|
fi
|
|
|
|
# keyboard repeat rate
|
|
kbdrate -d 400 -r 50
|
|
xset r rate 400 50
|
|
|
|
# display timeout
|
|
xset s 3600 3600
|
|
|
|
|
|
# Do NOT put code below this case statement
|
|
case $session in
|
|
i3|i3wm)
|
|
exec i3
|
|
;;
|
|
bsp|bspwm)
|
|
exec bspwm
|
|
;;
|
|
xfce|xfce4)
|
|
exec startxfce4
|
|
;;
|
|
openbox)
|
|
exec openbox-session
|
|
;;
|
|
dwm)
|
|
exec dwm
|
|
;;
|
|
*)
|
|
exec "$1" # Unknown, try running it
|
|
esac
|