#!/bin/sh
+echo "Starting new session"
+
+DATE=$(date "+%Y%m%d_%H%M%S")
+# track xsession errors
+mv ~/.xsession-errors ~/.xsession-errors_${DATE};
+ln -sf ~/.xsession-errors_${DATE} ~/.xsession-errors-current;
+# delete old xsession error files
+find ~/ -maxdepth 1 -mindepth 1 -type f \
+ -iname '.xsession-errors*' -ctime +30 -delete;
+
if locale -a |grep -qi en_US.utf8; then
LANG="en_US.UTF-8"
else
export TMPDIR=$(echo ~/tmp)
fi;
-if [ "$HOSTNAME" == "archimedes" ]; then
- xmodmap -e 'keycode 158 = XF86AudioRaiseVolume'
- xmodmap -e 'keycode 146 = XF86AudioLowerVolume'
- xset r rate 170 40
+# No clue why this has changed from Alt_R to Down, but we really want Down.
+if ! xmodmap -pk|grep -qe '116.*Down'; then
+ xmodmap -e 'keycode 116 = Super_L'
+ xmodmap -e 'keycode 115 = Multi_key'
fi;
-
-xmodmap -e 'keycode 115 = Multi_key'
-xmodmap -e 'keycode 116 = Super_L'
xmodmap -e 'clear mod4'
-xmodmap -e 'add mod4 = Super_L'
+xmodmap -e 'add mod4 = Super_L Super_R'
if [ -e ~/.Xresources_$HOSTNAME ]; then
xrdb -merge < ~/.Xresources_$HOSTNAME;
. ~/.xsession_$HOSTNAME
fi;
+# make a backup of the .Xauthority
+if [ -e ~/.Xauthority ]; then
+ cp -f .Xauthority .Xauthority.bak
+fi
+
if [ -x /usr/bin/xscreensaver -a -e ~/.xscreensaver ]; then
- /usr/bin/xscreensaver &
+ ( XENVIRONMENT=~/.xscreensaver /usr/bin/xscreensaver >/dev/null 2>&1 &)
+elif [ -x /usr/bin/xautolock ]; then
+ (/usr/bin/xautolock -notifier true -bell 0 >/de/vnull 2>&1 &)
+fi;
+
+if which redshift >/dev/null 2>&1; then
+ (redshift -l 40.11059:-88.20727 >/dev/null 2>&1 &)
+fi;
+
+if which mpd >/dev/null 2>&1 && [ -e ~/.mpdconf ]; then
+ (mpd >/dev/null 2>&1 &);
+ MPD_HOST=$(awk '/^bind_to_address/{print $2}' ~/.mpdconf|sed "s|~|$HOME|; s/^\"//; s/\"$//; ");
+ export MPD_HOST;
fi;
-if [ -x /usr/bin/ion3 ]; then
+if [ -x /usr/bin/i3 ]; then
+ if [ -x ~/.config/i3/build_config.sh ]; then
+ ~/.config/i3/build_config.sh;
+ fi;
+ exec /usr/bin/i3;
+elif [ -x /usr/bin/awesome ]; then
+ exec /usr/bin/awesome;
+elif [ -x /usr/bin/ion3 ]; then
exec /usr/bin/ion3;
elif [ -x /usr/bin/openbox ]; then
exec /usr/bin/openbox;