home/.config/concession/tasks/00_bspwm.sh

65 lines
1.9 KiB
Bash

#! /usr/bin/env bash
#
# bspwm.sh
# Copyright (C) 2018 salt <salt@lap-th-e560-0>
#
# Distributed under terms of the MIT license.
#
main() {
if ! pgrep -U "$UID" bspwm > /dev/null 2>&1; then
tsk_log "Not under bspwm" 1
return 1
fi
tsk_log "Configuring bspwm miscellanea"
## Behavior
tsk_log "Configuring behavior" 0
# Tiling behavior
bspc config split_ratio 0.50
bspc config remove_disabled_monitors false
bspc config remove_unplugged_monitors true
# Pointer behavior
bspc config click_to_focus any
bspc config pointer_follows_focus false
bspc config pointer_follows_monitor true
bspc config pointer_modifier mod1
bspc config pointer_action1 move #LMB
bspc config pointer_action2 resize_corner #RMB
## Looks
tsk_log "Configuring looks" 0
# Padding
bspc config border_width ${BSPWM_BORDER_WIDTH:-2}
bspc config window_gap ${BSPWM_WINDOW_GAP:-8}
bspc config single_monocle false
bspc config borderless_monocle false
bspc config gapless_monocle true
# Colors
bspc config normal_border_color "#3c3836" #Unfocused
bspc config active_border_color "#458588" #Focused, but current monitor isn't
bspc config focused_border_color "#83a598" #Focused completely
bspc config presel_feedback_color "#9b9b9b" #???
tsk_log "Setting window rules" 0
bspc rule -r '*'
bspc rule -a Firefox desktop=1
bspc rule -a Firefox-esr desktop=1
bspc rule -a Waterfox desktop=1
bspc rule -a Liferea desktop=6
bspc rule -a discord desktop=7
bspc rule -a spotify desktop=8
bspc rule -a 'Minecraft 1.7.10' state=fullscreen
bspc rule -a Xephyr state=pseudo_tiled
# For fullscreen Wine
bspc rule -a explorer.exe state=fullscreen
# Plasma rules
bspc rule -a plasmashell state=floating sticky=on border=off
bspc rule -a krunner state=floating layer=above sticky=on border=off
# Widgets
bspc rule -a Conky state=floating layer=below sticky=on
bspc rule -a pavucontrol-qt state=floating layer=above sticky=on
}
main $@