Where Is the dmenu Config File?
dmenu has no config file at runtime. Settings live in config.h in the source tree and bake in at compile time.
Last updated
dmenu deliberately keeps zero runtime config. Every tunable (position, fonts, colors, lines, word delimiters) is a C constant in config.h inside the source tree. Changing behavior means editing that header and recompiling.
Fresh checkouts ship only config.def.h. The Makefile copies it to config.h on first build, and your edits to config.h survive later pulls. Patches extend the same file, which is why suckless users version the whole source dir in dotfiles. Xresources patches excepted, nothing reads at runtime.
Where dmenu stores this, by platform
/home/<username>/src/dmenu/config.h
Live config header. Created from config.def.h on first build. Fonts, colors, and bar position live here.
Frequently asked questions
How do I change dmenu fonts and colors?
Copy config.def.h to config.h in the source dir, edit fonts and colors, then run make clean install. The build picks up config.h automatically.
Flags or config.h, which should I use?
Many flags mirror config.h values (bottom, lines, prompt, font). Flags win for one off runs, config.h wins for permanence.
Notice an outdated path? Let us know.