[KDE/Mac] Thoughts on standard directories in Qt5 - QStandardPaths

Ian Wadham iandw.au at gmail.com
Sun Dec 7 04:42:05 UTC 2014

Hi again René,

On 07/12/2014, at 3:10 AM, René J.V. Bertin wrote:
> On Saturday December 06 2014 15:28:59 Marko Käning wrote:
>> $  tree /opt/local/etc/xdg
>> i.e. we’re already making use of this location on MacPorts... So, perhaps it is just fine to
>> keep KF5’s files there just as well?!
>> But I remember that David didn’t really like the idea, as it is not really an OSX-specific
>> location, IIRC.

It appears, from Marko's other emails, that file ui_standards.rc is in <blahblah>/etc/xdg
in sub-directory "ui".  I don't know if that is where things like bovoui.rc (the Bovo menu
and toolbar structure) would go.  Anything with "etc" in it sounds a bit "system-y" to me,
as opposed to "application-y".  QSP's only "prescription" for ConfigLocation and also
GenericConfigLocation in OS X is "~/Library/Preferences" and we cannot very well
install <appname>ui.rc files there.  QSP prescribes for Linux "~/.config", "/etc/xdg".

I think it is good, BTW, that "~/.config" is now separate.  In the past I have heard
grumbles from Linux sysadmin guys about KDE 3 and 4 intermixing config and
user-data files under the same ~/.xxx prefix.

> I'm not so sure we need to impose an OS X specific location that's also OS X standard.

Good thought.  I would even be so radical as to suggest that we build the source file
"qstandardpaths_unix.cpp" into Macports' Qt 5, rather than "qstandardpaths_mac.mm".
The former might be easier to modify to suit Macports and it incorporates the $XDG_*
environment variables at ground level, which would help us with test versions of
Qt5 and KF5 apps, libraries and utilities.

> At least not if we're talking about MacPorts, because that itself installs in a not-very-OS X'y
> location.

Well MacPorts has a bet each way.  In my KGoldrunner example, it installs read-only
files in /opt/local/share/apps/kgoldrunner (pure KDE 4 style) and finds writeable files
in ~/Library/Preferences/KDE/share/apps/kgoldrunner (a bit of OS X, a bit of KDE 4)
and has application-icons in
(pure OS X).

> I think that instead we should stick as closely as possible to "translations" of the standard paths used on Linux and other Linux'es.

I agree, except that the application folder, bundle and .icns have to go where OS X wants them.

> If not only to make it easy/easier to move the whole tree to another, case-sensitive partition; using directories under ~/Library would make that less feasible under my personal standard recommendations (which strongly suggest to install the system and $HOME on a default -case-insensitive- partition, and then provide additional user space on a case-sensitive volume if required).
> From what I've seen, there *is* stuff in ~/.kde that is case-sensitive.

You mean files or directories with the same name but different case-mix?  Not good.

> Also keep in mind that certain KDE(4) components use ~/.config and/or ~/.local
> (akonadi and KDE PIM use both) as well as ~/.cache .

I think this is part of an early move towards Frameworks, KF5 and XDG.  I also notice
that I have to have XDG_DATA_DIRS set in my KDE 4 development setup if I want
to find all the mime types.

Cheers, Ian W.

More information about the kde-mac mailing list