Pipewire's pulseaudio server requires a different number of iterations
to get the callback through properly.
Set a flag from the callbacks, and iterate until the flag is set to
ensure that the right number of iterations are made.
Use fontconfig to load fonts. Fonts can be added to the `fonts` map in
the config, and referenced from individual widgets' configurations for
customizability.
Fonts default to values "mono" and "sans" if nothing is set.