Hi there!

Just updated to 12.2 here, and fonts gone wild again. After hours and hours of searching, trying, installing, uninstalling I went back to the fundations.
I read through the reference manuals, and solved two of my problems - that's why I post this, so others can find it hopefully.

Problem A: You install a lot of fonts you use (for whatever reasons), but you want to use ONE specific family everywhere. Where to set that to an ultimate system wide default?
Problem B: Everything look right, all applications respect your hinting settings, except Mozilla applications.

Solution A: You can edit the settings in /etc to use ("prefer") a specific font on your system, but it is a better approach to configure it for your user only. Others who want to make this setting a system wide one, just place the configuration in /etc.
So to "prefer" a font, just place something similar into your ~/.fonts.conf file:

Code:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<alias>
    <family>sans-serif</family>
    <prefer>
        <family>DejaVu Sans</family>
    </prefer>
</alias>
<alias>
    <family>serif</family>
    <prefer>
        <family>DejaVu Serif</family>
    </prefer>
</alias>
<alias>
    <family>monospace</family>
    <prefer>
        <family>DejaVu Sans Mono</family>
    </prefer>
</alias>
</fontconfig>
Solution B: You've probably set the hinting options in your GNOME, KDE or XFCE control whatever application. This is good, but not good enough for Mozilla. Paste the settings into your ~/.fonts.conf file also. Something like this:

Code:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<match target="font" >
    <edit mode="assign" name="rgba" >
        <const>rgb</const>
    </edit>
</match>
<match target="font" >
    <edit mode="assign" name="hinting" >
        <bool>true</bool>
    </edit>
</match>
<match target="font" >
    <edit mode="assign" name="hintstyle" >
        <const>hintfull</const>
    </edit>
</match>
<match target="font" >
    <edit mode="assign" name="antialias" >
        <bool>true</bool>
    </edit>
</match>
</fontconfig>
P.S.: Of course you can combine the two, my current file looks like this:

Code:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<alias>
    <family>sans-serif</family>
    <prefer>
        <family>DejaVu Sans</family>
    </prefer>
</alias>
<alias>
    <family>serif</family>
    <prefer>
        <family>DejaVu Serif</family>
    </prefer>
</alias>
<alias>
    <family>monospace</family>
    <prefer>
        <family>DejaVu Sans Mono</family>
    </prefer>
</alias>
<match target="font" >
    <edit mode="assign" name="rgba" >
        <const>rgb</const>
    </edit>
</match>
<match target="font" >
    <edit mode="assign" name="hinting" >
        <bool>true</bool>
    </edit>
</match>
<match target="font" >
    <edit mode="assign" name="hintstyle" >
        <const>hintfull</const>
    </edit>
</match>
<match target="font" >
    <edit mode="assign" name="antialias" >
        <bool>true</bool>
    </edit>
</match>
</fontconfig>
Thanks,
Greg