[KDE/Mac] Cross-platform with kdeinit5, klauncher5, kded5 and friends
David Faure
faure at kde.org
Sun Feb 1 14:20:28 UTC 2015
On Saturday 31 January 2015 19:28:21 Jeremy Whiting wrote:
> Another question that
> might help clarify this, do Gnome/Unity, other linux desktop environments
> use the cache kbuildsycoca creates when building their menus or is it
> strictly used by plasma (or rather kickoff/kicker which is part of plasma)
> itself?
Neither statement is correct.
Gnome doesn't use ksycoca.
Plasma menus use ksycoca.
BUT also any KF5-based app needs ksycoca, so that e.g. when you click on a
link to an image in, say, kmail, it knows how to find an image viewer and
start it.
kbuildsycoca generates ksycoca which is used by any app that needs to look up
"which application can handle this mimetype" as well as "which
part/component/plugin can provide this type of service (and handle this
mimetype)".
The latter is slowly migrating to a json-based plugin discovery in KF5, but
for now many things still work like in kdelibs4, with desktop files describing
parts/components/plugins, therefore ksycoca is needed.
I have long term plans to be able to do the application-lookup stuff without
ksycoca, but these plans are progressing very slowly (one freedesktop meeting
per year...).
> Are they required for kparts to work, or for KService/KServiceTypeTrader to
> work?
The above answers this, for they == kbuildsycoca+kded.
The part of "they" which points to kdeinit+klauncher is mostly unrelated. They
are not needed for looking up stuff. They are optionally used for starting up
stuff (at least a bit more "optionally" than in kdelibs4). They are however
needed to start kioslaves - because of the feature to be able to put a slave
on hold (after finding out the mimetype) and give it to another app.
Can happen in the kmail->browser example, to avoid posting something twice.
--
David Faure, faure at kde.org, http://www.davidfaure.fr
Working on KDE Frameworks 5
More information about the kde-mac
mailing list