Redesign polybar layout

Use material design icons for consistency
Add bluetooth and audio control modules
Reduce verbosity, using icons for compactness
Remove some modules
This commit is contained in:
Evie Litherland-Smith 2023-04-08 10:33:33 +01:00
parent 2ebc666a7b
commit 30366d6aea

View file

@ -17,175 +17,182 @@
;========================================================== ;==========================================================
[colors] [colors]
base = #24273a base = #24273a
mantle = #1e2030 mantle = #1e2030
crust = #181926 crust = #181926
text = #cad3f5 text = #cad3f5
subtext0 = #a5adcb subtext0 = #a5adcb
subtext1 = #b8c0e0 subtext1 = #b8c0e0
surface0 = #363a4f surface0 = #363a4f
surface1 = #494d64 surface1 = #494d64
surface2 = #5b6078 surface2 = #5b6078
overlay0 = #6e738d
overlay1 = #8087a2
overlay2 = #939ab7
blue = #8aadf4 overlay0 = #6e738d
lavender = #b7bdf8 overlay1 = #8087a2
sapphire = #7dc4e4 overlay2 = #939ab7
sky = #91d7e3
teal = #8bd5ca
green = #a6da95
yellow = #eed49f
peach = #f5a97f
maroon = #ee99a0
red = #ed8796
mauve = #c6a0f6
pink = #f5bde6
flamingo = #f0c6c6
rosewater = #f4dbd6
transparent = #00000000
background = ${colors.base} blue = #8aadf4
background-alt = ${colors.crust} lavender = #b7bdf8
foreground = ${colors.text} sapphire = #7dc4e4
primary = ${colors.lavender} sky = #91d7e3
secondary = ${colors.mauve} teal = #8bd5ca
alert = ${colors.red} green = #a6da95
disabled = ${colors.surface0} yellow = #eed49f
peach = #f5a97f
maroon = #ee99a0
red = #ed8796
mauve = #c6a0f6
pink = #f5bde6
flamingo = #f0c6c6
rosewater = #f4dbd6
[bar/example] transparent = #00000000
width = 100%
background = ${colors.base}
background-alt = ${colors.crust}
foreground = ${colors.text}
primary = ${colors.lavender}
secondary = ${colors.mauve}
alert = ${colors.red}
disabled = ${colors.surface0}
[common]
height = 24pt height = 24pt
radius = 6 radius = 6
dpi = 0
dpi = 96 font-0 = FiraCode Nerd Font;size=12
font-1 = Iosevka Nerd Font;size=12
font-2 = Noto Sans;size=12
line-size = 3pt
background = ${colors.background} background = ${colors.background}
foreground = ${colors.foreground} foreground = ${colors.foreground}
padding = 1
line-size = 3pt
border-size = 4pt
border-color = ${colors.transparent}
padding-left = 0
padding-right = 1
module-margin = 1 module-margin = 1
border-size = 4pt
border-color = ${colors.background}
wm-restack = generic
override-redirect = false
separator = | separator = |
separator-foreground = ${colors.disabled} separator-foreground = ${colors.disabled}
font-0 = FiraCode Nerd Font;2
modules-left = xworkspaces xwindow
modules-right = filesystem alsa xkeyboard memory cpu wlan eth date
cursor-click = pointer
cursor-scroll = ns-resize
enable-ipc = true enable-ipc = true
tray-position = right [settings]
wm-restack = bspwm screenchange-reload = true
override-redirect = false pseudo-transparency = false
[bar/main]
inherit = common
width = 100%
modules-left = launcher xworkspaces
modules-right = pulseaudio-control-sink pulseaudio-control-source memory cpu bluetooth wlan eth date power-menu
[module/launcher]
type = custom/text
content = " "
click-left = "rofi -show drun &"
[module/power-menu]
type = custom/text
content = "󰐥 "
click-left = "~/.dotfiles/scripts/powermenu"
[module/xworkspaces] [module/xworkspaces]
type = internal/xworkspaces type = internal/xworkspaces
label-active = %name% icon-0 = "I; "
icon-1 = "II; "
icon-2 = "III; "
icon-3 = "IV; "
icon-4 = "V; "
icon-5 = "VI;󰓓 "
icon-6 = "VII;󰌾 "
icon-7 = "VIII;󰒋 "
icon-8 = "IX;󱣴 "
icon-9 = "X;󱣴 "
label-active = %icon%
label-active-background = ${colors.background-alt} label-active-background = ${colors.background-alt}
label-active-underline= ${colors.primary} label-active-underline= ${colors.primary}
label-active-padding = 1 label-active-padding = 1
label-occupied = %name% label-occupied = %icon%
label-occupied-padding = 1 label-occupied-padding = 1
label-urgent = %name% label-urgent = %icon%
label-urgent-background = ${colors.alert} label-urgent-background = ${colors.alert}
label-urgent-padding = 1 label-urgent-padding = 1
label-empty = %name% label-empty = %icon%
label-empty-foreground = ${colors.disabled} label-empty-foreground = ${colors.disabled}
label-empty-padding = 1 label-empty-padding = 1
[module/xwindow] [module/pulseaudio-control-sink]
type = internal/xwindow type = custom/script
label = %title:0:60:...% label = "%output%"
tail = true
interval = 0
exec = ~/.dotfiles/scripts/pulseaudio-control.bash --icon-muted "󰝟 " --icons-volume "󰕿 ,󰖀 ,󰕾 " --node-nicknames-from device.product.name --node-nickname "alsa_output.pci-0000_2d_00.1.hdmi-stereo-extra4.2:󰽟 " --node-nickname "alsa_output.pci-0000_2f_00.4.analog-stereo.2:󰋎 " --node-type output output
click-left = ~/.dotfiles/scripts/pulseaudio-control.bash --node-type output togmute
click-right = exec pavucontrol &
click-middle = ~/.dotfiles/scripts/pulseaudio-control.bash --node-type output next-node
scroll-up = ~/.dotfiles/scripts/pulseaudio-control.bash --node-type output up
scroll-down = ~/.dotfiles/scripts/pulseaudio-control.bash --node-type output down
[module/filesystem] [module/pulseaudio-control-source]
type = internal/fs type = custom/script
interval = 25 label = "%output%"
tail = true
mount-0 = / interval = 0
#mount-1 = /mnt/primary env-NODE-TYPE = "input"
#mount-2 = /mnt/secondary exec = ~/.dotfiles/scripts/pulseaudio-control.bash --icon-muted "󰍭 " --icons-volume "󰢳 ,󰍬 ,󰢴 " --node-nickname "alsa_input.pci-0000_2f_00.4.analog-stereo.2:󰋎 " --node-type input output
click-left = ~/.dotfiles/scripts/pulseaudio-control.bash --node-type input togmute
label-mounted = %{F#b7bdf8}%mountpoint%%{F-} %percentage_used%% click-right = exec pavucontrol &
click-middle = ~/.dotfiles/scripts/pulseaudio-control.bash --node-type input next-node
label-unmounted = %mountpoint% not mounted scroll-up = ~/.dotfiles/scripts/pulseaudio-control.bash --node-type input up
label-unmounted-foreground = ${colors.disabled} scroll-down = ~/.dotfiles/scripts/pulseaudio-control.bash --node-type input down
[module/alsa]
type = internal/alsa
format-volume-prefix = "VOL "
format-volume-prefix-foreground = ${colors.primary}
format-volume = <label-volume>
label-volume = %percentage%%
label-muted = muted
label-muted-foreground = ${colors.disabled}
[module/xkeyboard]
type = internal/xkeyboard
blacklist-0 = num lock
label-layout = %layout%
label-layout-foreground = ${colors.primary}
label-indicator-padding = 2
label-indicator-margin = 1
label-indicator-foreground = ${colors.background}
label-indicator-background = ${colors.secondary}
[module/memory] [module/memory]
type = internal/memory type = internal/memory
interval = 2 interval = 2
format-prefix = "RAM " format-prefix = "󰍛 "
format-prefix-foreground = ${colors.primary} format-prefix-foreground = ${colors.primary}
label = %percentage_used:2%% label = %percentage_used:2%%
[module/cpu] [module/cpu]
type = internal/cpu type = internal/cpu
interval = 2 interval = 2
format-prefix = "CPU " format-prefix = "󰻠 "
format-prefix-foreground = ${colors.primary} format-prefix-foreground = ${colors.primary}
label = %percentage:2%% label = %percentage:2%%
[module/bluetooth]
type = custom/script
exec = ~/.dotfiles/scripts/system-bluetooth-bluetoothctl.sh
tail = true
interval = 0
click-left = ~/.dotfiles/scripts/system-bluetooth-bluetoothctl.sh --toggle &
[network-base] [network-base]
type = internal/network type = internal/network
interval = 5 interval = 5
format-connected = <label-connected> format-connected = <label-connected>
format-disconnected = <label-disconnected> format-disconnected = <label-disconnected>
label-disconnected = %{F#b7bdf8}%ifname%%{F#ed8796} disconnected
[module/wlan] [module/wlan]
inherit = network-base inherit = network-base
interface-type = wireless interface-type = wireless
label-connected = %{F#b7bdf8}%ifname%%{F-} %essid% %local_ip% label-connected = "%{F#b7bdf8}󰖩 {F-} %essid%"
label-disconnected = "%{F#b7bdf8}󰖪 "
[module/eth] [module/eth]
inherit = network-base inherit = network-base
interface-type = wired interface-type = wired
label-connected = %{F#b7bdf8}%ifname%%{F-} %local_ip% label-connected = "%{F#b7bdf8}󰈁 "
label-disconnected = "%{F#b7bdf8}󰈂 "
[module/date] [module/date]
type = internal/date type = internal/date
@ -197,8 +204,4 @@ date-alt = %Y-%m-%d %H:%M:%S
label = %date% label = %date%
label-foreground = ${colors.primary} label-foreground = ${colors.primary}
[settings]
screenchange-reload = true
pseudo-transparency = false
; vim:ft=dosini ; vim:ft=dosini