How to have good fonts in X11 (howto)

2006/09/11: Added config part for Vista fonts - Segoe UI, Calibri, etc. (screenshot)

2006/06/02: Updated .fonts.conf

How to make your fonts look good on a linux desktop. For now - just a checklist.

This is an early draft, additions and corrections are welcome.

First of all, "good" is defined as "like in Windows, but even better". E.g. sharp fonts at medium sizes, highly hinted, no blurry OSX-ish default eye-watering experience. If you like that you will probably find defaults okay.

Good looking blues, er, fonts

I will be using a lot of strange words and library names here, meanings of which you can easily find on Google. Consult the documentation of fontconfig and freetype if you have any questions. This document is not targeted at *nix/X11 newbies, but on fontconfig/freetype newbies.

Step 1. Check if your freetype library is built with support for bytecode interpreter. And, while we are at it, update your Xfree or Xorg, freetype and fontconfig to the latest respective versions.

Hint: if you are using Redhat or clone - your freetype is most likely bad. If you are using Debian (and Slackware?) it is most likely okay. In FreeBSD this is build-configurable in ports, if memory serves. There are instructions how to rebuild freetype for all major distros, so google for them, I won't get into that here.

Step 2. Disable fontconfig's autohinter if it is enabled. Enable native rendering (bytecode interpreter) or subpixel rendering if you are blessed with digital flat panel. And don't be scared, I will provide configuration examples later.

Step 3. Get some good fonts. With all due respect, Bitstream Vera family sucks. As in, totally sucks.

I don't know if there are any decent free fonts, so you will most likely need to rip your nearest windows installation and get Tahoma, Verdana, Arial (Helvetica) and Times.

Tahoma is not a part of Microsoft's Corefonts which are (somewhat) free, but others are. I would recommend getting Tahoma too, it is the best interface chrome font in my book. Helvetica is better for actual window contents, like in the web browser and whatsuch.

Arial and Tahoma

Step 4. Place the fonts in ~/.fonts/ or default system location for TrueType fonts in your distro. Get my freetype's local configuration file and place it in your home directory. Adjust as necessary, but read the fontconfig's documentation first.

What my local configuration file does by default:

By the way, I'm not really sure if any systemwide modifications of fontconfig configuration are even necessary, everything is pretty much fixed in local config.

Configuration examples