A minimalist and performant status bar written in C for Wayland compositors, designed to be lightweight and highly configurable.
  • C 95.3%
  • Python 3.7%
  • CMake 1%
Find a file
2026-02-20 19:33:02 +00:00
include feat: Added tooltip functionality, an event system, and rendering optimizations (experimental) 2026-02-04 18:07:10 +00:00
protocols feat: initial implementation of ZBar, a Wayland status bar with modular widgets and TOML configuration 2026-02-04 03:27:20 +00:00
scripts feat: initial implementation of ZBar, a Wayland status bar with modular widgets and TOML configuration 2026-02-04 03:27:20 +00:00
src feat: Added tooltip functionality, an event system, and rendering optimizations (experimental) 2026-02-04 18:07:10 +00:00
.gitignore feat: initial implementation of ZBar, a Wayland status bar with modular widgets and TOML configuration 2026-02-04 03:27:20 +00:00
CMakeLists.txt chore: Remove Python 3 embedding from build configuration. 2026-02-20 19:33:02 +00:00
LICENSE feat: initial implementation of ZBar, a Wayland status bar with modular widgets and TOML configuration 2026-02-04 03:27:20 +00:00
README.md Update README.md 2026-02-04 03:37:52 +00:00

ZBar

A minimalist and performant status bar written in C for Wayland compositors (with layer-shell support), designed to be lightweight and highly configurable.

Features

  • Wayland Native: Uses wlr-layer-shell for seamless integration
  • Zurin Integration: UNIX socket-based control for workspaces and window focus for integration with the Zurin compositor
  • Modular Widgets:
    • Workspaces (interactive)
    • Window Title
    • Python Integrations (dynamic output)
    • System Indicators (Volume, Network, Battery, Clock)
  • Runtime Configuration: TOML-based configuration for appearance and scripts

Dependencies

Required

Package Description
wayland Wayland core libraries
wayland-protocols Wayland protocol definitions
libpulse Audio system integration
python3 Python embedding support
nerd-fonts Font support for icons and special characters

Optional

Package Description
zurin Zurin compositor integration

Build Tools

  • CMake 3.12+
  • pkg-config
  • GCC or Clang
  • wayland-scanner

Building

# Create build directory
mkdir build && cd build

# Configure
cmake ..

# Build
make -j$(nproc)

# Install
sudo make install

Running

zbar

Configuration

Edit config.toml in the project directory or ~/.config/zbar/config.toml. Add the plugins you want to ~/.config/zbar/plugins.

Example Configuration

[appearance]
height = 32
gaps_out = 8
border_width = 2
border_color = "#1e3a5f"
background_color = "#0a1628"
font = "Mononoki Nerd Font 11"

[scripts]
music = "music.py"
weather = "weather.py"

License

GPLv3. See LICENSE file.

Contributing

Contributions are welcome! This project aims to complement the Zurin compositor ecosystem.