Automatic desktop renamer for bspwm. Similar to btops but interfaces via subprocesses rather than UNIX sockets and focuses on icons.
Recognizes clients and renames desktops accordingly to a pre-configured FontAwesome icon set. Works with polybar.
bspwm (duh), xprop, python3, FontAwesome etc.
Install the package bspi-git from AUR : aura -A bspi-git.
Copy the configuration file: cp /usr/share/doc/bspi/bspi.ini ~/.config/bspwm/bspi.ini
Place the files bspi.py bspi_listen in a directory included in your $PATH. Store a copy of bspi.ini and remember the path. cp bspi.ini ~/.config/bspwm/bspi.ini
Icons are configured via bspi.ini - you may maintain your own copy and use it with bspi_listen --config path/to/bspi.ini & (add this to your bspwmrc)
The _other key is a fallback for all mismatched window names.
[Icons]
dolphin =
chromium =
firefox =
signal =
slack =
spotify =
termite =
urxvt =
tilix =
alacritty =
kitty =
code-oss =
_other = For polybar, make sure the fonts are configured in polybar/config, e.g.
font-3 = Font Awesome 5 Free:pixelsize=20;3
font-4 = Font Awesome 5 Free Solid:pixelsize=20;3
font-5 = Font Awesome 5 Brands:pixelsize=20;3
- tests
- docs
- screencast gif
- external configuration
Polybar Format Tags won't work for colored icons, bspwm truncates desktop names at 32 bytes.
