Bug 146637 - Newly added fonts are not available - config problem
Summary: Newly added fonts are not available - config problem
Alias: None
Product: kcontrol
Classification: Miscellaneous
Component: kcmfontinst (show other bugs)
Version: unspecified
Platform: unspecified Linux
: NOR normal (vote)
Target Milestone: ---
Assignee: Craig Drummond
Depends on:
Reported: 2007-06-10 16:17 UTC by Pawel Nawrocki
Modified: 2007-06-10 22:03 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Note You need to log in before you can comment on or make changes to this bug.
Description Pawel Nawrocki 2007-06-10 16:17:02 UTC
Version:            (using KDE 3.5.7, compiled sources)
Compiler:          Target: i486-slackware-linux
OS:                Linux (i686) release

When running Font Installer KControl module, it creates a file "00kde" in the directory "/etc/fonts/conf.d". In that file it specifies path "/usr/local/share/fonts" to be used by fontconfig. However, this file is never parsed, and so the newly installed fonts are not found by fc-cache and are not available for the applications.
As written in fonts-conf manual page in the <include> tag descritpion, only those config files in the included directory that end with ".conf" are parsed. Changing the filename from "00kde" to "00kde.conf" fixes the problem for me, and font installation works fine.
Comment 1 Craig Drummond 2007-06-10 22:03:40 UTC
SVN commit 673664 by craig:

Use 00kde.conf as root config file.

 M  +2 -2      kxftconfig.cpp  

--- branches/KDE/3.5/kdebase/kcontrol/fonts/kxftconfig.cpp #673663:673664
@@ -166,7 +166,7 @@
 // For system, prefer the following:
-//     <...>/config.d/00kde   = preferred method from FontConfig >= 2.3
+//     <...>/config.d/00kde.conf   = preferred method from FontConfig >= 2.3
 //     <...>/local.conf
 // Non-system, prefer:
@@ -177,7 +177,7 @@
 QString getConfigFile(bool system)
 #if (FC_VERSION>=20300)
-    static const char * constKdeRootFcFile="00kde";
+    static const char * constKdeRootFcFile="00kde.conf";
     FcStrList   *list=FcConfigGetConfigFiles(FcConfigGetCurrent());