Skip to content

Configurable statusbar for Xorg server using xsetroot

License

Notifications You must be signed in to change notification settings

javiorfo/ztatusbar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ztatusbar

Configurable statusbar developed in Zig for Xorg server using xsetroot

ztatusbar

Caveats

  • 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.

Installation

  • 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

Setup

  • In your ~/.xinitrc or ~/.xprofile to start in every login
ztatusbar 2> ztatusbar.log &

Overview

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

Customizable

  • 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

...

Donate

  • Bitcoin (QR) 1GqdJ63RDPE4eJKujHi166FAyigvHu5R7v
  • Paypal

About

Configurable statusbar for Xorg server using xsetroot

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published