custom-set-faces is somewhat overkill for this. It overwrites any user
customizations for the default & variable-pitch faces, and saves them to
custom-file, which may cause those settings to persist even when we
don't want them to.
This new solution is a little faster, is more respective of
customizations, and adds XFT font string support.
XFT font strings are a little more powerful. For example, the :antialias
font-spec property was unreliable, but now you can use:
(setq doom-font "Fira Mono:pixelsize=12:antialias=off")