home/.config/polybar/config
Salt af87a4535e Polybar: Unify i3 module
This works around a segfault bug(?) in Polybar
2018-10-12 01:44:54 -05:00

362 lines
8.6 KiB
INI

#==================================================
#
# INFO: https://github.com/jaagr/polybar
#
#===================================================
#========================================
# RESOURCES
#========================================
[res/colors]
primary = ${xrdb:color12}
secondary = ${xrdb:color4}
alert = ${xrdb:color3}
warning = ${xrdb:color1}
mod-battery = ${xrdb:color10}
mod-cpu = ${xrdb:color12}
mod-date = ${self.primary}
mod-fs = ${xrdb:color11}
mod-memory = ${xrdb:color13}
mod-tor = ${xrdb:color13}
mod-volume = ${self.primary}
mod-network = ${xrdb:color14}
mod-wm = ${xrdb:color12}
mod-xbacklight = ${self.primary}
notif-package = ${self.foreground-dark}
background = ${xrdb:background}
background-alt = ${xrdb:color8}
foreground = ${xrdb:color15}
foreground-dark = ${xrdb:color8}
border = #3c3836
bar-empty = ${self.border}
[res/config]
padding = 2
[res/fonts]
font-0 = "Inconsolata:style=Regular:size=10;2"
font-1 = "Inconsolata:style=Bold:size=10;2"
font-2 = "Inconsolata:style=Light:size=10;2"
font-3 = "Inconsolata:size=10;2"
font-4 = "Material Design Icons:size=11;3"
#========================================
# BARS
#========================================
# TEMPLATE
#====================
[template/bar]
# Rendering of the bar
height = 26
bottom = true
wm-restack = ${env:PB_WM_RESTACK:bspwm}
# Module padding and spacing
module-margin = 2
padding = ${res/config.padding}
# Tray settings
tray-maxsize = 16
# Mild cosmetics
background = ${res/colors.background}
foreground = ${res/colors.foreground}
border-color = ${res/colors.background}
border-size = ${env:PB_BAR_BORDER_SIZE:8}
overline-size = 6
underline-size = 6
# Module fonts
font-0 = ${res/fonts.font-0}
font-1 = ${res/fonts.font-1}
font-2 = ${res/fonts.font-2}
font-3 = ${res/fonts.font-3}
font-4 = ${res/fonts.font-4}
# BARS
#====================
[bar/primary]
monitor = ${env:PB_MONITOR:eDP-1}
inherit = template/bar
border-top-size = 0
modules-left = ${env:PB_BAR_PRIMARY_MODULES_LEFT:battery cpu memory}
modules-center = ${env:PB_BAR_PRIMARY_MODULES_CENTER:i3 bspwm}
modules-right = ${env:PB_BAR_PRIMARY_MODULES_RIGHT:tor xbacklight volume date}
[bar/primary-2]
monitor = ${env:PB_MONITOR:eDP-1}
inherit = template/bar
bottom = false
border-bottom-size = 0
modules-left = ${env:PB_BAR_PRIMARY_2_MODULES_LEFT: }
modules-center = ${env:PB_BAR_PRIMARY_2_MODULES_CENTER: }
modules-right = ${env:PB_BAR_PRIMARY_2_MODULES_RIGHT: }
[bar/secondary]
monitor = ${env:PB_MONITOR}
inherit = template/bar
border-top-size = 0
modules-left = ${env:PB_BAR_SECONDARY_MODULES_LEFT:uname hostname}
modules-center = ${env:PB_BAR_SECONDARY_MODULES_CENTER:bspwm}
modules-right = ${env:PB_BAR_SECONDARY_MODULES_RIGHT:date}
[bar/secondary-2]
monitor = ${env:PB_MONITOR}
inherit = template/bar
bottom = false
border-bottom-size = 0
modules-left = ${env:PB_BAR_SECONDARY_2_MODULES_LEFT: }
modules-center = ${env:PB_BAR_SECONDARY_2_MODULES_CENTER: }
modules-right = ${env:PB_BAR_SECONDARY_2_MODULES_RIGHT: }
#========================================
# MODULES
#========================================
# BORDERS and WHITESPACE
#====================
[module/|]
type = custom/text
content = "|"
content-foreground = ${res/colors.background-alt}
[module/||]
type = custom/text
content = " "
content-background = ${res/colors.border}
[module/nothing]
type = custom/text
content = " "
# NOTIFICATION
#====================
[module/dpkg]
type = custom/script
format = <label>
format-foreground = ${res/colors.notif-package}
interval = 1
exec = printf "DPKG\n"
exec-if = [ -f /var/lib/dpkg/lock ]
# OTHER
#====================
[module/battery]
type = internal/battery
format-charging = <label-charging>
format-charging-prefix = "CHR: "
format-charging-prefix-foreground = ${res/colors.mod-battery}
format-discharging = <label-discharging>
format-discharging-prefix = "BAT: "
format-discharging-prefix-foreground = ${res/colors.mod-battery}
format-full = <label-full>
format-full-prefix = "BAT: "
format-full-prefix-foreground = ${res/colors.mod-battery}
time-format = %H:%M
full-at = 100
interval = 15
label-charging = %percentage:3%%
label-discharging = %percentage:3%%
label-full = %percentage:3%%
[module/bspwm]
type = internal/bspwm
format = <label-state>
enable-scroll = false
pin-workspaces = true
label-focused = %name%
label-focused-padding = ${res/config.padding}
label-focused-foreground = ${res/colors.mod-wm}
label-focused-font = 2
label-dimmed-overline = ${res/colors.background}
label-dimmed-underline = ${self.label-dimmed-overline}
label-occupied = ${self.label-focused}
label-occupied-padding = ${res/config.padding}
label-occupied-font = 2
label-urgent = ${self.label-focused}
label-urgent-padding = ${res/config.padding}
label-urgent-foreground = ${res/colors.alert}
label-urgent-font = 2
label-empty = ${self.label-focused}
label-empty-padding = ${res/config.padding}
label-empty-foreground = ${res/colors.foreground-dark}
label-empty-font = 3
[module/cpu]
type = internal/cpu
format = <label>
format-prefix = "CPU: "
format-prefix-foreground = ${res/colors.mod-cpu}
interval = 1
label = %percentage:3%%
[module/date]
type = internal/date
format = <label>
format-prefix =
format-prefix-foreground = ${res/colors.mod-date}
date = %a
time = %I:%M %p
interval = 30
label = %date% %time%
[module/eth]
type = internal/network
format-connected = <label-connected>
format-connected-prefix = "ETH: "
format-connected-prefix-foreground = ${res/colors.mod-network}
format-disconnected = <label-disconnected>
format-disconnected-prefix = "ETH: "
format-disconnected-prefix-foreground = ${res/colors.mod-network}
interface = ${env:PB_MODULE_ETH_INTERFACE:enp0s31f6}
label-connected = %local_ip%
label-disconnected = None
label-disconnected-foreground = ${res/colors.foreground-dark}
[module/fs-home]
type = internal/fs
format-mounted = <bar-used> <label-mounted>
format-mounted-prefix = "HOME: "
format-mounted-prefix-foreground = ${res/colors.mod-fs}
mount-0 = /home
label-mounted = %free:5% free
[module/hostname]
type = custom/script
format-foreground = ${res/colors.background-alt}
interval = 3600
exec = hostname
[module/i3]
type = internal/i3
format = <label-state> <label-mode>
enable-scroll = false
pin-workspaces = true
label-focused = %name%
label-focused-padding = ${res/config.padding}
label-focused-foreground = ${res/colors.mod-wm}
label-focused-font = 2
label-unfocused = ${self.label-focused}
label-unfocused-padding = ${res/config.padding}
label-unfocused-font = 2
label-visible-foreground = ${res/colors.foreground-dark}
label-visible-padding = ${res/config.padding}
label-visible-font = 2
label-urgent = ${self.label-focused}
label-urgent-padding = ${res/config.padding}
label-urgent-foreground = ${res/colors.alert}
label-urgent-font = 2
label-mode = %mode%
[module/memory]
type = internal/memory
format = <label>
format-prefix = "MEM: "
format-prefix-foreground = ${res/colors.mod-memory}
interval = 1
label = %percentage_used:3%%
[module/monitor]
type = custom/text
content = ${env:PB_MONITOR:eDP-1}
content-foreground = ${res/colors.background-alt}
[module/swap]
type = internal/memory
format = <label>
format-prefix = "SWP: "
format-prefix-foreground = ${res/colors.mod-memory}
interval = 1
label = %percentage_swap_used:3%%
[module/tor]
type = custom/script
format-prefix = "TOR: "
format-prefix-foreground = ${res/colors.mod-tor}
interval = 10
exec = if systemctl is-failed --quiet tor; then echo FAIL; elif ! systemctl is-enabled --quiet tor; then echo DISB; else echo INAC; fi
exec-if = ! systemctl is-active tor
[module/uname]
type = custom/script
format-foreground = ${res/colors.background-alt}
interval = 3600
exec = uname -sr
[module/volume]
type = internal/volume
format-volume = <label-volume>
format-volume-prefix = "VOL: "
format-volume-prefix-foreground = ${res/colors.mod-volume}
format-muted = <label-muted>
format-muted-prefix = "VOL: "
format-muted-prefix-foreground = ${res/colors.foreground-dark}
label-volume = %percentage:3%%
label-muted = %percentage:3%%
label-muted-foreground = ${res/colors.foreground-dark}
[module/wlan]
type = internal/network
format-connected = <label-connected>
format-connected-prefix = "WLAN: "
format-connected-prefix-foreground = ${res/colors.mod-network}
format-disconnected = <label-disconnected>
format-disconnected-prefix = "WLAN: "
format-disconnected-prefix-foreground = ${res/colors.mod-network}
interface = ${env:PB_MODULE_WLAN_INTERFACE:wlp1s0}
label-connected = %local_ip%
label-disconnected = None
label-disconnected-foreground = ${res/colors.foreground-dark}
[module/xbacklight]
type = internal/xbacklight
format = <label>
format-prefix = "BRI: "
format-prefix-foreground = ${res/colors.mod-xbacklight}
label = %percentage:3%%
[module/xwindow]
type = internal/xwindow
format = <label>
label = %title:0:75:...%
# vim:ft=dosini