;========================================================== ; ; ; ██████╗ ██████╗ ██╗ ██╗ ██╗██████╗ █████╗ ██████╗ ; ██╔══██╗██╔═══██╗██║ ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗ ; ██████╔╝██║ ██║██║ ╚████╔╝ ██████╔╝███████║██████╔╝ ; ██╔═══╝ ██║ ██║██║ ╚██╔╝ ██╔══██╗██╔══██║██╔══██╗ ; ██║ ╚██████╔╝███████╗██║ ██████╔╝██║ ██║██║ ██║ ; ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝ ; ; ; To learn more about how to configure Polybar ; go to https://github.com/polybar/polybar ; ; The README contains a lot of information ; ;========================================================== [colors] background = #ccfdf6e3 background-alt = #ccfdf6e3 foreground = #657b83 primary = #657b83 secondary = #657b83 alert = #A54242 disabled = #707880 [bar/top] #bottom = false #dock = false width = 100% height = 15pt radius = 0 # dpi = 135 background = ${colors.background} foreground = ${colors.foreground} line-size = 3pt border-size = 0pt border-color = #00000000 padding-left = 1 padding-right = 1 module-margin = 1 separator = | separator-foreground = ${colors.disabled} font-0 = Fira Mono:style=Medium:pixelsize=8;1 font-1 = PowerlineSymbols:size=10;1 font-2 = SymbolsNerdFont:size=10;1 modules-left = xwindow modules-center = date modules-right = network memory cpu temperature backlight pulseaudio battery xkeyboard powermenu 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 [bar/bottom] bottom = true width = 100% height = 15pt radius = 0 # dpi = 135 background = ${colors.background} foreground = ${colors.foreground} line-size = 3pt border-size = 0pt border-color = #00000000 padding-left = 0 padding-right = 1 module-margin = 1 separator = | separator-foreground = ${colors.disabled} font-0 = Fira Mono:style=Medium:pixelsize=8;1 font-1 = PowerlineSymbols:size=10;1 # font-2 = SymbolsNerdFont:size=10;1 font-2 = Symbols Nerd Font:style=Regular:size=10;1 modules-left = i3 modules-right = mpd mpdvol weather updates uptime cursor-click = pointer cursor-scroll = ns-resize enable-ipc = true tray-position = right [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/i3] type = internal/i3 pin-workspaces = true enable-scroll = true show-urgent = true strip-wsnumbers = true label-focused = %name% label-focused-background = ${colors.background-alt} label-focused-underline= ${colors.primary} label-focused-padding = 1 label-unfocused = %name% label-unfocused-padding = 1 label-visible = %name% label-visible-padding = 1 label-urgent = %name% label-urgent-foreground = #fdf6e3 label-urgent-background = #9a847c label-urgent-underline = #9a847c label-urgent-padding = 1 [module/mpd] type = internal/mpd ; Host where mpd is running (either ip or domain name) ; Can also be the full path to a unix socket where mpd is running. host = 192.168.0.186 port = 6600 ; password = mysecretpassword ; Seconds to sleep between progressbar/song timer sync ; Default: 1 interval = 1 ; Available tags: ; <label-song> (default) ; <label-time> ; <bar-progress> ; <toggle> - gets replaced with <icon-(pause|play)> ; <toggle-stop> - gets replaced with <icon-(stop|play)> ; <icon-random> ; <icon-repeat> ; <icon-repeatone> (deprecated) ; <icon-single> - Toggle playing only a single song. Replaces <icon-repeatone> ; <icon-consume> ; <icon-prev> ; <icon-stop> ; <icon-play> ; <icon-pause> ; <icon-next> ; <icon-seekb> ; <icon-seekf> # format-online = <icon-prev> <icon-stop> <toggle> <icon-next> | <label-time> | Now playing: <label-song> format-online = Now playing: <label-song> | <label-time> | <icon-prev> <icon-stop> <toggle> <icon-next> format-playing = ${self.format-online} format-paused = ${self.format-online} format-stopped = Press! -> <toggle> <- ; Available tags: ; <label-offline> ; Default: "" format-offline = <label-offline> ; Available tokens: ; %artist% ; %album-artist% ; %album% ; %date% ; %title% ; Default: %artist% - %title% label-song = %artist% - %title:0:78% label-time = %elapsed% / %total% label-offline = mpd is offline icon-play = icon-pause = icon-stop = icon-prev = icon-next = # [module/weather] # type = custom/script # exec = ~/.config/polybar/scripts/weather-plugin.sh # tail = false # interval = 960 [module/weather] type = custom/script exec = ANSIWEATHERRC=~/.config/ansiweather/config_for_bar ansiweather | sed 's#.*Sa.*rg: ##' | tr ':' ' ' tail = false interval = 960 [module/updates] type = custom/script exec = ~/.config/polybar/scripts/updates.sh interval = 3600 [module/uptime] type = custom/script exec = echo $(uptime | sed 's/.*up //g;s/,.*user.*//g' ) interval = 600 [module/mpdvol] type = custom/script exec = echo $(mpc --host=192.168.0.186 status %volume%) interval = 5 [module/xwindow] type = internal/xwindow label = %title% label-maxlen = 100 label-ellipsis = true [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/backlight] type = internal/backlight ; Available tags: ; <label> (default) ; <ramp> ; <bar> format = <ramp> <label> ; Available tokens: ; %percentage% (default) label = %percentage%% ; Only applies if <ramp> is used ramp-0 = ramp-1 = ramp-2 = ramp-3 = ramp-4 = ; Use the following command to list available cards: ; $ ls -1 /sys/class/backlight/ card = intel_backlight ; 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 [module/pulseaudio] type = internal/pulseaudio ; Available tags: ; <label-volume> (default) ; <ramp-volume> ; <bar-volume> format-volume = <ramp-volume> <label-volume> label-volume = %percentage%% label-muted = label-muted-foreground = ${colors.disabled} ; Only applies if <ramp-volume> is used ramp-volume-0 = ramp-volume-1 = ramp-volume-2 = [module/xkeyboard] type = internal/xkeyboard blacklist-0 = num lock label-layout = %layout% label-layout-foreground = ${colors.primary} label-indicator-on-capslock = label-indicator-padding = 1 label-indicator-margin = 1 label-indicator-foreground = ${colors.background} label-indicator-background = ${colors.secondary} [module/memory] type = internal/memory interval = 2 # format-prefix = " " format-prefix-foreground = ${colors.primary} label = %gb_used% | %swap_used% [module/cpu] type = internal/cpu interval = 2 format-prefix = " " format-prefix-foreground = ${colors.primary} label = %percentage:2%% # [module/freq] # type = custom/script # format = <label> MHz # exec = cat /proc/cpuinfo | grep MHz | sed 's/cpu MHz//' | sed 's/://' | awk '{print int($1+0.5)}' # # tail = true # click-left = kill -USR1 %pid% # format-prefix = " " # interval = 3 [module/fan] type = custom/script format = <label> exec = sensors asus-isa-0000 | grep cpu_fan | sed 's/cpu_fan: //' # tail = true ; click-left = kill -USR1 %pid% format-prefix = " " interval = 5 [module/temperature] type = internal/temperature ; Seconds to sleep between updates ; Default: 1 interval = 1 format = <label> ; Thermal zone to use ; To list all the zone types, run ; $ for i in /sys/class/thermal/thermal_zone*; do echo "$i: $(<$i/type)"; done ; Default: 0 thermal-zone = 0 ; Full path of temperature sysfs path ; Use `sensors` to find preferred temperature source, then run ; $ for i in /sys/class/hwmon/hwmon*/temp*_input; do echo "$(<$(dirname $i)/name): $(cat ${i%_*}_label 2>/dev/null || echo $(basename ${i%_*})) $(readlink -f $i)"; done ; to find path to desired file ; Default reverts to thermal zone setting hwmon-path = /sys/devices/platform/coretemp.0/hwmon/hwmon3/temp2_input ; Base temperature for where to start the ramp (in degrees celsius) ; Default: 0 base-temperature = 40 ; Threshold temperature to display warning label (in degrees celsius) ; Default: 80 warn-temperature = 80 [network-base] type = internal/network interval = 5 format-connected = <label-connected> <ramp-signal> format-disconnected = <label-disconnected> label-disconnected = %{F#F0C674}%ifname%%{F#707880} disconnected [module/network] type = internal/network ; Name of the network interface to display. You can get the names of the ; interfaces on your machine with `ip link` ; Wireless interfaces often start with `wl` and ethernet interface with `eno` or `eth` interface = wlan0 ; If no interface is specified, polybar can detect an interface of the given type. ; If multiple are found, it will prefer running interfaces and otherwise just ; use the first one found. ; Either 'wired' or 'wireless' ; New in version 3.6.0 interface-type = wireless ; Seconds to sleep between updates ; Default: 1 interval = 3.0 ; Test connectivity every Nth update ; A value of 0 disables the feature ; NOTE: Experimental (needs more testing) ; Default: 0 # ping-interval = 3 ; @deprecated: Define min width using token specifiers (%downspeed:min% and %upspeed:min%) ; Minimum output width of upload/download rate ; Default: 3 # udspeed-minwidth = 5 ; Accumulate values from all interfaces ; when querying for up/downspeed rate ; Default: false # accumulate-stats = true ; Consider an `UNKNOWN` interface state as up. ; Some devices like USB network adapters have ; an unknown state, even when they're running ; Default: false # unknown-as-up = true ; The unit used for displaying network speeds ; For example if set to the empty string, a speed of 5 KB/s is displayed as 5 K ; Default: B/s ; New in version 3.6.0 # speed-unit = 'Kb/s' # inherit = network-base # interface-type = wireless label-connected = %signal%% label-disconnected = ; Available tags: ; <label-connected> (default) ; <ramp-signal> format-connected = <label-connected> ; Available tags: ; <label-disconnected> (default) format-disconnected = <label-disconnected> ; Available tags: ; <label-connected> (default) ; <label-packetloss> ; <animation-packetloss> format-packetloss = <animation-packetloss> <label-connected> ; All labels support the following tokens: ; %ifname% [wireless+wired] ; %local_ip% [wireless+wired] ; %local_ip6% [wireless+wired] ; %essid% [wireless] ; %signal% [wireless] ; %upspeed% [wireless+wired] ; %downspeed% [wireless+wired] ; %netspeed% [wireless+wired] (%upspeed% + %downspeed%) (New in version 3.6.0) ; %linkspeed% [wired] ; %mac% [wireless+wired] (New in version 3.6.0) ; Default: %ifname% %local_ip% # label-connected = %essid% %downspeed:9% # label-connected-foreground = #eefafafa ; Default: (none) # label-disconnected = not connected # label-disconnected-foreground = #66ffffff ; Default: (none) # label-packetloss = %essid% # label-packetloss-foreground = #eefafafa ; Only applies if <ramp-signal> is used # ramp-signal-0 = 😱 # ramp-signal-1 = 😠 # ramp-signal-2 = 😒 # ramp-signal-3 = 😊 # ramp-signal-4 = 😃 # ramp-signal-5 = 😈 ; 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 = %a %d/%m %H:%M date-alt = %H:%M:%S label = %date% label-foreground = ${colors.primary} [module/battery] type = internal/battery ; This is useful in case the battery never reports 100% charge ; Default: 100 full-at = 100 ; format-low once this charge percentage is reached ; Default: 10 ; New in version 3.6.0 low-at = 25 ; 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 = <ramp-capacity> <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 = %percentage%% ; 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 = %percentage%% ; Available tokens: ; %percentage% (default) - is set to 100 if full-at is reached ; %percentage_raw% label-full = ; 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 ; Only applies if <ramp-capacity> is used 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 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 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/powermenu] type = custom/menu menu-0-0 = Poweroff menu-0-0-exec = poweroff menu-0-1 = Suspend menu-0-1-exec = systemctl suspend label-open = [settings] screenchange-reload = true pseudo-transparency = true ; vim:ft=dosini