diff -up kdelibs-4.6.90/kdecore/kernel/kstandarddirs.cpp.me kdelibs-4.6.90/kdecore/kernel/kstandarddirs.cpp --- kdelibs-4.6.90/kdecore/kernel/kstandarddirs.cpp.me 2011-06-28 09:43:49.000000000 +0200 +++ kdelibs-4.6.90/kdecore/kernel/kstandarddirs.cpp 2011-06-28 09:47:44.000000000 +0200 @@ -1152,7 +1152,9 @@ QStringList KStandardDirs::KStandardDirs pit != prefixList->end(); ++pit) { - if((*pit)!=installprefix||installdir.isEmpty()) + // "exe" never has a custom install path, and the check triggers + // a false positive due to the libexecdir patch + if((*pit)!=installprefix||installdir.isEmpty()||!strcmp("exe", type)) { for (QStringList::ConstIterator it = dirs.constBegin(); it != dirs.constEnd(); ++it) @@ -1170,6 +1172,11 @@ QStringList KStandardDirs::KStandardDirs if ((local || testdir.exists()) && !candidates.contains(path)) candidates.append(path); } + // special-case "config" (forward porting Chris Cheney's + // hack) - we want /etc/kde after the local config paths + // and before the ones in /usr (including kde-profile) + if (local && !strcmp("config", type)) + candidates.append(QLatin1String("/etc/kde/")); local = false; } else