dotfiles/.xinitrc

72 lines
1.6 KiB
Plaintext
Raw Permalink Normal View History

2021-04-15 22:45:15 +00:00
#!/bin/bash
#
# ~/.xinitrc
#
# Executed by startx (run your window manager from here)
2021-04-15 22:45:15 +00:00
userresources=$HOME/.Xresources
usermodmap=$HOME/.Xmodmap
sysresources=/etc/X11/xinit/.Xresources
sysmodmap=/etc/X11/xinit/.Xmodmap
2021-04-15 22:45:15 +00:00
DEFAULT_SESSION='i3 --shmlog-size 8000000'
# 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
2021-04-15 22:45:15 +00:00
if [ -f "$usermodmap" ]; then
xmodmap "$usermodmap"
fi
2021-04-15 22:45:15 +00:00
# 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
get_session(){
#local dbus_args=(--sh-syntax --exit-with-session) # <-- broken, use below
local dbus_args=(--sh-syntax)
case $1 in
awesome) dbus_args+=(awesome) ;;
bspwm) dbus_args+=(bspwm-session) ;;
budgie) dbus_args+=(budgie-desktop) ;;
cinnamon) dbus_args+=(cinnamon-session) ;;
deepin) dbus_args+=(startdde) ;;
enlightenment) dbus_args+=(enlightenment_start) ;;
fluxbox) dbus_args+=(startfluxbox) ;;
gnome) dbus_args+=(gnome-session) ;;
i3|i3wm) dbus_args+=(i3 --shmlog-size 0) ;;
jwm) dbus_args+=(jwm) ;;
kde) dbus_args+=(startplasma-x11) ;;
lxde) dbus_args+=(startlxde) ;;
lxqt) dbus_args+=(lxqt-session) ;;
mate) dbus_args+=(mate-session) ;;
xfce) dbus_args+=(xfce4-session) ;;
openbox) dbus_args+=(openbox-session) ;;
*) dbus_args+=($DEFAULT_SESSION) ;;
esac
# echo "${dbus_args[*]}" # if broken, try this
echo "dbus-launch ${dbus_args[*]}"
}
# turn off annoying beep
xset b off
2021-04-15 22:45:15 +00:00
exec $(get_session "$1")