Learn everything about fonts: how to install them, change default behaviour when some required font is missing, etc.

Install fonts via package managers

Your system official respositories have several font packages you can install easily, like noto-fonts-cjk, ttf-liberation or ttf-mscorefonts-installer. These fonts are usually placed under /usr/share/fonts.

Install fonts manually

You can add your fonts manually to /usr/local/share/fonts/ and update font cache with the fc-cache command (you need root permissions). It’s a good practice to create a folder for each font. These font files and folders need to have read permissions for all users (chmod 444 for files, chmod 555 for folders).

Note: run fc-list : file to see where installed fonts are located.

Change font default family

Sometimes, when a document needs some missing font, the substitute font (an installed font that is similar to the missing one) does not render the text as expected. You can change missing font default family to change the alternative for that font (you need root permissions).

  1. Go to /usr/share/fontconfig/conf.avail/
  2. Search for file containing problematic font configuration
    grep -ir `segoe` *
  3. Make a copy of the file.
  4. Edit original file, change default family of problematic font.
  5. Save and run fc-cache.

Notes: /etc/fonts/conf.d files are links to /usr/share/fontconfig/conf.default/ files, that are also links to /usr/share/fontconfig/conf.avail/ files.

More info

If you have any suggestion, feel free to contact me via social media or email.