fix: polybar and bspwm config per host

This commit is contained in:
Tobias Reisinger 2020-02-13 18:25:00 +01:00
parent 9c3059af6f
commit 743a3f8f26
3 changed files with 334 additions and 334 deletions

View file

@ -2,13 +2,21 @@
sxhkd & sxhkd &
bspc monitor HDMI-1 -d 01 02 03 04 05 06 07 host_name=$(hostname)
bspc monitor DVI-D-1 -d 08 09 10 if [[ $host_name == "portalo" ]]; then
bspc monitor HDMI-1 -d 01 02 03 04 05 06 07
bspc monitor DVI-D-1 -d 08 09 10
bspc desktop ^7 --layout monocle
bspc desktop ^9 --layout monocle
bspc desktop ^10 --layout monocle
elif [[ $host_name == *"laptop"* ]]; then
bspc monitor eDP1 -d 01 02 03 04 05 06 07 08 09 10
else
bspc monitor primary -d 01 02 03 04 05 06 07 08 09 10
fi
bspc desktop ^1 --layout monocle bspc desktop ^1 --layout monocle
bspc desktop ^7 --layout monocle
bspc desktop ^9 --layout monocle
bspc desktop ^10 --layout monocle
bspc config border_width 1 bspc config border_width 1
bspc config window_gap 10 bspc config window_gap 10

View file

