bspwm: Fix bugs in bspwmrc, add logging

FINALLY got around to fixing that shitty god damn multi-monitor code
This commit is contained in:
Salt 2018-07-18 18:14:57 -05:00
parent d193746478
commit d88c181842

View File

@ -26,15 +26,18 @@ if [[ "$PATH" != "*$HOME/.local/bin*" ]]; then
fi fi
## bspwm GENERAL CONFIGURATION ## bspwm GENERAL CONFIGURATION
printf "[..] Setting up monitors\n"
monitors=$(bspc query -M | wc -l) monitors=$(bspc query -M | wc -l)
desktops=9 desktops=8
deskpermon=$(expr $desktops / $monitors) deskpermon=$(expr $desktops / $monitors)
i=1 i=1
printf " [..] Putting $desktops desktops across $monitors monitors, $deskpermon each\n"
for monitor in $(bspc query -M); do for monitor in $(bspc query -M); do
until [[ "$(expr $i % $deskpermon)" == *"0"* ]]; do until [[ "$(expr $i % \( $deskpermon + 1 \))" == "0" ]]; do
layout="$layout $i" layout="$layout $i"
i=$(expr $i + 1) i=$(expr $i + 1)
done done
printf " [..] Giving monitor $monitor layout $layout\n"
bspc monitor $monitor -d $layout bspc monitor $monitor -d $layout
layout="$i" layout="$i"
i=$(expr $i + 1) i=$(expr $i + 1)
@ -44,6 +47,7 @@ unset monitors
unset desktops unset desktops
unset deskpermon unset deskpermon
printf "[..] Configuring bspwm\n"
bspc config border_width 4 bspc config border_width 4
bspc config window_gap 6 bspc config window_gap 6
@ -53,7 +57,7 @@ bspc config gapless_monocle true
bspc config remove_disabled_monitors true bspc config remove_disabled_monitors true
bspc config remove_unplugged_monitors true bspc config remove_unplugged_monitors true
bspc config click_to_focus true bspc config click_to_focus any
bspc config pointer_follows_monitor true bspc config pointer_follows_monitor true
bspc config pointer_modifier mod1 bspc config pointer_modifier mod1
@ -63,9 +67,9 @@ bspc config pointer_action2 resize_corner
bspc config normal_border_color "#3c3836" bspc config normal_border_color "#3c3836"
bspc config active_border_color "#a0a0a0" bspc config active_border_color "#a0a0a0"
bspc config focused_border_color "#83a598" bspc config focused_border_color "#83a598"
bspc config presel_border_color "#9b9b9b" bspc config presel_feedback_color "#9b9b9b"
bspc config urgent_border_color "#fabd2f"
printf "[..] Setting window rules\n"
## bspwm WINDOW RULES ## bspwm WINDOW RULES
bspc rule -r '*' bspc rule -r '*'
bspc rule -a Waterfox desktop=1 bspc rule -a Waterfox desktop=1
@ -76,6 +80,7 @@ bspc rule -a 'Minecraft 1.7.10' state=fullscreen
bspc rule -a plasmashell state=floating sticky=on border=off bspc rule -a plasmashell state=floating sticky=on border=off
bspc rule -a krunner state=floating layer=above sticky=on border=off bspc rule -a krunner state=floating layer=above sticky=on border=off
printf "[..] Performing simple configuration\n"
## SIMPLE CONFIGURATION ## SIMPLE CONFIGURATION
xset -b xset -b
xset -dpms xset -dpms
@ -85,23 +90,30 @@ xrdbupdate
## SERVICES AND DAEMONS ## SERVICES AND DAEMONS
feh --randomize --bg-fill ~/Pictures/Wallpapers/.active & feh --randomize --bg-fill ~/Pictures/Wallpapers/.active &
printf "[..] Killing existing daemons\n"
services="sxhkd polybar conky dunst compton" services="sxhkd polybar conky dunst compton"
for service in $services; do for service in $services; do
printf " [..] Killing $service\n"
killall $service killall $service
done done
# Don't start the compositor in a VM # Don't start the compositor in a VM
if [[ $(hostname) != "vm"* ]]; then if [[ $(hostname) != "vm"* ]]; then
printf " [..] Starting compton\n"
compton & compton &
fi fi
# Different startup for OpenBSD and Linux # Different startup for OpenBSD and Linux
if [[ $(uname) == "Linux" ]]; then if [[ $(uname) == "Linux" ]]; then
printf "[..] Starting Linux tasks\n"
compton & compton &
$HOME/.config/polybar/start.sh & $HOME/.config/polybar/start.sh &
sxhkd & sxhkd &
else else
printf "[..] Starting OpenBSD tasks\n"
sxhkd -c $XDG_CONFIG_HOME/sxhkd/sxhkdrc-obsd & sxhkd -c $XDG_CONFIG_HOME/sxhkd/sxhkdrc-obsd &
fi fi
# Start these all the time regardless of platform # Start these all the time regardless of platform
printf "[..] Starting platform-independent tasks\n"
conky& conky&
dunst& dunst&
printf "[..] Finished initialization\n"