diff -up kdelibs-4.11.97/kdecore/kernel/kstandarddirs.cpp.kstandarddirs kdelibs-4.11.97/kdecore/kernel/kstandarddirs.cpp --- kdelibs-4.11.97/kdecore/kernel/kstandarddirs.cpp.kstandarddirs 2013-11-30 21:24:01.637163800 -0600 +++ kdelibs-4.11.97/kdecore/kernel/kstandarddirs.cpp 2013-11-30 21:35:27.166292739 -0600 @@ -1149,7 +1149,8 @@ QStringList KStandardDirs::KStandardDirs pit != prefixList->end(); ++pit) { - if((*pit).compare(installprefix, cs) != 0 || installdir.isEmpty()) + // "exe" never has a custom install path, and the check triggers a false positive due to the libexecdir patch + if((*pit).compare(installprefix, cs) != 0 || installdir.isEmpty() || !strcmp("exe", type)) { for (QStringList::ConstIterator it = dirs.constBegin(); it != dirs.constEnd(); ++it) @@ -1163,6 +1164,11 @@ QStringList KStandardDirs::KStandardDirs if ((local || testdir.exists()) && !candidates.contains(path, cs)) 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