#!/bin/zsh # using zsh to load .zshenv (eg. for PATH) but file is sh-compatible sysmodmap=/usr/local/etc/X11/xinit/.Xmodmap sysresources=/usr/local/etc/X11/xinit/.Xresources usermodmap=~/.Xmodmap userresources=~/.Xresources if [ -f $sysresources ]; then xrdb -merge $sysresources fi if [ -f $sysmodmap ]; then xmodmap $sysmodmap fi if [ -f "$userresources" ]; then xrdb -merge "$userresources" fi if [ -f "$usermodmap" ]; then xmodmap "$usermodmap" fi # redshift, root image redon & "$HOME/.fehbg" # Xorg settings xset r rate 290 26 & xset m 1/1 0 & xset s off xset dpms 0 0 600 find -L "${XDG_DATA_HOME:-~/share}/fonts" -type d -mindepth 1 -maxdepth 1 | while read -r x; do xset +fp $x/ done xset fp rehash # root terminal urxvt -name TermBg1 -override-redirect -geometry x5+0--1 \ -e tail -F /var/log/messages & xdotool search --limit 1 --sync --classname TermBg1 windowsize --usehints 100% 6 # tray icons #"$HOME/src/phwmon/phwmon.py" --mem --mem_percent --net --io --bg \#0000 & volumeicon & # daemons dunst & mpc-notify -d & xautolock -time 10 -locker "$HOME/bin/lck" & xbanish & eval `ssh-agent` if [ -z "$TERMINAL" -a \( -x /usr/bin/urxvtd -o -x /usr/local/bin/urxvtd \) ]; then for i in 1 2; do # try to start client twice, once before checking for daemon # and another after trying to start it urxvtc -e exit 2>/dev/null if [ $? -eq 2 ]; then # daemon not started, attempt to start once if [ $i -eq 1 ]; then urxvtd -q -o -f else TERMINAL=urxvt export TERMINAL fi else TERMINAL=urxvtc export TERMINAL break fi done unset i fi # try to wait for session to start (sleep 0.1 && tint2) & # x220t # TODO: check hostname to load auxillary things # TODO: reformat for linux #(sleep 0.1 "$HOME/bin/acpi_ac" "0x0`sysctl -n hw.acpi.acline`") & # load any global scripts if [ -d /usr/local/etc/X11/xinit/xinitrc.d ]; then for f in /usr/local/etc/X11/xinit/xinitrc.d/?*.sh; do [ -x "$f" ] && . "$f" done unset f fi # start session if [ -z "$1" ]; then session=i3 else session=$1 shift fi exec $session "$@" # cleanup #TODO: trap this ssh-agent -k