[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Some KDE libs still use .kde4 instead of .kde?



On Thursday, 2009-10-22, George Kiagiadakis wrote:

> From a strict kde developer's point of view, you are right, this is
> not the right thing to do. However, this code was added to workaround
> problems that used to appear when various distributions were shipping
> kde3 with ~/.kde as KDEHOME and kde4 with ~/.kde4. Debian was one of
> them. At that point of time, for most people ~/.kde was kde3 settings
> and ~/.kde4 was kde4 settings, so for Qt4 to read correctly kde4
> settings, it had to read ~/.kde4, although ~/.kde was also there.
> Probably a more correct choice would be to use "kde4-config
> --localprefix" or maybe just let the distros patch Qt4. Anyway, this
> code behaves wrong now for debian, so I guess we will patch it.

You are mixing reponsibilities of upstream and distributor.

If a distributor, including Debian in the transition phase, decides to change 
KDE's default, they obviously also change the default in Qt.
Meaning that a distributor who ships KDE unpatched (at least in this area) 
does not have to care about other software which might access KDEHOME.

If Qt wants to ship a fallback to use .kde4 if .kde does not exist, than thats 
fine as well (because that means not KDE application has create .kde so it 
either is not used or no KDE config has been saved yet).

The check in the code you linked to should at least be

if (4 == X11->desktopVersion && !homeDir.exists(".kde") && 
homeDir.exists(QLatin1String(".kde4")))

not just

if (4 == X11->desktopVersion && homeDir.exists(QLatin1String(".kde4")))

A distributor using a different default just changes this linie

QString kdeConfDir(QLatin1String("/.kde"));

into

QString kdeConfDir(QLatin1String("/.ourkdedefault"));

Cheers,
Kevin

Attachment: signature.asc
Description: This is a digitally signed message part.


Reply to: