Add polybar configuration
This commit is contained in:
404
.config/polybar/config
Normal file
404
.config/polybar/config
Normal file
@@ -0,0 +1,404 @@
|
|||||||
|
;==========================================================
|
||||||
|
;
|
||||||
|
;
|
||||||
|
; ██████╗ ██████╗ ██╗ ██╗ ██╗██████╗ █████╗ ██████╗
|
||||||
|
; ██╔══██╗██╔═══██╗██║ ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗
|
||||||
|
; ██████╔╝██║ ██║██║ ╚████╔╝ ██████╔╝███████║██████╔╝
|
||||||
|
; ██╔═══╝ ██║ ██║██║ ╚██╔╝ ██╔══██╗██╔══██║██╔══██╗
|
||||||
|
; ██║ ╚██████╔╝███████╗██║ ██████╔╝██║ ██║██║ ██║
|
||||||
|
; ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝
|
||||||
|
;
|
||||||
|
;
|
||||||
|
; To learn more about how to configure Polybar
|
||||||
|
; go to https://github.com/polybar/polybar
|
||||||
|
;
|
||||||
|
; The README contains a lot of information
|
||||||
|
;
|
||||||
|
;==========================================================
|
||||||
|
|
||||||
|
[colors]
|
||||||
|
background = #282A2E
|
||||||
|
background-alt = #373B41
|
||||||
|
foreground = #C5C8C6
|
||||||
|
primary = #F0C674
|
||||||
|
secondary = #8ABEB7
|
||||||
|
alert = #A54242
|
||||||
|
disabled = #707880
|
||||||
|
|
||||||
|
[bar/felix]
|
||||||
|
; bottom = true
|
||||||
|
width = 100%
|
||||||
|
height = 24pt
|
||||||
|
radius = 0
|
||||||
|
bottom = true
|
||||||
|
border-left-size = 0
|
||||||
|
border-right-size = 0
|
||||||
|
border-bottom-size = 0
|
||||||
|
border-top-size = 2
|
||||||
|
|
||||||
|
; dpi = 96
|
||||||
|
|
||||||
|
monitor = ${env:MONITOR:eDP-1}
|
||||||
|
|
||||||
|
background = ${colors.background}
|
||||||
|
foreground = ${colors.foreground}
|
||||||
|
|
||||||
|
line-size = 3pt
|
||||||
|
|
||||||
|
border-size = 4pt
|
||||||
|
border-color = #00000000
|
||||||
|
|
||||||
|
padding-left = 0
|
||||||
|
padding-right = 1
|
||||||
|
|
||||||
|
module-margin = 1
|
||||||
|
|
||||||
|
separator = |
|
||||||
|
separator-foreground = ${colors.disabled}
|
||||||
|
|
||||||
|
font-0 = monospace;2
|
||||||
|
font-1 = Material Design Icons;2
|
||||||
|
font-2 = FontAwesome;2
|
||||||
|
font-3 = Roboto;2
|
||||||
|
|
||||||
|
; modules-left = xworkspaces xwindow
|
||||||
|
modules-left = xworkspaces
|
||||||
|
; modules-right = backlight filesystem pulseaudio memory cpu wlan battery date
|
||||||
|
modules-right = backlight filesystem pulseaudio mic memory cpu wlan eth battery date
|
||||||
|
|
||||||
|
cursor-click = pointer
|
||||||
|
cursor-scroll = ns-resize
|
||||||
|
|
||||||
|
enable-ipc = true
|
||||||
|
|
||||||
|
tray-position = right
|
||||||
|
|
||||||
|
; wm-restack = generic
|
||||||
|
; wm-restack = bspwm
|
||||||
|
wm-restack = i3
|
||||||
|
|
||||||
|
; override-redirect = true
|
||||||
|
|
||||||
|
[module/mic]
|
||||||
|
type = custom/script
|
||||||
|
tail = true
|
||||||
|
label-foreground = ${colors.foreground}
|
||||||
|
label-background = ${colors.background}
|
||||||
|
interval = 1
|
||||||
|
|
||||||
|
exec = ~/.config/polybar/microphone-toggle.sh
|
||||||
|
click-left = pactl set-source-mute @DEFAULT_SOURCE@ toggle
|
||||||
|
click-right = pavucontrol -t 4 &
|
||||||
|
|
||||||
|
[module/backlight]
|
||||||
|
type = internal/backlight
|
||||||
|
|
||||||
|
; Use the following command to list available cards:
|
||||||
|
; $ ls -1 /sys/class/backlight/
|
||||||
|
;card = intel_backlight
|
||||||
|
cart = ascpi_video0
|
||||||
|
|
||||||
|
; Use the `/sys/class/backlight/.../actual-brightness` file
|
||||||
|
; rather than the regular `brightness` file.
|
||||||
|
; Defaults to true unless the specified card is an amdgpu backlight.
|
||||||
|
; New in version 3.6.0
|
||||||
|
use-actual-brightness = true
|
||||||
|
|
||||||
|
; Enable changing the backlight with the scroll wheel
|
||||||
|
; NOTE: This may require additional configuration on some systems. Polybar will
|
||||||
|
; write to `/sys/class/backlight/${self.card}/brightness` which requires polybar
|
||||||
|
; to have write access to that file.
|
||||||
|
; DO NOT RUN POLYBAR AS ROOT.
|
||||||
|
; The recommended way is to add the user to the
|
||||||
|
; `video` group and give that group write-privileges for the `brightness` file.
|
||||||
|
; See the ArchWiki for more information:
|
||||||
|
; https://wiki.archlinux.org/index.php/Backlight#ACPI
|
||||||
|
; Default: false
|
||||||
|
enable-scroll = true
|
||||||
|
|
||||||
|
; Available tags:
|
||||||
|
; <label> (default)
|
||||||
|
; <ramp>
|
||||||
|
; <bar>
|
||||||
|
format = <label>
|
||||||
|
|
||||||
|
; Available tokens:
|
||||||
|
; %percentage% (default)
|
||||||
|
label = %percentage%%
|
||||||
|
|
||||||
|
; Only applies if <ramp> is used
|
||||||
|
ramp-0 = 🌕
|
||||||
|
ramp-1 = 🌔
|
||||||
|
ramp-2 = 🌓
|
||||||
|
ramp-3 = 🌒
|
||||||
|
ramp-4 = 🌑
|
||||||
|
|
||||||
|
; Only applies if <bar> is used
|
||||||
|
bar-width = 10
|
||||||
|
bar-indicator = |
|
||||||
|
bar-fill = ─
|
||||||
|
bar-empty = ─
|
||||||
|
|
||||||
|
[module/battery]
|
||||||
|
type = internal/battery
|
||||||
|
|
||||||
|
; This is useful in case the battery never reports 100% charge
|
||||||
|
; Default: 100
|
||||||
|
full-at = 99
|
||||||
|
|
||||||
|
; format-low once this charge percentage is reached
|
||||||
|
; Default: 10
|
||||||
|
; New in version 3.6.0
|
||||||
|
low-at = 5
|
||||||
|
|
||||||
|
; Use the following command to list batteries and adapters:
|
||||||
|
; $ ls -1 /sys/class/power_supply/
|
||||||
|
battery = BAT0
|
||||||
|
adapter = ADP1
|
||||||
|
|
||||||
|
; If an inotify event haven't been reported in this many
|
||||||
|
; seconds, manually poll for new values.
|
||||||
|
;
|
||||||
|
; Needed as a fallback for systems that don't report events
|
||||||
|
; on sysfs/procfs.
|
||||||
|
;
|
||||||
|
; Disable polling by setting the interval to 0.
|
||||||
|
;
|
||||||
|
; Default: 5
|
||||||
|
poll-interval = 5
|
||||||
|
|
||||||
|
; see "man date" for details on how to format the time string
|
||||||
|
; NOTE: if you want to use syntax tags here you need to use %%{...}
|
||||||
|
; Default: %H:%M:%S
|
||||||
|
time-format = %H:%M
|
||||||
|
|
||||||
|
; Available tags:
|
||||||
|
; <label-charging> (default)
|
||||||
|
; <bar-capacity>
|
||||||
|
; <ramp-capacity>
|
||||||
|
; <animation-charging>
|
||||||
|
format-charging = <animation-charging> <label-charging>
|
||||||
|
|
||||||
|
; Available tags:
|
||||||
|
; <label-discharging> (default)
|
||||||
|
; <bar-capacity>
|
||||||
|
; <ramp-capacity>
|
||||||
|
; <animation-discharging>
|
||||||
|
format-discharging = <animation-discharging> <label-discharging>
|
||||||
|
|
||||||
|
; Available tags:
|
||||||
|
; <label-full> (default)
|
||||||
|
; <bar-capacity>
|
||||||
|
; <ramp-capacity>
|
||||||
|
format-full = <ramp-capacity> <label-full>
|
||||||
|
|
||||||
|
; Format used when battery level drops to low-at
|
||||||
|
; If not defined, format-discharging is used instead.
|
||||||
|
; Available tags:
|
||||||
|
; <label-low>
|
||||||
|
; <animation-low>
|
||||||
|
; <bar-capacity>
|
||||||
|
; <ramp-capacity>
|
||||||
|
; New in version 3.6.0
|
||||||
|
format-low = <label-low> <animation-low>
|
||||||
|
|
||||||
|
; Available tokens:
|
||||||
|
; %percentage% (default) - is set to 100 if full-at is reached
|
||||||
|
; %percentage_raw%
|
||||||
|
; %time%
|
||||||
|
; %consumption% (shows current charge rate in watts)
|
||||||
|
label-charging = Charging %percentage%% (%time%)
|
||||||
|
|
||||||
|
; Available tokens:
|
||||||
|
; %percentage% (default) - is set to 100 if full-at is reached
|
||||||
|
; %percentage_raw%
|
||||||
|
; %time%
|
||||||
|
; %consumption% (shows current discharge rate in watts)
|
||||||
|
label-discharging = Discharging %percentage_raw%% (%time%)
|
||||||
|
|
||||||
|
; Available tokens:
|
||||||
|
; %percentage% (default) - is set to 100 if full-at is reached
|
||||||
|
; %percentage_raw%
|
||||||
|
label-full = Fully charged
|
||||||
|
|
||||||
|
; Available tokens:
|
||||||
|
; %percentage% (default) - is set to 100 if full-at is reached
|
||||||
|
; %percentage_raw%
|
||||||
|
; %time%
|
||||||
|
; %consumption% (shows current discharge rate in watts)
|
||||||
|
; New in version 3.6.0
|
||||||
|
label-low = BATTERY LOW (%time%)
|
||||||
|
|
||||||
|
; Only applies if <ramp-capacity> is used
|
||||||
|
; fontawesome icons
|
||||||
|
ramp-capacity-0 =
|
||||||
|
ramp-capacity-1 =
|
||||||
|
ramp-capacity-2 =
|
||||||
|
ramp-capacity-3 =
|
||||||
|
ramp-capacity-4 =
|
||||||
|
; material icons
|
||||||
|
; ramp-capacity-0 =
|
||||||
|
; ramp-capacity-1 =
|
||||||
|
; ramp-capacity-2 =
|
||||||
|
; ramp-capacity-3 =
|
||||||
|
; ramp-capacity-4 =
|
||||||
|
|
||||||
|
; Only applies if <bar-capacity> is used
|
||||||
|
bar-capacity-width = 10
|
||||||
|
|
||||||
|
; Only applies if <animation-charging> is used
|
||||||
|
; fontawesome icons
|
||||||
|
animation-charging-0 =
|
||||||
|
animation-charging-1 =
|
||||||
|
animation-charging-2 =
|
||||||
|
animation-charging-3 =
|
||||||
|
animation-charging-4 =
|
||||||
|
; material icons
|
||||||
|
; animation-charging-0 =
|
||||||
|
; animation-charging-1 =
|
||||||
|
; animation-charging-2 =
|
||||||
|
; animation-charging-3 =
|
||||||
|
; animation-charging-4 =
|
||||||
|
; Framerate in milliseconds
|
||||||
|
animation-charging-framerate = 750
|
||||||
|
|
||||||
|
; Only applies if <animation-discharging> is used
|
||||||
|
; fontawesome icons
|
||||||
|
animation-discharging-0 =
|
||||||
|
animation-discharging-1 =
|
||||||
|
animation-discharging-2 =
|
||||||
|
animation-discharging-3 =
|
||||||
|
animation-discharging-4 =
|
||||||
|
; material icons
|
||||||
|
; animation-discharging-0 =
|
||||||
|
; animation-discharging-1 =
|
||||||
|
; animation-discharging-2 =
|
||||||
|
; animation-discharging-3 =
|
||||||
|
; animation-discharging-4 =
|
||||||
|
; Framerate in milliseconds
|
||||||
|
animation-discharging-framerate = 500
|
||||||
|
|
||||||
|
; Only applies if <animation-low> is used
|
||||||
|
; New in version 3.6.0
|
||||||
|
animation-low-0 = !
|
||||||
|
animation-low-1 =
|
||||||
|
animation-low-framerate = 200
|
||||||
|
|
||||||
|
[module/xworkspaces]
|
||||||
|
type = internal/xworkspaces
|
||||||
|
|
||||||
|
label-active = %name%
|
||||||
|
label-active-background = ${colors.background-alt}
|
||||||
|
label-active-underline= ${colors.primary}
|
||||||
|
label-active-padding = 1
|
||||||
|
|
||||||
|
label-occupied = %name%
|
||||||
|
label-occupied-padding = 1
|
||||||
|
|
||||||
|
label-urgent = %name%
|
||||||
|
label-urgent-background = ${colors.alert}
|
||||||
|
label-urgent-padding = 1
|
||||||
|
|
||||||
|
label-empty = %name%
|
||||||
|
label-empty-foreground = ${colors.disabled}
|
||||||
|
label-empty-padding = 1
|
||||||
|
|
||||||
|
[module/xwindow]
|
||||||
|
type = internal/xwindow
|
||||||
|
label = %title:0:60:...%
|
||||||
|
|
||||||
|
[module/filesystem]
|
||||||
|
type = internal/fs
|
||||||
|
interval = 25
|
||||||
|
|
||||||
|
mount-0 = /
|
||||||
|
|
||||||
|
label-mounted = %{F#F0C674}%mountpoint%%{F-} %percentage_used%%
|
||||||
|
|
||||||
|
label-unmounted = %mountpoint% not mounted
|
||||||
|
label-unmounted-foreground = ${colors.disabled}
|
||||||
|
|
||||||
|
[module/pulseaudio]
|
||||||
|
type = internal/pulseaudio
|
||||||
|
|
||||||
|
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]
|
||||||
|
type = internal/memory
|
||||||
|
interval = 1
|
||||||
|
format-prefix = "RAM "
|
||||||
|
format-prefix-foreground = ${colors.primary}
|
||||||
|
; label = %percentage_used:2%%
|
||||||
|
label = %gb_free%
|
||||||
|
warn-percentage = 80
|
||||||
|
|
||||||
|
[module/cpu]
|
||||||
|
type = internal/cpu
|
||||||
|
interval = 2
|
||||||
|
format-prefix = "CPU "
|
||||||
|
format-prefix-foreground = ${colors.primary}
|
||||||
|
label = %percentage:2%%
|
||||||
|
|
||||||
|
[network-base]
|
||||||
|
type = internal/network
|
||||||
|
interval = 5
|
||||||
|
format-connected = <label-connected>
|
||||||
|
format-disconnected = <label-disconnected>
|
||||||
|
label-disconnected = %{F#F0C674}%ifname%%{F#707880} disconnected
|
||||||
|
|
||||||
|
[module/wlan]
|
||||||
|
inherit = network-base
|
||||||
|
interface-type = wireless
|
||||||
|
interface = wlp0s20f3
|
||||||
|
format-packetloss = <animation-packetloss> <label-connected>
|
||||||
|
label-connected = " (%downspeed%)"
|
||||||
|
label-disconnected = " not connected"
|
||||||
|
label-disconnected-foreground = #66ffff
|
||||||
|
|
||||||
|
; Only applies if <animation-packetloss> is used
|
||||||
|
animation-packetloss-0 = ⚠
|
||||||
|
animation-packetloss-0-foreground = #ffa64c
|
||||||
|
animation-packetloss-1 = 📶
|
||||||
|
animation-packetloss-1-foreground = #000000
|
||||||
|
; Framerate in milliseconds
|
||||||
|
animation-packetloss-framerate = 500
|
||||||
|
|
||||||
|
[module/eth]
|
||||||
|
inherit = network-base
|
||||||
|
interface-type = wired
|
||||||
|
label-connected = %{F#F0C674}%ifname%%{F-} %local_ip%
|
||||||
|
|
||||||
|
[module/date]
|
||||||
|
type = internal/date
|
||||||
|
interval = 1
|
||||||
|
|
||||||
|
date = %Y-%m-%d %H:%M:%S
|
||||||
|
date-alt = %H:%M
|
||||||
|
|
||||||
|
label = %date%
|
||||||
|
label-foreground = ${colors.primary}
|
||||||
|
|
||||||
|
[settings]
|
||||||
|
screenchange-reload = true
|
||||||
|
pseudo-transparency = true
|
||||||
|
|
||||||
|
; vim:ft=dosini
|
||||||
17
.config/polybar/launch.sh
Executable file
17
.config/polybar/launch.sh
Executable file
@@ -0,0 +1,17 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Terminate already running bar instances
|
||||||
|
killall -q polybar
|
||||||
|
# If all your bars have ipc enabled, you can also use
|
||||||
|
# polybar-msg cmd quit
|
||||||
|
|
||||||
|
# Launch Polybar on each monitor, using default config location (~/.config/polybar/config)
|
||||||
|
for m in $(polybar --list-monitors | cut -d: -f1)
|
||||||
|
do
|
||||||
|
MONITOR=$m polybar felix 2>&1 >> /tmp/polybar-$m.log &
|
||||||
|
done
|
||||||
|
|
||||||
|
# detach all running polybar-jobs from the current shell
|
||||||
|
disown -a
|
||||||
|
|
||||||
|
echo "Polybar launched..."
|
||||||
13
.config/polybar/microphone-toggle.sh
Executable file
13
.config/polybar/microphone-toggle.sh
Executable file
@@ -0,0 +1,13 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
default_source="$(pactl info @DEFAULT_SOURCE@ | awk '/Default Source:/{print $3}')"
|
||||||
|
state="$(pactl list sources | awk '/Name: '"$default_source"'/{x=1}/Mute:/&&x==1{print $2;x=0}')"
|
||||||
|
|
||||||
|
if [ "$state" = "no" ]
|
||||||
|
then
|
||||||
|
#echo "" # on
|
||||||
|
echo ""
|
||||||
|
else
|
||||||
|
#echo "" # muted
|
||||||
|
echo ""
|
||||||
|
fi
|
||||||
Reference in New Issue
Block a user