Skip to content

Waybar ​

Waybar is the main HyprFlux panel. HyprFlux ships one active horizontal layout, reusable module banks, grouped drawers, and a static generated color palette. It installs waybar-git because the workspace module uses Hyprland's Lua dispatcher support.

Files ​

text
~/.config/waybar/
|- config                # active layout and module placement
|- style.css             # imports the default stylesheet
|- Modules               # standard Waybar modules
|- ModulesCustom         # HyprFlux commands and launchers
|- ModulesGroups         # expandable drawers
|- ModulesWorkspaces     # workspace display variants
|- ModulesVertical       # definitions not loaded by default
|- UserModules           # empty extension point
|- hyprflux-colors.css   # generated static palette
`- style/HyprFlux-Default.css

The active config includes the standard, workspace, custom, group, and user module banks. It does not include ModulesVertical, and the desktop and laptop layout files are currently identical.

The repository's .config/waybar/ directory is canonical. base-dots/config/waybar/ is a parity mirror, not a second deployment source.

Active layout ​

RegionModules
Leftseparators, Cava visualizer, player controls, active-window title
Centerwindow-rewrite workspaces, clock, weather, idle inhibitor
Rightapplication, notification, tray, terminal, updater, laptop, hardware, audio, and status groups

The expandable groups are defined in ModulesGroups:

GroupContents
ApplicationsRofi, wallpaper selector, Thunar, Kitty, browser, quick settings
NotificationsSwayNC state and the HyprFlux updater
LaptopBacklight and battery
HardwareTemperature, CPU, power profile, memory, disk
AudioOutput volume and microphone
StatusWlogout, lock, Caps Lock, keyboard layout

ModulesWorkspaces contains several display variants, but the active layout uses hyprland/workspaces#rw. Its clicks and scroll actions use Hyprland Lua dispatchers, so switching to another variant can change those semantics.

Colors and styling ​

Waybar colors do not change with the wallpaper. The default stylesheet imports hyprflux-colors.css, which is generated from the central HyprFlux palette by utilities/sync-colors.sh.

For source development, edit the central palette and regenerate the outputs:

bash
./utilities/sync-colors.sh

Do not hand-edit hyprflux-colors.css in a source contribution. CI verifies the generated output and the .config/base-dots parity.

Common interactions ​

ControlAction
Rofi buttonCloses an existing Rofi instance, or opens drun, run, file-browser, and window modes
Wallpaper buttonMiddle-click opens the selector. Images use AWWW and videos use mpvpaper
Terminal buttonResolves the terminal from user-defaults.lua and opens Kitty by default
SwayNC buttonLeft click toggles the panel. Right click toggles do-not-disturb
PlayerPrevious and play/pause on the mouse buttons. The wheel adjusts volume
Hardware controlsOpen tools such as btop, nvtop, or gnome-system-monitor
Power controlOpens the adaptive Wlogout launcher
Lock controlCalls the HyprFlux lock bridge

The exact commands live in ModulesCustom and ModulesGroups.

Reload and troubleshoot ​

Reload a running bar after you edit it:

bash
pkill -SIGUSR2 waybar

Restart it if a reload is not enough:

bash
pkill waybar
waybar

Run Waybar in a terminal to see module errors:

bash
waybar -l debug

Current source limitations

The shipped tooltip describes the wallpaper click incorrectly. The updater's visibility guard treats zero as visible, and the inactive vertical power group references an undefined module. The selected horizontal layout stays usable. These are defects in the HyprFlux source, not something you can fix through the configuration files.

Released under the MIT License.