Where Is the bspwm Config File?
Where bspwm and sxhkd keep their configs on Linux, and which example files to copy for a first setup.
Last updated
bspwm configuration is a shell script, not a static file. The script at ~/.config/bspwm/bspwmrc runs at startup and issues bspc commands to set desktops, gaps, and rules. It must be executable.
Keys live elsewhere. sxhkd owns the bindings in ~/.config/sxhkd/sxhkdrc. Example copies of both files ship with the package under /usr/share/doc/bspwm/examples. Copy them down rather than writing from zero.
Where bspwm stores this, by platform
~/.config/bspwm/bspwmrc
Executable shell script that configures bspwm via bspc. Copy from /usr/share/doc/bspwm/examples/bspwmrc and chmod +x it.
~/.config/sxhkd/sxhkdrc
Keybindings file for the sxhkd hotkey daemon bspwm depends on. Copy from the same examples folder. Start with sxhkd & before exec bspwm.
Frequently asked questions
How do I set up bspwm and sxhkd from scratch?
Install both files from /usr/share/doc/bspwm/examples/ to ~/.config/bspwm/bspwmrc and ~/.config/sxhkd/sxhkdrc, then make bspwmrc executable. Start sxhkd before bspwm in your .xinitrc or the keybindings will silently do nothing.
Do I really need sxhkd with bspwm?
Yes. bspwm handles windows only; all keyboard input goes through a hotkey daemon, normally sxhkd. A blank screen with a working mouse but dead keys almost always means sxhkd is not running.
Notice an outdated path? Let us know.