dotfiles/polybar/config.ini
Midgard 1b5972ac10
[polybar] Add transparency
And change font for MPD progress to one that renders the bar better
2022-08-30 02:11:28 +02:00

516 lines
13 KiB
INI

;=====================================================
;
; To learn more about how to configure Polybar
; go to https://github.com/jaagr/polybar
;
; The README contains a lot of information
;
;=====================================================
[colors]
background = #ef111111
background-alt = #222
background-selected = #444
background-alert = #bd2c40
foreground = #dfdfdf
foreground-alt = #777
foreground-caution = #bd2c40
foreground-alert = #ff4e4e
[bardefaults]
;enable-ipc = true
; I don't use this at the moment
enable-ipc = false
height = 27
fixed-center = true
background = ${colors.background}
foreground = ${colors.foreground}
padding-left = 0
padding-right = 6
module-margin-left = 6
module-margin-right = 6
; Default text
font-0 = "Fira Sans:size=10;1"
; Sliders
font-1 = fixed:pixelsize=10;1
; Default icons
font-2 = "Material Icons:pixelsize=14;3"
; Clock text
font-3 = "Fira Sans:size=12;2"
; MPD song name
font-4 = "Fira Code:light:size=7;-1"
; Specialised icons
font-5 = "Weather Icons:size=10;1"
font-6 = "Bar Material Supplements:pixelsize=14;1"
font-7 = "Bar Material Supplements:pixelsize=21;3"
; MPD song position
font-8 = "Fira Mono:size=7;9"
cursor-click = pointer
cursor-scroll = ns-resize
[bar/midbard]
inherit = bardefaults
monitor = ${env:MONITOR:eDP-1}
width = 100%
modules-left = i3 volume mpd-local
modules-center = date
modules-right = memory cpu temperature eth wlan battery
tray-position = right
tray-padding = 2
[bar/secondary]
inherit = bardefaults
height=18
modules-left = i3
modules-right = xwindow
monitor = ${env:MONITOR:eDP-1}
[module/xwindow]
type = internal/xwindow
label = "%title:0:100:…%"
label-foreground = ${colors.foreground-alt}
[module/xkeyboard]
type = internal/xkeyboard
blacklist-0 = num lock
format-prefix = " "
format-prefix-foreground = ${colors.foreground-alt}
label-layout = %layout%
label-indicator-padding = 2
label-indicator-margin = 1
label-indicator-background = ${colors.secondary}
[module/filesystem]
type = internal/fs
interval = 24
mount-0 = /
label-mounted = %{F#0a81f5}%mountpoint%%{F}: %percentage_used%%
label-unmounted = %mountpoint% not mounted
label-unmounted-foreground = ${colors.foreground-alt}
[module/i3]
type = internal/i3
format = <label-state> <label-mode>
index-sort = true
enable-scroll = false
enable-click = false
; Only show workspaces on the same output as the bar
pin-workspaces = true
label-mode-padding = 2
label-mode-foreground = #000
label-mode-background = #ffb52a
; focused = Active workspace on focused monitor
label-focused = " %name% "
label-focused-background = ${colors.background-selected}
label-focused-padding = 2
; unfocused = Inactive workspace on any monitor
label-unfocused = %name%
label-unfocused-padding = 2
; visible = Active workspace on unfocused monitor
label-visible = ${self.label-focused}
label-visible-background = ${colors.background-alt}
label-visible-padding = ${self.label-focused-padding}
; urgent = Workspace with urgency hint set
label-urgent = %name%
label-urgent-background = ${colors.background-alert}
label-urgent-padding = 2
[mpd-shared]
type = internal/mpd
;format-online = <toggle> <icon-prev> %{T9}<bar-progress>%{T-}%{O-125}%{T5}<label-song>%{T-} <icon-next>
;small-format-online = <toggle> <icon-prev> %{T9}<bar-progress>%{T-}%{O-50}%{T5}<label-song>%{T-} <icon-next>
format-online = <toggle> %{A1:mpdclient &:}%{T9}<bar-progress>%{T-}%{O-180}%{T5}<label-song>%{T-}%{A}
small-format-online = <toggle> %{A1:mpdclient &:}%{T9}<bar-progress>%{T-}%{O-50}%{T5}<label-song>%{T-}%{A}
ro-format-online = %{T9}<bar-progress>%{T-}%{O-125}%{T5}<label-song>%{T-}
format-stopped = %{A1:mpdclient &:}%{A}
format-stopped-foreground = ${colors.foreground-alt}
icon-prev =
icon-prev-foreground = ${colors.foreground-alt}
icon-stop =
icon-stop-foreground = ${colors.foreground-alt}
icon-play =
icon-play-foreground = ${colors.foreground-alt}
icon-pause =
icon-pause-foreground = ${colors.foreground-alt}
icon-next =
icon-next-foreground = ${colors.foreground-alt}
label-song = "%title% · %artist% "
label-song-maxlen = 25
small-label-song-maxlen = 7
label-song-ellipsis = false
label-song-foreground = ${colors.foreground}
bar-progress-width = 30
small-bar-progress-width = 10
bar-progress-indicator =
bar-progress-indicator-foreground = #eee
bar-progress-fill =
bar-progress-fill-foreground = #999
bar-progress-empty =
bar-progress-empty-foreground = #333
[module/mpd-local]
inherit = mpd-shared
host = localhost
port = 6600
[module/mpd-online-1]
inherit = mpd-shared
host = ${env:MPD_ONLINE_1_HOST}
port = ${env:MPD_ONLINE_1_PORT}
password = ${env:MPD_ONLINE_1_PASS}
[module/mpd-online-2]
inherit = mpd-shared
host = ${env:MPD_ONLINE_2_HOST}
port = ${env:MPD_ONLINE_2_PORT}
password = ${env:MPD_ONLINE_2_PASS}
format-online = ${mpd-shared.small-format-online}
label-song-maxlen = ${mpd-shared.small-label-song-maxlen}
label-song-foreground = ${colors.foreground-alt}
bar-progress-width = ${mpd-shared.small-bar-progress-width}
[module/xbacklight]
type = internal/xbacklight
format = <label> <bar>
label = BL
bar-width = 10
bar-indicator = |
bar-indicator-foreground = #ff
bar-indicator-font = 1
bar-fill =
bar-fill-font = 1
bar-fill-foreground = #9f78e1
bar-empty =
bar-empty-font = 1
bar-empty-foreground = ${colors.foreground-alt}
[module/backlight-acpi]
inherit = module/xbacklight
type = internal/backlight
card = intel_backlight
[module/cpu]
type = internal/cpu
interval = 3
;format-prefix = " "
format = "%{O-22}%{A1:alacritty -e htop &:}<ramp-coreload>%{A}"
format-foreground = ${colors.foreground-alt}
format-prefix-foreground = ${colors.foreground-alt}
; Available tokens:
; %percentage% (default) - total cpu load
; %percentage-cores% - load percentage for each core
; %percentage-core[1-9]% - load percentage for specific core
label = %percentage%
;ramp-coreload-0 = ▁
ramp-coreload-0 =
ramp-coreload-0-foreground = #444
;ramp-coreload-1 = ▂
ramp-coreload-1 =
ramp-coreload-1-foreground = #444
;ramp-coreload-2 = ▃
ramp-coreload-2 =
ramp-coreload-2-foreground = #444
;ramp-coreload-3 = ▄
ramp-coreload-3 =
ramp-coreload-3-foreground = #444
ramp-coreload-4 =
ramp-coreload-4-foreground = #666
ramp-coreload-5 =
ramp-coreload-5-foreground = #888
ramp-coreload-6 =
ramp-coreload-6-foreground = ${colors.foreground-caution}
ramp-coreload-7 =
ramp-coreload-7-foreground = ${colors.foreground-alert}
[module/memory]
type = internal/memory
interval = 3
format = "%{A1:alacritty -e htop &:}<ramp-used>%{A}"
format-foreground = ${colors.foreground-alt}
ramp-used-0 =
ramp-used-1 =
ramp-used-2 =
ramp-used-3 =
ramp-used-4 =
ramp-used-5 =
ramp-used-6 =
ramp-used-7 =
ramp-used-8 =
ramp-used-9 =
ramp-used-10 = 50%
ramp-used-10-foreground = ${self.format-foreground}
ramp-used-11 = 55%
ramp-used-11-foreground = ${self.format-foreground}
ramp-used-12 = 60%
ramp-used-12-foreground = ${self.format-foreground}
ramp-used-13 = 65%
ramp-used-13-foreground = ${self.format-foreground}
ramp-used-14 = 70%
ramp-used-14-foreground = ${self.format-foreground}
ramp-used-15 = 75%
ramp-used-15-foreground = ${self.format-foreground}
ramp-used-16 = 80%
ramp-used-16-foreground = ${self.format-foreground}
ramp-used-17 = 85%
ramp-used-17-foreground = ${self.format-foreground}
ramp-used-18 = %{T3}%{T-} RAM NEARLY FULL
ramp-used-18-foreground = ${colors.foreground-caution}
ramp-used-19 = %{T3}%{T-} RAM FULL
ramp-used-19-foreground = ${colors.foreground-alert}
ramp-used-20 = %{T3}%{T-} RAM FULL
ramp-used-20-foreground = ${colors.foreground-alert}
[module/temperature]
type = internal/temperature
thermal-zone = 0
warn-temperature = 80
interval = 3
units = false
format =
format-foreground = ${colors.foreground-alt}
format-warn = "%{O-22}%{A1:alacritty -e watch sensors &:}%{T3}%{T-} <label-warn>%{A}"
format-warn-foreground = ${colors.foreground-alert}
label = %temperature-c%℃
label-warn = %temperature-c%℃
[module/wlan]
type = internal/network
interface = wlp58s0
interval = 3
; %{T7} select font 7
; %{F#333} use a dark foreground colour
;  icon for "full signal strength" in my font 8
; %{F}%{T-} reset foreground colour and font
; %{O-18} go back 18 pixels to the left
; <ramp-signal> show a signal strength icon
; This overlays the actual signal strength icon over the dark "full signal" icon
format-connected = %{A:alacritty -e wlan &:}%{T7}%{F#333}%{F}%{T-}%{O-18}<ramp-signal>%{A}
format-connected-foreground = ${colors.foreground-alt}
label-connected = %essid%
format-disconnected = %{A1:alacritty -e wlan &:}<label-disconnected>%{A}
label-disconnected =
label-disconnected-foreground = ${colors.foreground-alt}
;ramp-signal-0 = ""
ramp-signal-0 =
ramp-signal-1 =
ramp-signal-2 =
ramp-signal-3 =
ramp-signal-font = 7
ramp-signal-foreground = ${colors.foreground}
[module/eth]
type = internal/network
interface = enp57s0f1
interval = 3
label-connected = "%{O-32}"
;[module/date]
;type = internal/date
;interval = 5
;date =
;date-alt =
;time = %A %{T4}%H:%M%{T-} %e %b
;time-alt = %a %Y-%m-%d %H:%M:%S
;label = %time%
[module/date]
type = custom/script
tail = true
exec = ~/.config/polybar/clock.py
;America/Detroit Asia/Seoul
[module/volume]
;type = internal/pulseaudio
type = internal/alsa
master-soundcard = default
speaker-soundcard = default
headphone-soundcard = default
format-muted =
format-muted-foreground = ${colors.foreground-alt}
format-volume = <ramp-volume>
format-volume-foreground = ${colors.foreground}
ramp-volume-0 = %{O-3}%{O3}
ramp-volume-1 = %{O-1}%{O1}
ramp-volume-2 =
[module/battery]
type = internal/battery
battery = BAT0
adapter = AC
full-at = 90
interval = 5
format-charging = %{A:alacritty -e bat --hold &:}%{T7}%{F#555}%{O-18}%{F#DDA}<ramp-capacity>%{O-17}%{F#000}%{F}%{T-}%{O19}<label-charging>%{A}
label-charging = %percentage%
format-discharging = %{A:alacritty -e bat --hold &:}%{F#555}%{O-18}%{F}<ramp-capacity>%{O2}<label-discharging>%{A}
label-discharging = %percentage%
format-full = "%{A:alacritty -e bat --hold &:}%{F#dda}%{F#eea} unplug%{F}%{A}"
; <5
ramp-capacity-0 = %{F#f55}
; 5
ramp-capacity-1 = %{F#f55}
; 10
ramp-capacity-2 = %{F#f55}
ramp-capacity-3 = %{F#f55}
; 20
ramp-capacity-4 =
ramp-capacity-5 =
; 30
ramp-capacity-6 =
ramp-capacity-7 =
; 40
ramp-capacity-8 =
ramp-capacity-9 =
; 50
ramp-capacity-10 =
ramp-capacity-11 =
; 60
ramp-capacity-12 =
ramp-capacity-13 =
; 70
ramp-capacity-14 =
ramp-capacity-15 =
; 80
ramp-capacity-16 =
ramp-capacity-17 =
; 90
ramp-capacity-18 =
; >=95
ramp-capacity-19 =
animation-charging-0 =
animation-charging-1 =
animation-charging-2 =
animation-charging-3 =
animation-charging-framerate = 750
[module/powermenu]
type = custom/menu
expand-right = true
format-spacing = 1
; 
label-open = ""
label-open-foreground = ${colors.secondary}
label-close =  cancel
label-close-foreground = ${colors.secondary}
label-separator = |
label-separator-foreground = ${colors.foreground-alt}
menu-0-0 = reboot
menu-0-0-exec = menu-open-1
menu-0-1 = power off
menu-0-1-exec = menu-open-2
menu-1-0 = cancel
menu-1-0-exec = menu-open-0
menu-1-1 = reboot
menu-1-1-exec = sudo reboot
menu-2-0 = power off
menu-2-0-exec = sudo poweroff
menu-2-1 = cancel
menu-2-1-exec = menu-open-0
[module/info-hackspeed]
type = custom/script
exec = LAYOUT=azerty ICON= METRIC=wpm ~/.config/polybar/info-hackspeed.sh
tail = true
[module/weather-full]
type = custom/script
exec = ~/.config/polybar/openweathermap-fullfeatured.sh
interval = 600
label-font = 6
[settings]
; The throttle settings lets the eventloop swallow up til X events
; if they happen within Y millisecond after first event was received.
; This is done to prevent flood of update event.
;
; For example if 5 modules emit an update event at the same time, we really
; just care about the last one. But if we wait too long for events to swallow
; the bar would appear sluggish so we continue if timeout
; expires or limit is reached.
throttle-output = 5
throttle-output-for = 10
; Reload upon receiving XCB_RANDR_SCREEN_CHANGE_NOTIFY events
screenchange-reload = false
; Compositing operators
; they say: see https://www.cairographics.org/manual/cairo-cairo-t.html#cairo-operator-t
; but I have no idea what this is supposed to do
;compositing-background = xor
;compositing-background = screen
;compositing-foreground = source
;compositing-border = over
[global/wm]
margin-top = 5
margin-bottom = 5
; vim: set ft=dosini foldmethod=marker foldlevel=0 :