@ -1,442 +1,428 @@
[colors] [colors]
background = #222 background = #222
background-alt = #444 background-alt = #444
foreground = #dfdfdf foreground = #dfdfdf
foreground-alt = #555 foreground-alt = #555
primary = #ffb52a primary = #ffb52a
secondary = #e60053 secondary = #e60053
alert = #bd2c40 alert = #bd2c40
[bar/primary] [bar/base]
monitor = HDMI-1 width = 100%
width = 100% height = 27
height = 27 ; offset-x = 1%
;offset-x = 1% ; offset-y = 1%
;offset-y = 1% radius = 0.0
radius = 0.0 fixed-center = true
fixed-center = false bottom = true
bottom = true
background = ${colors.background} background = ${colors.background}
foreground = ${colors.foreground} foreground = ${colors.foreground}
line-size = 3 line-size = 3
line-color = #f00 line-color = #f00
border-size = 0 border-size = 0
border-color = #00000000 border-color = #00000000
padding-left = 0 padding-left = 0
padding-right = 2 padding-right = 2
module-margin-left = 1 module-margin-left = 1
module-margin-right = 2 module-margin-right = 2
font-0 = fixed:pixelsize=10;1 font-0 = fixed:pixelsize=10;1
font-1 = unifont:fontformat=truetype:size=8:antialias=false;0 font-1 = unifont:fontformat=truetype:size=8:antialias=false;0
font-2 = siji:pixelsize=10;1 font-2 = siji:pixelsize=10;1
font-3 = Font Awesome 5 Pro Regular:size=12
font-4 = Font Awesome 5 Pro Light:size=12
font-5 = Font Awesome 5 Pro Solid:size=12
font-6 = Font Awesome 5 Brands:size=12
modules-left = bspwm i3 monitor =
modules-center = mpd
modules-right = pulseaudio memory cpu eth temperature date powermenu
tray-position = right tray-position = right
tray-padding = 2 tray-padding = 2
wm-restack = bspwm wm-restack = bspwm
;wm-restack = i3 ; wm-restack = i3
;override-redirect = true ; override-redirect = true
scroll-up = bspwm-desknext scroll-up = bspwm-desknext
scroll-down = bspwm-deskprev scroll-down = bspwm-deskprev
cursor-click = pointer cursor-click = pointer
cursor-scroll = normal cursor-scroll = normal
[bar/secondary] [bar/portalo-primary]
monitor = DVI-D-1 inherit = bar/base
width = 100%
height = 27
;offset-x = 1%
;offset-y = 1%
radius = 0.0
fixed-center = false
bottom = true
background = ${colors.background} monitor = HDMI-1
foreground = ${colors.foreground}
line-size = 3 modules-left = bspwm i3
line-color = #f00 modules-center = mpd
modules-right = pulseaudio memory cpu eth temperature date powermenu
border-size = 0 [bar/portalo-secondary]
border-color = #00000000 inherit = bar/base
padding-left = 0 monitor = DVI-D-1
padding-right = 2
module-margin-left = 1 modules-left = bspwm i3
module-margin-right = 2 modules-center = mpd
modules-right = pulseaudio memory cpu eth temperature date powermenu
font-0 = fixed:pixelsize=10;1 tray-position = none
font-1 = unifont:fontformat=truetype:size=8:antialias=false;0
font-2 = siji:pixelsize=10;1
modules-left = bspwm i3 [bar/laptop-primary]
modules-center = mpd inherit = bar/base
modules-right = pulseaudio memory cpu eth temperature date powermenu
wm-restack = bspwm monitor = eDP1
;wm-restack = i3
;override-redirect = true modules-left = bspwm i3
modules-center =
scroll-up = bspwm-desknext modules-right = pulseaudio battery xbacklight memory cpu temperature wlan eth date powermenu
scroll-down = bspwm-deskprev
cursor-click = pointer
cursor-scroll = normal
[module/xwindow] [module/xwindow]
type = internal/xwindow type = internal/xwindow
label = %title:0:30:...% label = %title:0:30:...%
[module/xkeyboard] [module/xkeyboard]
type = internal/xkeyboard type = internal/xkeyboard
blacklist-0 = num lock blacklist-0 = num lock
format-prefix = " " format-prefix = " "
format-prefix-foreground = ${colors.foreground-alt} format-prefix-foreground = ${colors.foreground-alt}
format-prefix-underline = ${colors.secondary} format-prefix-underline = ${colors.secondary}
label-layout = %layout% label-layout = %layout%
label-layout-underline = ${colors.secondary} label-layout-underline = ${colors.secondary}
label-indicator-padding = 2 label-indicator-padding = 2
label-indicator-margin = 1 label-indicator-margin = 1
label-indicator-background = ${colors.secondary} label-indicator-background = ${colors.secondary}
label-indicator-underline = ${colors.secondary} label-indicator-underline = ${colors.secondary}
[module/filesystem] [module/filesystem]
type = internal/fs type = internal/fs
interval = 25 interval = 25
mount-0 = / mount-0 = /
label-mounted = %{F#0a81f5}%mountpoint%%{F-}: %percentage_used%% label-mounted = %{F#0a81f5}%mountpoint%%{F-}: %percentage_used%%
label-unmounted = %mountpoint% not mounted label-unmounted = %mountpoint% not mounted
label-unmounted-foreground = ${colors.foreground-alt} label-unmounted-foreground = ${colors.foreground-alt}
[module/bspwm] [module/bspwm]
type = internal/bspwm type = internal/bspwm
label-focused = %index% label-focused = %index%
label-focused-background = ${colors.background-alt} label-focused-background = ${colors.background-alt}
label-focused-underline= ${colors.primary} label-focused-underline= ${colors.primary}
label-focused-padding = 2 label-focused-padding = 2
label-occupied = %index% label-occupied = %index%
label-occupied-padding = 2 label-occupied-padding = 2
label-urgent = %index%! label-urgent = %index%!
label-urgent-background = ${colors.alert} label-urgent-background = ${colors.alert}
label-urgent-padding = 2 label-urgent-padding = 2
label-empty = %index% label-empty = %index%
label-empty-foreground = ${colors.foreground-alt} label-empty-foreground = ${colors.foreground-alt}
label-empty-padding = 2 label-empty-padding = 2
; Separator in between workspaces ; Separator in between workspaces
; label-separator = | ; label-separator = |
[module/i3] [module/i3]
type = internal/i3 type = internal/i3
format = <label-state> <label-mode> format = <label-state> <label-mode>
index-sort = true index-sort = true
wrapping-scroll = false wrapping-scroll = false
; Only show workspaces on the same output as the bar ; Only show workspaces on the same output as the bar
;pin-workspaces = true ; pin-workspaces = true
label-mode-padding = 2 label-mode-padding = 2
label-mode-foreground = #000 label-mode-foreground = #000
label-mode-background = ${colors.primary} label-mode-background = ${colors.primary}
; focused = Active workspace on focused monitor ; focused = Active workspace on focused monitor
label-focused = %index% label-focused = %index%
label-focused-background = ${colors.background-alt} label-focused-background = ${colors.background-alt}
label-focused-underline= ${colors.primary} label-focused-underline= ${colors.primary}
label-focused-padding = 2 label-focused-padding = 2
; unfocused = Inactive workspace on any monitor ; unfocused = Inactive workspace on any monitor
label-unfocused = %index% label-unfocused = %index%
label-unfocused-padding = 2 label-unfocused-padding = 2
; visible = Active workspace on unfocused monitor ; visible = Active workspace on unfocused monitor
label-visible = %index% label-visible = %index%
label-visible-background = ${self.label-focused-background} label-visible-background = ${self.label-focused-background}
label-visible-underline = ${self.label-focused-underline} label-visible-underline = ${self.label-focused-underline}
label-visible-padding = ${self.label-focused-padding} label-visible-padding = ${self.label-focused-padding}
; urgent = Workspace with urgency hint set ; urgent = Workspace with urgency hint set
label-urgent = %index% label-urgent = %index%
label-urgent-background = ${colors.alert} label-urgent-background = ${colors.alert}
label-urgent-padding = 2 label-urgent-padding = 2
; Separator in between workspaces ; Separator in between workspaces
; label-separator = | ; label-separator = |
[module/mpd] [module/mpd]
type = internal/mpd type = internal/mpd
format-online = <label-song> <icon-prev> <icon-stop> <toggle> <icon-next> format-online = <label-song> <icon-prev> <icon-stop> <toggle> <icon-next>
icon-prev =  icon-prev = 
icon-stop =  icon-stop = 
icon-play =  icon-play = 
icon-pause =  icon-pause = 
icon-next =  icon-next = 
label-song-maxlen = 25 label-song-maxlen = 25
label-song-ellipsis = true label-song-ellipsis = true
[module/xbacklight] [module/xbacklight]
type = internal/xbacklight type = internal/xbacklight
format = <label> <bar> format = <label> <bar>
label = BL label = BL
bar-width = 10 bar-width = 10
bar-indicator = | bar-indicator = |
bar-indicator-foreground = #fff bar-indicator-foreground = #fff
bar-indicator-font = 2 bar-indicator-font = 2
bar-fill = ─ bar-fill = 
bar-fill-font = 2 bar-fill-font = 2
bar-fill-foreground = #9f78e1 bar-fill-foreground = #9f78e1
bar-empty = ─ bar-empty = 
bar-empty-font = 2 bar-empty-font = 2
bar-empty-foreground = ${colors.foreground-alt} bar-empty-foreground = ${colors.foreground-alt}
[module/backlight-acpi] [module/backlight-acpi]
inherit = module/xbacklight inherit = module/xbacklight
type = internal/backlight type = internal/backlight
card = intel_backlight card = intel_backlight
[module/cpu] [module/cpu]
type = internal/cpu type = internal/cpu
interval = 2 interval = 2
format-prefix = " " format-prefix = " "
format-prefix-foreground = ${colors.foreground-alt} format-prefix-foreground = ${colors.foreground-alt}
format-underline = #f90000 format-underline = #f90000
label = %percentage:2%% label = %percentage:2%%
[module/memory] [module/memory]
type = internal/memory type = internal/memory
interval = 2 interval = 2
format-prefix = " " format-prefix = " "
format-prefix-foreground = ${colors.foreground-alt} format-prefix-foreground = ${colors.foreground-alt}
format-underline = #4bffdc format-underline = #4bffdc
label = %percentage_used%% label = %percentage_used%%
[module/wlan] [module/wlan]
type = internal/network type = internal/network
interface = net1 interface = wlp3s0
interval = 3.0 interval = 3.0
format-connected = <ramp-signal> <label-connected> format-connected = <ramp-signal> <label-connected>
format-connected-underline = #9f78e1 format-connected-underline = #9f78e1
label-connected = %essid% label-connected = %essid%
format-disconnected = format-disconnected =
;format-disconnected = <label-disconnected> ; format-disconnected = <label-disconnected>
;format-disconnected-underline = ${self.format-connected-underline} ; format-disconnected-underline = ${self.format-connected-underline}
;label-disconnected = %ifname% disconnected ; label-disconnected = %ifname% disconnected
;label-disconnected-foreground = ${colors.foreground-alt} ; label-disconnected-foreground = ${colors.foreground-alt}
ramp-signal-0 =  ramp-signal-0 = 
ramp-signal-1 =  ramp-signal-1 = 
ramp-signal-2 =  ramp-signal-2 = 
ramp-signal-3 =  ramp-signal-3 = 
ramp-signal-4 =  ramp-signal-4 = 
ramp-signal-foreground = ${colors.foreground-alt} ramp-signal-foreground = ${colors.foreground-alt}
[module/eth] [module/eth]
type = internal/network type = internal/network
interface = enp0s31f6 interface = enp0s31f6
interval = 3.0 interval = 3.0
format-connected-underline = #55aa55 format-connected-underline = #55aa55
format-connected-prefix = " " format-connected-prefix = " "
format-connected-prefix-foreground = ${colors.foreground-alt} format-connected-prefix-foreground = ${colors.foreground-alt}
label-connected = %local_ip% label-connected = %local_ip%
format-disconnected = format-disconnected =
;format-disconnected = <label-disconnected> ; format-disconnected = <label-disconnected>
;format-disconnected-underline = ${self.format-connected-underline} ; format-disconnected-underline = ${self.format-connected-underline}
;label-disconnected = %ifname% disconnected ; label-disconnected = %ifname% disconnected
;label-disconnected-foreground = ${colors.foreground-alt} ; label-disconnected-foreground = ${colors.foreground-alt}
[module/date] [module/date]
type = internal/date type = internal/date
interval = 5 interval = 5
date = date =
date-alt = " %Y-%m-%d" date-alt = " %Y-%m-%d"
time = %H:%M time = %H:%M
time-alt = %H:%M:%S time-alt = %H:%M:%S
format-prefix =  format-prefix = 
format-prefix-foreground = ${colors.foreground-alt} format-prefix-foreground = ${colors.foreground-alt}
format-underline = #0a6cf5 format-underline = #0a6cf5
label = %date% %time% label = %date% %time%
[module/pulseaudio] [module/pulseaudio]
type = internal/pulseaudio type = internal/pulseaudio
format-volume = <label-volume> <bar-volume> format-volume = <label-volume> <bar-volume>
label-volume = VOL %percentage%% label-volume = VOL %percentage%%
label-volume-foreground = ${root.foreground} label-volume-foreground = ${root.foreground}
label-muted = 🔇 muted label-muted = 🔇 muted
label-muted-foreground = #666 label-muted-foreground = #666
bar-volume-width = 10 bar-volume-width = 10
bar-volume-foreground-0 = #55aa55 bar-volume-foreground-0 = #55aa55
bar-volume-foreground-1 = #55aa55 bar-volume-foreground-1 = #55aa55
bar-volume-foreground-2 = #55aa55 bar-volume-foreground-2 = #55aa55
bar-volume-foreground-3 = #55aa55 bar-volume-foreground-3 = #55aa55
bar-volume-foreground-4 = #55aa55 bar-volume-foreground-4 = #55aa55
bar-volume-foreground-5 = #f5a70a bar-volume-foreground-5 = #f5a70a
bar-volume-foreground-6 = #ff5555 bar-volume-foreground-6 = #ff5555
bar-volume-gradient = false bar-volume-gradient = false
bar-volume-indicator = | bar-volume-indicator = |
bar-volume-indicator-font = 2 bar-volume-indicator-font = 2
bar-volume-fill = ─ bar-volume-fill = ─
bar-volume-fill-font = 2 bar-volume-fill-font = 2
bar-volume-empty = ─ bar-volume-empty = ─
bar-volume-empty-font = 2 bar-volume-empty-font = 2
bar-volume-empty-foreground = ${colors.foreground-alt} bar-volume-empty-foreground = ${colors.foreground-alt}
[module/alsa] [module/alsa]
type = internal/alsa type = internal/alsa
format-volume = <label-volume> <bar-volume> format-volume = <label-volume> <bar-volume>
label-volume = VOL label-volume = VOL
label-volume-foreground = ${root.foreground} label-volume-foreground = ${root.foreground}
format-muted-prefix = " " format-muted-prefix = " "
format-muted-foreground = ${colors.foreground-alt} format-muted-foreground = ${colors.foreground-alt}
label-muted = sound muted label-muted = sound muted
bar-volume-width = 10 bar-volume-width = 10
bar-volume-foreground-0 = #55aa55 bar-volume-foreground-0 = #55aa55
bar-volume-foreground-1 = #55aa55 bar-volume-foreground-1 = #55aa55
bar-volume-foreground-2 = #55aa55 bar-volume-foreground-2 = #55aa55
bar-volume-foreground-3 = #55aa55 bar-volume-foreground-3 = #55aa55
bar-volume-foreground-4 = #55aa55 bar-volume-foreground-4 = #55aa55
bar-volume-foreground-5 = #f5a70a bar-volume-foreground-5 = #f5a70a
bar-volume-foreground-6 = #ff5555 bar-volume-foreground-6 = #ff5555
bar-volume-gradient = false bar-volume-gradient = false
bar-volume-indicator = | bar-volume-indicator = |
bar-volume-indicator-font = 2 bar-volume-indicator-font = 2
bar-volume-fill = ─ bar-volume-fill = ─
bar-volume-fill-font = 2 bar-volume-fill-font = 2
bar-volume-empty = ─ bar-volume-empty = ─
bar-volume-empty-font = 2 bar-volume-empty-font = 2
bar-volume-empty-foreground = ${colors.foreground-alt} bar-volume-empty-foreground = ${colors.foreground-alt}
[module/battery] [module/battery]
type = internal/battery type = internal/battery
battery = BAT0 battery = BAT0
adapter = ADP1 adapter = ADP1
full-at = 98 full-at = 98
format-charging = <animation-charging> <label-charging> format-charging = <animation-charging> <label-charging>
format-charging-underline = #ffb52a format-charging-underline = #ffb52a
format-discharging = <animation-discharging> <label-discharging> format-discharging = <ramp-capacity> <label-discharging>
format-discharging-underline = ${self.format-charging-underline} format-discharging-underline = ${self.format-charging-underline}
format-full-prefix = " " format-full-prefix = " "
format-full-prefix-foreground = ${colors.foreground-alt} format-full-prefix-foreground = ${colors.foreground-alt}
format-full-underline = ${self.format-charging-underline} format-full-underline = ${self.format-charging-underline}
ramp-capacity-0 =  ramp-capacity-0 = 
ramp-capacity-1 =  ramp-capacity-1 = 
ramp-capacity-2 =  ramp-capacity-2 = 
ramp-capacity-foreground = ${colors.foreground-alt} ramp-capacity-foreground = ${colors.foreground-alt}
animation-charging-0 =  animation-charging-0 = 
animation-charging-1 =  animation-charging-1 = 
animation-charging-2 =  animation-charging-2 = 
animation-charging-foreground = ${colors.foreground-alt} animation-charging-foreground = ${colors.foreground-alt}
animation-charging-framerate = 750 animation-charging-framerate = 750
animation-discharging-0 =  animation-discharging-0 = 
animation-discharging-1 =  animation-discharging-1 = 
animation-discharging-2 =  animation-discharging-2 = 
animation-discharging-foreground = ${colors.foreground-alt} animation-discharging-foreground = ${colors.foreground-alt}
animation-discharging-framerate = 750 animation-discharging-framerate = 750
[module/temperature] [module/temperature]
type = internal/temperature type = internal/temperature
thermal-zone = 0 thermal-zone = 0
warn-temperature = 60 warn-temperature = 60
format = <ramp> <label> format = <ramp> <label>
format-underline = #f50a4d format-underline = #f50a4d
format-warn = <ramp> <label-warn> format-warn = <ramp> <label-warn>
format-warn-underline = ${self.format-underline} format-warn-underline = ${self.format-underline}
label = %temperature-c% label = %temperature-c%
label-warn = %temperature-c% label-warn = %temperature-c%
label-warn-foreground = ${colors.secondary} label-warn-foreground = ${colors.secondary}
ramp-0 =  ramp-0 = 
ramp-1 =  ramp-1 = 
ramp-2 =  ramp-2 = 
ramp-foreground = ${colors.foreground-alt} ramp-foreground = ${colors.foreground-alt}
[module/powermenu] [module/powermenu]
type = custom/menu type = custom/menu
expand-right = true expand-right = true
format-spacing = 1 format-spacing = 1
label-open =  label-open = 
label-open-foreground = ${colors.secondary} label-open-foreground = ${colors.secondary}
label-close =  cancel label-close =  cancel
label-close-foreground = ${colors.secondary} label-close-foreground = ${colors.secondary}
label-separator = | label-separator = |
label-separator-foreground = ${colors.foreground-alt} label-separator-foreground = ${colors.foreground-alt}
menu-0-0 = reboot menu-0-0 = reboot
menu-0-0-exec = menu-open-1 menu-0-0-exec = menu-open-1
menu-0-1 = power off menu-0-1 = power off
menu-0-1-exec = menu-open-2 menu-0-1-exec = menu-open-2
menu-1-0 = cancel menu-1-0 = cancel
menu-1-0-exec = menu-open-0 menu-1-0-exec = menu-open-0
menu-1-1 = reboot menu-1-1 = reboot
menu-1-1-exec = sudo reboot menu-1-1-exec = sudo reboot
menu-2-0 = power off menu-2-0 = power off
menu-2-0-exec = sudo poweroff menu-2-0-exec = sudo poweroff
menu-2-1 = cancel menu-2-1 = cancel
menu-2-1-exec = menu-open-0 menu-2-1-exec = menu-open-0
[settings] [settings]
screenchange-reload = true screenchange-reload = true
;compositing-background = xor ; compositing-background = xor
;compositing-background = screen ; compositing-background = screen
;compositing-foreground = source ; compositing-foreground = source
;compositing-border = over ; compositing-border = over
;pseudo-transparency = false ; pseudo-transparency = false
[global/wm] [global/wm]
margin-top = 0 margin-top = 0
margin-bottom = 0 margin-bottom = 0

View file

@ -6,8 +6,14 @@ killall -q polybar
# Wait until the processes have been shut down # Wait until the processes have been shut down
while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done
# Launch Polybar, using default config location ~/.config/polybar/config host_name=$(hostname)
polybar primary & if [[ $host_name == "portalo" ]]; then
polybar secondary & polybar portalo-primary &
polybar portalo-secondary &
elif [[ $host_name == *"laptop"* ]]; then
polybar laptop-primary &
else
polybar laptop-primary & # TODO
fi
echo "Polybar launched..." echo "Polybar launched..."