This repository has been archived on 2024-09-01. You can view files and clone it, but cannot push or open issues or pull requests.
al-skel/home/.xinitrc

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