pwnbox The manual. Every option, every key, every file.

docs / fonts

Fonts

pwnbox has two independent font settings, both in ALT+S:

SettingDefaultUsed for
System fontManropeUI text: bar, rofi, fuzzel, GTK, Discord, Spotify
System font size11The size of that UI text
Application fontBerkeley MonoMonospace text: terminal, code, Zed buffers
Application font size9The size of that monospace text

Sizes are chosen from 7 8 9 10 11 12 13 14 15 16 18 20. The settings are stored in ~/.cache/pwnbox/theme/font-ui, font-app, font-size-ui and font-size-app, and re-applied on login.

Font choices

Pick from a curated list that includes:

Manrope, Fairfax HD, Ubuntu, Berkeley Mono, the Spleen bitmap fonts, Iosevka, JetBrains Mono, MesloLGS, FiraCode, Inconsolata, Noto Sans, DejaVu Sans and Liberation each with their Nerf Font variants where available. Everything is installed by the flake; nothing is downloaded at runtime.

Where each font lands

AppSystem fontApplication font
Quickshell (bar/panels)fontFamily + fontSizeicons via Nerd Font
kittyfont_family + font_size
rofifont
fuzzelfont
GTK 3/4 + GNOMEgtk-font-name / gsettings
Hyprlockfont_family
Zedui_font_family + ui_font_sizebuffer_font_family + buffer_font_size
Discord (Equibop)--font + root size--font-code
Spotifybody text + root sizecode / monospace
Telegram (AyuGram)system (Qt)monoFont
Zathuraset font

Apps that run inside the terminal (micro, Neovim, ranger, btop, neofetch, …) inherit the kitty font automatically.

How it is applied

~/.scripts/pwnbox-theme regenerates each app's font configuration whenever the font or size changes:

  • managed config files stay read-only; a generated include or a generated companion file carries the font (for example ~/.cache/pwnbox/theme/kitty.conf is included at the end of kitty.conf).
  • Spotify reads ~/.config/spicetify/Themes/pwnbox/user.css, which is composed from a managed base plus a generated font block.
  • Zathura reads a generated zathura.conf through an include in zathurarc.

When a font changes, kitty is signalled to reload and Quickshell is restarted automatically.