bspwm: changes, i dont fucking remember what i did lmao
parent
73900c6833
commit
2ec1dab052
|
@ -1,13 +1,44 @@
|
||||||
#! /bin/sh
|
#! /bin/sh
|
||||||
|
|
||||||
# set primary monitor and lower resolution
|
monitor_internal=eDP
|
||||||
xrandr --output HDMI-A-0 --mode 2560x1440 --primary --right-of eDP
|
monitor_external=HDMI-A-0
|
||||||
|
monitor_primary=$monitor_external
|
||||||
|
|
||||||
|
# check if we are connected to an second monitor
|
||||||
|
dock_status=docked
|
||||||
|
if xrandr | grep "$monitor_external disconnected"; then
|
||||||
|
dock_status=undocked
|
||||||
|
monitor_primary=$monitor_internal
|
||||||
|
fi
|
||||||
|
|
||||||
|
# set primary monitor
|
||||||
|
xrandr --output $monitor_primary --primary
|
||||||
|
|
||||||
|
if [[ "$dock_status" = "docked" ]]; then
|
||||||
|
# lower external monitor resolution and set up positioning
|
||||||
|
xrandr --output $monitor_external --mode 2560x1440 --right-of $monitor_internal
|
||||||
|
fi
|
||||||
|
|
||||||
# start sxhkd
|
# start sxhkd
|
||||||
pgrep -x sxhkd > /dev/null || sxhkd &
|
pgrep -x sxhkd > /dev/null || sxhkd &
|
||||||
|
|
||||||
bspc monitor eDP -d 1 2 3 4 5
|
# create/move desktops
|
||||||
bspc monitor HDMI-A-0 -d 6 7 8 9 10
|
if [[ "$dock_status" = "docked" ]]; then
|
||||||
|
if [[ "$(bspc query -D -m $monitor_internal | wc -l)" = "10" ]]; then
|
||||||
|
bspc query -D -m $monitor_internal --names | tail -5 | xargs -rd'\n' -i'{}' bspc desktop {} -m $monitor_external --follow
|
||||||
|
else
|
||||||
|
bspc monitor $monitor_internal -d 1 2 3 4 5
|
||||||
|
bspc monitor $monitor_external -d 6 7 8 9 10
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
if [[ "$(bspc query -D --names | grep -v ghost | wc -l)" = "10" ]]; then
|
||||||
|
# create ghost desktop so all external desktops can be moved
|
||||||
|
#bspc monitor $monitor_external -d ghost
|
||||||
|
bscp query -D -m $monitor_external --names | grep -v ghost | xargs -rd'\n' -i'{}' bspc desktop {} -m $monitor_internal --follow
|
||||||
|
else
|
||||||
|
bspc monitor $monitor_internal -d 1 2 3 4 5 6 7 8 9 10
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
bspc config border_width 4
|
bspc config border_width 4
|
||||||
bspc config window_gap 15
|
bspc config window_gap 15
|
||||||
|
@ -25,11 +56,22 @@ bspc config urgent_border_color \#cba6f7
|
||||||
bspc config presel_feedback_color \#cba6f7
|
bspc config presel_feedback_color \#cba6f7
|
||||||
|
|
||||||
# rules
|
# rules
|
||||||
bspc rule -a discord -o node=@^1:^1:/2 desktop='1' follow=off focus=off
|
bspc rule -a discord -o node=@^1:^1:/2 desktop=1 follow=off focus=off
|
||||||
bspc rule -a Element -o node=@^1:^1:/1 desktop='1'
|
bspc rule -a Element -o node=@^1:^1:/1 desktop=1
|
||||||
bspc rule -a TelegramDesktop -o node=@^1:^1:/1 desktop='1'
|
bspc rule -a TelegramDesktop -o node=@^1:^1:/1 desktop=1
|
||||||
bspc rule -a firefox desktop='6' follow=off
|
|
||||||
bspc rule -a Claws-mail desktop='7' follow=off
|
firefox_desktop=6
|
||||||
|
claws_desktop=7
|
||||||
|
obsidian_desktop=8
|
||||||
|
if [[ "$dock_status" = "undocked" ]]; then
|
||||||
|
firefox_desktop=2
|
||||||
|
claws_desktop=3
|
||||||
|
obsidian_desktop=4
|
||||||
|
fi
|
||||||
|
|
||||||
|
bspc rule -a firefox desktop=$firefox_desktop follow=off
|
||||||
|
bspc rule -a Claws-mail desktop=$claws_desktop follow=off
|
||||||
|
bspc rule -a obsidian desktop=$obsidian_desktop follow=off
|
||||||
bspc rule -a REAPER desktop='10' follow=off
|
bspc rule -a REAPER desktop='10' follow=off
|
||||||
|
|
||||||
# floating windows
|
# floating windows
|
||||||
|
@ -37,6 +79,7 @@ bspc rule -a Pavucontrol state=floating rectangle=600x800+0+0 center=on
|
||||||
bspc rule -a 1Password state=floating rectangle=1000x900+0+0 center=on
|
bspc rule -a 1Password state=floating rectangle=1000x900+0+0 center=on
|
||||||
bspc rule -a Org.gnome.Nautilus state=floating rectangle=1200x900+0+0 center=on
|
bspc rule -a Org.gnome.Nautilus state=floating rectangle=1200x900+0+0 center=on
|
||||||
bspc rule -a kitty_float state=floating rectangle=1000x700+0+0 center=on
|
bspc rule -a kitty_float state=floating rectangle=1000x700+0+0 center=on
|
||||||
|
bspc rule -a Popsicle-gtk state=floating rectangle=800x300+0+0 center=on
|
||||||
|
|
||||||
# startup
|
# startup
|
||||||
picom --experimental-backends &
|
picom --experimental-backends &
|
||||||
|
@ -44,6 +87,8 @@ polybar-msg cmd quit
|
||||||
polybar left &
|
polybar left &
|
||||||
polybar right &
|
polybar right &
|
||||||
dunst &
|
dunst &
|
||||||
|
rofi-polkit-agent &
|
||||||
|
|
||||||
|
|
||||||
if [ ! -f /tmp/startup.lock ]; then
|
if [ ! -f /tmp/startup.lock ]; then
|
||||||
touch /tmp/startup.lock
|
touch /tmp/startup.lock
|
||||||
|
@ -54,4 +99,5 @@ if [ ! -f /tmp/startup.lock ]; then
|
||||||
|
|
||||||
firefox &
|
firefox &
|
||||||
claws-mail &
|
claws-mail &
|
||||||
|
obsidian &
|
||||||
fi
|
fi
|
||||||
|
|
Loading…
Reference in New Issue