[KDE/Mac] [mostly OS X]: KDEHOME vs. ~/.kde best practices, *rc files and related questions

David Faure faure at kde.org
Mon Nov 9 12:46:13 UTC 2015

On Monday 09 November 2015 13:36:33 René J.V. Bertin wrote:
> Being more integrated is a worthy goal, but IMHO not so much if it comes at the detriment of flexibility, for the (borderline) cases where that integration is not desired. (And I wouldn't bet anything that you've been able to foresee all such cases, as well as assess whether they will indeed remain borderline cases ;) )

You would be right not to bet, because I did think about this. It means that when if I test multiple versions of KF5
in parallel in the future, using a different XDG_CONFIG_HOME, my non-kde apps will suddenly use a different
config directory as well. E.g. google-chrome in a plasma5-stable desktop and google-chrome in a plasma5-devel
desktop, assuming I want to separate the settings for these desktops, would also get separate settings.
I do call this a corner case though. In practice, when I had two self-compiled versions of kde4 installed,
I might run apps from either one, but never the full desktop. So I would only change the env in the terminal
where I would start devel apps, which doesn't affect non-kde apps being started from elsewhere.

> I don't see why one would expect an autotest to alter a desktop setting persistently (i.e. not restore it).

Yes, that's a bug, you don't need to convince me that it's a bug, you need to look into fixing it :)

> >Sounds to me like you could make sonnet use IniFormat on all platforms.
> I'm hoping that's what my patch does. If you're saying I could submit it for review ... I guess I could do that :)


> >We call setOrganizationDomain("kde.org") already, in many places (*), but it sounds like you found an app where that's missing.
> >(*) this is either done when main() calls KAboutData::setApplicationData (given that KAboutData defaults to domain=="kde.org")
> >or it might call qApp->setOrganizationDomain() directly.
> Should the organisation domain be set to "kde.org" or to "org", given that there is also QSettings::setOrganisationName()?

"kde.org". The domain is the full domain.

> >This made me search for kde.com in our source code and it seems some people got this wrong -- but that's not the bug you found :-)
> >http://lxr.kde.org/search?_filestring=&_string=%22kde.com%22
> No, it's either my analysis above, or the simple fact that the autotests do not call setOrganizationDomain(), which would be forgivable if it didn't lead to the creation of a Sonnet settings file with an inappropriate domain.

Unittests *should* switch QSP to test mode anyway. They don't all do that, so for sure feel free to fix this by toggling
QSP to test mode in unittests that don't do it, especially if they use e.g. Sonnet.
This is a much better solution than just setting an org domain, because we don't want unittests to alter the user's settings.

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

More information about the kde-mac mailing list