Overlay Bar for Sway

I recently found out about a cool software that I hadn’t heard of until now. It is right up my alley, and I wanted to write this short post to gush about it for a bit.

The program is called Wayland Overlay Bar (wob). It can be used to create simple progress/status bars for programs. The nice thing about it, is that it just takes an integer on a named pipe, and displays the value of that integer as a graphical bar.

Installation and configuration is very simple. After installing the program, you can create a named pipe, and connect that pipe to the stdin of wob:

mkfifo /tmp/wobpipe
tail -f /tmp/wobpipe | wob

For convenience, wob also provides a systemd socket file. The command below creates a wob pipe under $XDG_RUNTIME_DIR/wob.socket that is accessible to the current user.

systemctl --user enable wob.socket --now

I mainly use it for volume and brightness control. To make it work in sway, only a slight modification of my commands was necessary:


bindsym XF86AudioLowerVolume exec pamixer --decrease 5 && pamixer --get-volume > $WOBSOCK
bindsym XF86AudioRaiseVolume exec pamixer --increase 5 && pamixer --get-volume > $WOBSOCK
bindsym XF86MonBrightnessDown exec xbacklight -dec 5 && xbacklight -get > $WOBSOCK
bindsym XF86MonBrightnessUp exec xbacklight -inc 5 && xbacklight -get > $WOBSOCK

I love the simplicity and flexibility of this program. I really see myself using this often in the future.