The bar left the battery out because it belongs to whoever knows the hardware, and had no way to take it back in. i3status-rust now renders bar-neutral blocks through its template; the power module contributes the battery where the machine reports one and the power draw where something measures it, sampling the root-only energy counter as root and publishing only a rate. The memory block shows what programs hold, the figure memory-pressure judges by, instead of counting the cache as used.
110 lines
3.1 KiB
TOML
110 lines
3.1 KiB
TOML
# The bottom bar (module i3status-rust, novox/hq ADR 0208). Owned by the mesh: replaced at every
|
|
# push. Adopted from the workstations of 2026-10-04 with what follows a machine's hardware or one
|
|
# person's devices left out: a block that depends on the hardware is contributed by the module that
|
|
# knows it (novox/hq ADR 0255), and a headset's address is not the bar's to know. Every block written
|
|
# here works the same on any machine.
|
|
icons_format = "{icon}"
|
|
|
|
[theme]
|
|
theme = "plain"
|
|
[theme.overrides]
|
|
idle_bg = "#000000"
|
|
idle_fg = "#f1f1f1"
|
|
info_bg = "#000000"
|
|
info_fg = "#f1f1f1"
|
|
good_bg = "#000000"
|
|
good_fg = "#859900"
|
|
warning_bg = "#000000"
|
|
warning_fg = "#de5200"
|
|
critical_bg = "#000000"
|
|
critical_fg = "#ff0000"
|
|
separator = " | "
|
|
separator_fg = "#ffffff"
|
|
separator_bg = "#000000"
|
|
|
|
[icons]
|
|
icons = "custom-icons"
|
|
|
|
[[block]]
|
|
block = "tea_timer"
|
|
format = "$icon{ $minutes:$seconds|}"
|
|
done_cmd = "notify-send 'Timer finished'"
|
|
|
|
# Pending updates: official and, where an AUR helper is installed, AUR. The script keeps the last good
|
|
# count through a network gap and shows an error only after ten failed checks in a row. Click: the
|
|
# list, in the launcher's menu.
|
|
[[block]]
|
|
block = "custom"
|
|
command = "~/.local/bin/i3status-updates 10"
|
|
json = true
|
|
interval = 1800
|
|
[[block.click]]
|
|
button = "left"
|
|
cmd = "checkupdates | dmenu -l 20 -p Updates"
|
|
|
|
[[block]]
|
|
block = "cpu"
|
|
|
|
[[block]]
|
|
block = "disk_space"
|
|
path = "/"
|
|
info_type = "used"
|
|
alert_unit = "GB"
|
|
interval = 20
|
|
warning = 850
|
|
alert = 920
|
|
format = "$icon / $used.eng(w:2) ($percentage.eng(w:2))"
|
|
|
|
[[block]]
|
|
block = "disk_space"
|
|
path = "/home"
|
|
info_type = "used"
|
|
alert_unit = "GB"
|
|
interval = 20
|
|
warning = 850
|
|
alert = 920
|
|
format = "$icon /home $used.eng(w:2) ($percentage.eng(w:2))"
|
|
|
|
[[block]]
|
|
block = "memory"
|
|
# What programs hold, without the cache the kernel gives back when asked: the figure the memory-pressure
|
|
# module judges by. Counting the cache as used read near full on a machine with room to spare.
|
|
format = "$icon $mem_used.eng(w:2) ($mem_used_percents.eng(w:2))"
|
|
format_alt = "$icon_swap $swap_used.eng(w:2) ($swap_used_percents.eng(w:2))"
|
|
|
|
# Blocks other modules contribute beside the machine's resources (novox/hq ADR 0255), rendered from
|
|
# what they show by this module's template, and only on a machine that has what they show.
|
|
${contribution:node-bar:block:bar=bottom,place=resources}
|
|
[[block]]
|
|
block = "docker"
|
|
interval = 2
|
|
format = "$icon $running/$total"
|
|
|
|
[[block]]
|
|
block = "sound"
|
|
[[block.click]]
|
|
button = "left"
|
|
cmd = "pavucontrol"
|
|
|
|
# Blocks other modules contribute beside the sound (novox/hq ADR 0255): the power module's battery and
|
|
# power draw, where the machine has them.
|
|
${contribution:node-bar:block:bar=bottom,place=status}
|
|
# The weather from the Norwegian Meteorological Institute, which needs no key, where the machine is.
|
|
[[block]]
|
|
block = "weather"
|
|
format = "$icon $weather_verbose ($location) $temp"
|
|
autolocate = true
|
|
autolocate_interval = 600
|
|
[block.service]
|
|
name = "metno"
|
|
|
|
[[block]]
|
|
block = "notify"
|
|
driver = "dunst"
|
|
format = " $icon {($notification_count.eng(w:1))|}"
|
|
|
|
[[block]]
|
|
block = "time"
|
|
interval = 1
|
|
format = "$timestamp.datetime(f:'%a %d/%m %H:%M:%S')"
|