Don’t ever customize a default face with custom-set-faces?!

A while back I spent some time trying to figure out why emacsclient under X Windows woun’t start new windows (AKA frames) any more with a cryptic error message:

*ERROR*: Arithmetic error

It turned out that the cause of this problem was… a default font’s customization. Emacs provides a standard way to customize it’s own configration via a bunch of customize-* functions and one of them is a customize-face function. As it provides a standard UI for changing font’s parameters why not using it? So I changed the default face‘s font and this customization was stored like

  '(default ((t (:family "Comic Sans MS" :foreground "pink" :weight bold)))))

What parameters you’re trying to customize nor their actual values doesn’t matter. It just prevents emacsclient from starting a new window.

There is another way to configure a default font using .Xresources file by adding something like emacs.font: Consolas-12. Or may be it’s even better to leave a default face alone and customize just fixed-pitch and variable-pitch faces?