The built-in assumption for the X11 font system is that each glyph in a font corresponds to a unique character in the set. This does not work for Indian languages where the sequence of characters encoded in a Unicode string first have to be converted to a sequence of glyphs, before they can be displayed. The shape of each glyph depends not only on the principal character that it represents, but also on the surrounding characters, e.g., the ``matras'' and conjuncts used in most Indian languages. Special libraries like Pango [17] have to be used for Indian scripts. While it would be best to improve the X font mechanism, that task is well outside the scope of this project.
Till recently, XFree86 did not even support TrueType fonts, and several Linux vendors had developed font servers like xfs built around the FreeType font engine [18]. While XFree86 versions from 4.0 (?) onwards have directly incorporated FreeType, Redhat 8.0 and higher versions still use xfs. The process of installing fonts under X differs slightly, depending on whether a font server is in use, or not. Another complication is introduced by the fact that most newer KDE and GNOME programs obtain fonts from a new standard called fontconfig (also going by the name of Xft). Thus, the best bet is to make consistent changes to all three configuration files: for the X server, for the xfs font server, and for fontconfig (Xft). First, we will cover steps common to all three categories, and then go to the specific for each. If you are using other font servers, e.g., xfstt, the font de-uglification HOWTO [15] can show you how to install fonts there.
To find out whether your system is using a font server, type,
ps -aux | grep xfsIf you are running the xfs font server, this will show the process. To date, Redhat runs xfs in all versions above 8.0.