kf5-config, startkde and bug 333793

David Faure faure at kde.org
Sun Jul 6 11:19:06 UTC 2014


On Sunday 06 July 2014 11:49:22 Luca Beltrame wrote:
> Hello,
> 
> I set out an attempt to fix bug 333793 [1] and to port kf5-config in
> kdelibs4support to QCommandLineParser and QStandardPaths where possible.
> 
> The issue in the bug is that kf5-config --path lib misses ~/.local (XDG)
> because basePrefixForResource (kstandarddirs.cpp) says (lines 244-250):
> 
>     if (typeBa.startsWith("xdgconf") || typeBa == "config") {
>         return XdgConf;
>     } else if (typeBa == "exe" || typeBa == "lib") {
>         return KdePrefixes;
>     } else { // was: if (typeBa.startsWith("xdgdata") || typeBa == "data")
>         return XdgData;
>     }

Well, kde4-config --path lib never included ~/.local so that's not really a 
bug.

> The problem is, we're not using KdePrefixes anymore and thus --path lib is
> broken in interesting ways. the most important being the impossibility of
> sourcing env scripts in the user's $HOME (~/.local/env), which may break
> some user customization (see the bug report).
> 
> The problem is also lies in startkde which uses that option to parse for env
> scripts.

Yeah, this isn't related to lib anyway, so that was a hack in startkde.
(don't git blame it, it might point back to me ;-)

Let's just pick a new dir and use that.

Shall we say ~/.config/startkde/env/ ?

I'm suggesting
~/.config  --> because these are config files after all
startkde --> because something like KDE or kde.org might make someone think 
that it applies to all kde apps, while it only applies to the kde workspace 
(not in gnome etc.). Alternatively, ~/.config/kde-workspace/env/ I guess 
(less technical, if someone doesn't know the startkde name)

This would mean kf5-config --path config, or better,
qtpaths --paths ConfigLocation

kf5-config is deprecated, qtpaths replaces it.

-- 
David Faure, faure at kde.org, http://www.davidfaure.fr
Working on KDE Frameworks 5



More information about the Kde-frameworks-devel mailing list