Polybar: The boys are back in town

This commit is contained in:
Salt 2019-06-24 04:44:48 -05:00
parent fcd7194761
commit ef25077940
4 changed files with 253 additions and 1 deletions

Binary file not shown.

195
.config/polybar/config Normal file
View File

@ -0,0 +1,195 @@
# vim:ft=dosini
# _ _
# _ __ ___ | |_ _| |__ __ _ _ __
# | '_ \ / _ \| | | | | '_ \ / _` | '__|
# | |_) | (_) | | |_| | |_) | (_| | |
# | .__/ \___/|_|\__, |_.__/ \__,_|_|
# |_| |___/
#
# Copyright (c) 2019 Vintage Salt <rehashedsalt@cock.li>
# Distributed under terms of the MIT license.
# https://github.com/jaagr/polybar
# https://gitlab.com/rehashedsalt/home
#
# ====================
# VARIABLES
# ====================
[res/colors]
# Arc
bg-dark = #383C4A
bg-light = #404552
border = #2B2E39
fg = #FFFCF6
selection = #5294E2
# Nord
red = #BF616A
green = #A3BE8C
yellow = #EBCB8B
blue = #81A1C1
magenta = #B48EAD
cyan = #88C0D0
[res/config]
padding = 2
padding-bar = 3
# ====================
# BARS
# ====================
[template/bar]
bottom = true
wm-restack = ${env:PB_WM_RESTACK:i3}
tray-maxsize = 16
background = ${res/colors.bg-dark}
foregrouond = ${res/colors.fg}
border-color = ${res/colors.border}
tray-background = ${res/colors.bg-dark}
height = 32
padding = ${res/config.padding-bar}
module-margin = 2
font-0 = "Inconsolata:style=Medium:size=10;2"
font-1 = "Deja Vu Sans Mono:style=Regular:size=10;2"
[bar/primary]
monitor = ${env:PB_MONITOR:eDP-1}
inherit = template/bar
border-top-size = 1
modules-left = i3 cpu memory battery
modules-right = backlight pulse date
# ====================
# MODULES
# ====================
[module/backlight]
type = internal/xbacklight
format = <ramp> <label>
label = %percentage:3%%
ramp-foreground = ${res/colors.yellow}
ramp-0 = ▁
ramp-1 = ▂
ramp-2 = ▃
ramp-3 = ▄
ramp-4 = ▅
ramp-5 = ▆
ramp-6 = ▇
ramp-7 = █
[module/battery]
type = internal/battery
full-at = 100
time-format = %H:%M
interval = 15
format-charging = <ramp-capacity> <label-charging>
format-discharging = <ramp-capacity> <label-discharging>
format-full = <ramp-capacity> <label-full>
label-charging = %percentage:3%%
label-discharging = %percentage:3%%
label-full= %percentage:3%%
ramp-capacity-foreground = ${res/colors.green}
ramp-capacity-0 = ▁
ramp-capacity-1 = ▂
ramp-capacity-2 = ▃
ramp-capacity-3 = ▄
ramp-capacity-4 = ▅
ramp-capacity-5 = ▆
ramp-capacity-6 = ▇
ramp-capacity-7 = █
[module/cpu]
type = internal/cpu
interval = 1
format = <ramp-coreload> <label>
label = %percentage:3%%
ramp-coreload-foreground = ${res/colors.blue}
ramp-coreload-spacing = 1
ramp-coreload-0 = ▁
ramp-coreload-1 = ▂
ramp-coreload-2 = ▃
ramp-coreload-3 = ▄
ramp-coreload-4 = ▅
ramp-coreload-5 = ▆
ramp-coreload-5-foreground = ${res/colors.yellow}
ramp-coreload-6 = ▇
ramp-coreload-6-foreground = ${res/colors.yellow}
ramp-coreload-7 = █
ramp-coreload-7-foreground = ${res/colors.red}
[module/date]
type = internal/date
date = %a
time = %I:%M %p
interval = 30
format = <label>
label = %date% %time%
[module/i3]
type = internal/i3
format = <label-state> <label-mode>
enable-scroll = false
pin-workspaces = true
label-mode-padding = ${res/config.padding}
label-mode-background = ${res/colors.red}
label-focused = %name%
label-focused-padding = ${res/config.padding}
label-focused-foreground = ${res/colors.fg}
label-focused-background = ${res/colors.selection}
label-unfocused = %name%
label-unfocused-padding = ${res/config.padding}
label-visible = %name%
label-visible-foreground = ${res/colors.bg-light}
label-visible-padding = ${res/config.padding}
[module/memory]
type = internal/memory
format = <ramp-used> <ramp-swap-used> <label>
label = %gb_free:8%
ramp-used-foreground = ${res/colors.magenta}
ramp-used-0 = ▁
ramp-used-1 = ▂
ramp-used-2 = ▃
ramp-used-3 = ▄
ramp-used-4 = ▅
ramp-used-5 = ▆
ramp-used-5-foreground = ${res/colors.yellow}
ramp-used-6 = ▇
ramp-used-6-foreground = ${res/colors.yellow}
ramp-used-7 = █
ramp-used-7-foreground = ${res/colors.red}
ramp-swap-used-foreground = ${res/colors.magenta}
ramp-swap-used-0 = ▁
ramp-swap-used-1 = ▂
ramp-swap-used-2 = ▃
ramp-swap-used-3 = ▄
ramp-swap-used-4 = ▅
ramp-swap-used-5 = ▆
ramp-swap-used-5-foreground = ${res/colors.yellow}
ramp-swap-used-6 = ▇
ramp-swap-used-6-foreground = ${res/colors.yellow}
ramp-swap-used-7 = █
ramp-swap-used-7-foreground = ${res/colors.red}
[module/pulse]
type = internal/pulseaudio
format-volume = <ramp-volume> <label-volume>
format-muted = <ramp-volume> <label-muted>
format-muted-foreground = ${res/colors.red}
label-muted = %percentage%%
label-muted-foreground = ${res/colors.red}
ramp-volume-foreground = ${res/colors.cyan}
ramp-volume-0 = ▁
ramp-volume-1 = ▂
ramp-volume-2 = ▃
ramp-volume-3 = ▄
ramp-volume-4 = ▅
ramp-volume-5 = ▆
ramp-volume-6 = ▇
ramp-volume-7 = █

