[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-mac
Subject: Re: [KDE/Mac] Multiplatform frameworks
From: Ian Wadham <iandw.au () gmail ! com>
Date: 2015-03-01 2:56:23
Message-ID: 255D3639-C289-498B-91B6-59EA602B5B89 () gmail ! com
[Download RAW message or body]
Hi Jeremy,
On 28/02/2015, at 11:20 PM, Jeremy Whiting wrote:
> On Sat, Feb 28, 2015 at 4:51 AM, René J.V. <rjvbertin@gmail.com> wrote:
> On Saturday February 28 2015 22:00:07 Ian Wadham wrote:
> > > We could change GenericDataDir in QStandardPaths to be:
> > >
> > > "~/Library/Application Support/Qt5", "/Library/Application Support/Qt5"
> > >
> > > That would work for ALL applications that use Qt5 and QSP, regardless of \
> > > origin, and would be a more "correct" usage of Apple OS X by the Qt 5 \
> > > libraries.
> Then data will all be under ~/Library/Application Support/Qt5/appname ? that's a \
> bit cleaner,
Errrmm, not "all", unless there has been a change in KDE Community designs/policy…
App data would be INSTALLED under /Library/Application Support/Qt5/appname (no ~)
and would be read-only. The "~" version is used by apps when they *execute*, either
for the user of the app to override one of the read-only files (e.g. <appname>ui.rc) \
or to save personal data for that app (e.g. statistics in the KPat game).
> but why would Qt/KDE applications need to use a namespace like that when apple's \
> own applications don't?
Ahem! Why do American web addresses not have a country code? It is a matter of
"first in, best dressed", as we say in Australia.
Anyway, as René says, it really is best to keep Open Source files quite separate \
from Apple files, to avoid any possibility of cross-contamination, name duplication \
or even actual deletion or overwriting. That is why MacPorts uses /opt/local for \
utilities and libraries, rather than /usr/local.
> Here I see ~/Library/Application Support/kf5 for all frameworks as it is, I don't \
> think any frameworks or applications are using GenericDataLocation directly, they \
> all use a subfolder of it, otherwise we would see application data files in \
> /usr/share on linux which isn't recommended either.
What I see is source-code of apps that have been ported to KF5, such as, in Granatier \
[1].
49 m_soundExplode = new KgSound(QStandardPaths::locate
(QStandardPaths::DataLocation, \
"sounds/explode.wav")); 102 const QStringList dirs = \
QStandardPaths::locateAll
(QStandardPaths::GenericDataLocation, \
"granatier/arenas", QStandardPaths::LocateDirectory);
This has been ported and tested on Linux and Linux CI (at least) and there it is \
(AFAIK) using plain, unaltered QStandardPaths. So there should be no kf5/ subfolder \
there, unless it comes from $XDG_DATA_DIRS.
The first lines of code will find the explosion sound, either in \
/usr/local/share/granatier, where it has been installed, OR in \
~/.local/share/granatier, if the user has their own explosion sound. The *order* of \
paths in QSP ensures that the latter is picked up first, if it exists. It will not \
be found in /usr/share, because it has not been installed there.
The second bit of code finds all folders that contain Granatier "arenas" (board \
layouts containing bombs, etc.). These could be installed or provided by the user \
(or GHNS?).
Note that the code could have said '(QStandardPaths::DataLocation, "arenas", '. So \
no way for a "kf5" suffix to get in there. Maybe it comes from $XDG_DATA_DIRS (?).
Also, there would be several shared data folders in GenericDataLocation, alongside
the DataLocation folders for the apps. See [2] for details. These would fit in \
quite well with standard paths on Apple OS X set to:
"~/Library/Application Support/<subdir>", "/Library/Application \
Support/<subdir>"
always supposing we really *want* to be good Apple citizens. They would not look at
all good if they were directly under "Application Support/", because they are not \
apps.
Cheers, Ian W.
[1] https://projects.kde.org/projects/kde/kdegames/granatier/repository/revisions/master/entry/src/game.cpp
[2] http://api.kde.org/ecm/kde-module/KDEInstallDirs.html
_______________________________________________
kde-mac@kde.org
List Information: https://mail.kde.org/mailman/listinfo/kde-mac
KDE/Mac Information: http://community.kde.org/Mac
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic