Configurable statusbar developed in Zig for Xorg server using xsetroot
- Zig version 0.13.0
- C lib dependencies:
xorg-xsetroot
,curl
,alsa
- This library has been developed on and for Linux following open source philosophy.
- Downloading, compiling and installing manually:
git clone https://github.com/javiorfo/ztatusbar
cd ztatusbar
sudo make clean install
NOTE: variable OPTIMIZE could be pass as parameter to activate different Zig build modes (default is ReleaseFast).
- From AUR Arch Linux:
yay -S ztatusbar
- In your ~/.xinitrc or ~/.xprofile to start in every login
ztatusbar 2> ztatusbar.log &
Component | rstatusbar | NOTE |
---|---|---|
CPU usage | ✔️ | Percentage |
RAM usage | ✔️ | Percentage |
TEMPERATURE | ✔️ | Celcious |
DISK USAGE | ✔️ | Percentage |
VOLUME LEVEL | ✔️ | Level and Mute status |
BLUETOOTH | ❌ | |
BATTERY LEVEL | ✔️ | Percentage |
CUSTOM SCRIPT | ✔️ | Execute a custom script.sh |
NETWORK STATUS | ✔️ | Up or down |
WEATHER | ✔️ | Celcious, using wttr |
DATE | ✔️ | Could be custimizable |
- By default the statusbar contains: cpu usage, memory usage, temperature, disk usage, volume and datetime
- For a custom configuration put this file config.toml in your
~/.config/ztatusbar/config.toml
and edit it to change values or delete a component. - Some configuration example in config.toml:
[memory]
time = 1000 # Time in miliseconds defines how often the process runs
name = "RAM" # Name of the component. Could be empty => name = ""
icon = "" # Icon of the component. Could be empty => icon = ""
[disk]
time = 2000
name = "DISK"
icon = " "
unit = "/"
[volume]
time = 100
name = "VOL"
icon = " "
icon_muted = " "
[temperature]
time = 1000
name = "TEMP"
icon = " "
zone = 1 # thermal zone which has the temperature in /sys/class/thermal_zone{variable here}/temp. If not set it uses thermal_zone0/temp
...