#!/usr/local/bin/dash
run() {
	if ! pgrep "$1";
	then
		"$@"
	fi
}

pkill alacritty
pkill compton

screens=1
if xrandr | grep VGA1 | grep " connected"; then
	screens=3
	/usr/home/jozan/.local/bin/triplescreen
elif xrandr | grep DP1 | grep " connected"; then
	screens=2
	/usr/home/jozan/.local/bin/dualscreen
fi
sleep 1
if [ $screens -eq 1 ]; then
	bspc monitor LVDS1 -d 01 02 03 04 05 06 07 08 09 10 11 12
fi

bspc config border_width			1
bspc config window_gap				0

bspc config focused_border_color	\#b92121

bspc config split_ratio				0.50
bspc config borderless_monocle		true
bspc config gapless_monocle			true
bspc config single_monocle			true

if [ $screens -eq 3 ]; then
	bspc rule -a Emacs desktop=01 follow=true
	bspc rule -a Firefox desktop=08 follow=true
	bspc rule -a Wine desktop=07 state=floating
elif [ $screens -eq 2 ]; then
	bspc rule -a Emacs desktop=01 follow=true
	bspc rule -a Firefox desktop=08 follow=true
	bspc rule -a Wine desktop=07 state=floating
elif [ $screens -eq 1 ]; then
	bspc rule -a Emacs desktop=01 follow=true
	bspc rule -a Firefox desktop=08 follow=true
	bspc rule -a Wine desktop=04 state=floating
fi
bspc rule -a Dunst layer=above
bspc rule -a Zathura state=tiled
bspc rule -a qTox desktop=12
bspc rule -a DergodsRealmII desktop=4 state=floating

run compton >/dev/null 2>&1 &
if [ $screens -eq 3 ]; then
	feh --bg-fill /usr/home/jozan/Pictures/wallpaper.jpg --bg-fill /usr/home/jozan/Pictures/wallpaper.jpg >/dev/null 2>&1
elif [ $screens -eq 2 ]; then
	feh --bg-fill /usr/home/jozan/Pictures/wallpaper.jpg --bg-fill /usr/home/jozan/Pictures/wallpaper.jpg >/dev/null 2>&1
else
	feh --bg-fill /usr/home/jozan/Pictures/wallpaper.jpg >/dev/null 2>&1
fi
xset r rate 200 100 >/dev/null 2>&1
setxkbmap -layout us,fr -option grp:alt_shift_toggle
run dunst > /dev/null 2>&1 &
run lowbat --say "You're low, partner" >/dev/null 2>&1 &
sleep 2

run emacs &
sleep 12
if [ $screens -eq 3 ]; then
	bspc desktop -f 09
	alacritty -e dash -c 'clear; cowsay "Welcome back, partner! And remember to try glest!"; zsh -i' &
	sleep 1
	alacritty -e htop &
	sleep 1
	alacritty -e gotop &
	sleep 1
	bspc node -f west
	alacritty -e vifm &
	sleep 1
	bspc node -z right 180 0
	bspc node -z top 0 70
	bspc node -f east
	bspc node -f north
	bspc node -z bottom 0 -280
	bspc node -f north
	bspc node -f west
elif [ $screens -eq 2 ]; then
	bspc desktop -f 09
	alacritty -e dash -c 'clear; cowsay "Welcome back, partner! And remember to try glest!"; zsh -i' &
	sleep 1
	alacritty -e htop &
	sleep 1
	alacritty -e gotop &
	sleep 1
	bspc node -f west
	alacritty -e vifm &
	sleep 1
	bspc node -z right 180 0
	bspc node -z top 0 70
	bspc node -f east
	bspc node -f north
	bspc node -z bottom 0 -280
	bspc node -f north
	bspc node -f west
elif [ $screens -eq 1 ]; then
	bspc desktop -f 09
	alacritty -e dash -c 'clear; cowsay "Welcome back, partner!"; zsh -i' &
	sleep 1
	bspc node -p west
	alacritty -e htop &
	sleep 1
	alacritty -e gotop &
	sleep 1
	bspc node -f east
	alacritty -e vifm &
	sleep 1
	bspc node -f west
	bspc node -f north
	bspc node -z bottom 0 -280
	bspc node -z right -220 0
	bspc node -f east
	bspc node -z top 0 70
	bspc node -f north
fi
sleep 1

if curl https://www.freebsd.org/ >/dev/null 2>&1; then
	git -C ~/.elfeed pull origin master >/dev/null 2>&1 &
	run qtox &
	if [ $screens -eq 3 ]; then
		bspc desktop -f 09
	elif [ $screens -eq 2 ]; then
		bspc desktop -f 09
	elif [ $screens -eq 1 ]; then
		bspc desktop -f 09
	fi
fi