57
.config/polybar/launch.sh Executable file
View File

@ -0,0 +1,57 @@
#! /bin/bash
#
# launch.sh
# A Polybar launch script with a heck of a lot of compat
# Copyright (C) 2019 Vintage Salt <rehashedsalt@cock.li>
#
# Distributed under terms of the MIT license.
#
# Trap our exit
die() {
kill $(jobs -p)
}
trap die EXIT
# Steps
step_configure_restack() {
# Restack compatibility
if pgrep -U "$UID" bspwm > /dev/null 2>&1; then
export PB_WM_RESTACK="bspwm"
elif pgrep -U "$UID" i3 > /dev/null 2>&1; then
export PB_WM_RESTACK="i3"
fi
}
step_spawn_primary() {
# Spawn bars on the primary monitor
export PB_MONITOR=$(xrandr -q | awk '/primary/{print $1}')
polybar -r primary &
polybar -r primary-2 &
}
step_spawn_secondary() {
# Spawn more for each secondary
export secondary_monitors=$(xrandr -q | grep ' connected' | grep -v 'primary' | awk '{print $1}')
if [ "$secondary_monitors" == "" ]; then
return 0
fi
for monitor in $secondary_monitors; do
PB_MONITOR=$monitor
polybar -r secondary &
polybar -r secondary-2 &
done
}
step_wait() {
# And wait
wait
}
# Main
main() {
step_configure_restack
step_spawn_primary
step_spawn_secondary
step_wait
}
main "$@"

@ -1 +1 @@
Subproject commit 3786a076b149c5724f1de74177c2d6ef54228718
Subproject commit 1fed8f80eb058316afdaae5ffae263dbc382d111