From d88c1818425efc41c821201cc3d5c2bd8107de79 Mon Sep 17 00:00:00 2001 From: Salt Date: Wed, 18 Jul 2018 18:14:57 -0500 Subject: [PATCH] bspwm: Fix bugs in bspwmrc, add logging FINALLY got around to fixing that shitty god damn multi-monitor code --- .config/bspwm/bspwmrc | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/.config/bspwm/bspwmrc b/.config/bspwm/bspwmrc index 5f3327cd..35702cd1 100755 --- a/.config/bspwm/bspwmrc +++ b/.config/bspwm/bspwmrc @@ -26,15 +26,18 @@ if [[ "$PATH" != "*$HOME/.local/bin*" ]]; then fi ## bspwm GENERAL CONFIGURATION +printf "[..] Setting up monitors\n" monitors=$(bspc query -M | wc -l) -desktops=9 +desktops=8 deskpermon=$(expr $desktops / $monitors) i=1 +printf " [..] Putting $desktops desktops across $monitors monitors, $deskpermon each\n" for monitor in $(bspc query -M); do - until [[ "$(expr $i % $deskpermon)" == *"0"* ]]; do + until [[ "$(expr $i % \( $deskpermon + 1 \))" == "0" ]]; do layout="$layout $i" i=$(expr $i + 1) done + printf " [..] Giving monitor $monitor layout $layout\n" bspc monitor $monitor -d $layout layout="$i" i=$(expr $i + 1) @@ -44,6 +47,7 @@ unset monitors unset desktops unset deskpermon +printf "[..] Configuring bspwm\n" bspc config border_width 4 bspc config window_gap 6 @@ -53,7 +57,7 @@ bspc config gapless_monocle true bspc config remove_disabled_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_modifier mod1 @@ -63,9 +67,9 @@ bspc config pointer_action2 resize_corner bspc config normal_border_color "#3c3836" bspc config active_border_color "#a0a0a0" bspc config focused_border_color "#83a598" -bspc config presel_border_color "#9b9b9b" -bspc config urgent_border_color "#fabd2f" +bspc config presel_feedback_color "#9b9b9b" +printf "[..] Setting window rules\n" ## bspwm WINDOW RULES bspc rule -r '*' 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 krunner state=floating layer=above sticky=on border=off +printf "[..] Performing simple configuration\n" ## SIMPLE CONFIGURATION xset -b xset -dpms @@ -85,23 +90,30 @@ xrdbupdate ## SERVICES AND DAEMONS feh --randomize --bg-fill ~/Pictures/Wallpapers/.active & +printf "[..] Killing existing daemons\n" services="sxhkd polybar conky dunst compton" for service in $services; do + printf " [..] Killing $service\n" killall $service done # Don't start the compositor in a VM if [[ $(hostname) != "vm"* ]]; then + printf " [..] Starting compton\n" compton & fi # Different startup for OpenBSD and Linux if [[ $(uname) == "Linux" ]]; then + printf "[..] Starting Linux tasks\n" compton & $HOME/.config/polybar/start.sh & sxhkd & else + printf "[..] Starting OpenBSD tasks\n" sxhkd -c $XDG_CONFIG_HOME/sxhkd/sxhkdrc-obsd & fi # Start these all the time regardless of platform +printf "[..] Starting platform-independent tasks\n" conky& dunst& +printf "[..] Finished initialization\n"