[KDE/Mac] Cross-platform with kdeinit5, klauncher5, kded5 and friends

Ian Wadham iandw.au at gmail.com
Fri Jan 30 06:21:25 UTC 2015

Hi Jeremy and René,

On 30/01/2015, at 1:48 PM, Jeremy Whiting wrote:
> On Thu, Jan 29, 2015 at 7:19 PM, Ian Wadham <iandw.au at gmail.com> wrote:
> </snip>
> kded4 and kdeinit4 provide their own template, which has an "agent" option in it,
> to keep them hidden from the end-user, otherwise they appear as a default icon
> in the Dock.  René has been fixing up some other KDE apps as "agents", to stop
> them popping up in the Dock unnecessarily.  I do not know how KF5 builds do
> this, or even whether they provide an Info.plist template or use a default.

I should have mentioned, "agent" apps cannot appear in the Force Quit… window,
i.e. the user cannot forcibly terminate them via the desktop GUI --- handy for kded
and kdeinit maybe --- but we should be careful how we use the "agent" option.

@René: A thought for the future (KF5): I wonder if it would be good to install
"background" or "agent" apps somewhere away from /Applications, as with
Dr Konqi and others I noticed before.  Then they would not be visible at all
to end-users (normally), so no chance to start them accidentally.

> Yep, kded5's executable in it's CMakeLists.txt looks like this:
> kf5_add_kdeinit_executable(kded5 ${kded_KDEINIT_SRCS})
> on linux kded is installed into $PREFIX/bin so /usr/local/bin on my linux system. On OS X it went into /Applications/KDE/ but I'm not sure if it should be in /usr/local/bin or left where it is in /Applications/KDE/

Errmmm… that would be /opt/local/bin…

> If the former it's .service file is fine, but installation path needs to change. If the latter the .service file needs to be updated.

Don't know _anything_ about *.service files, so cannot answer.

> Also can dbus services launch executables on OS X that are .app files ?

I don't see why not, if it provides the full sub-path (Contents/MacOS/<executable_name>).
You can start KDE 4 apps on Apple OS X at the command line, UNIX-style.  The drawback
is that it starts *under* the command-line window.  Same if an app is started by fork(), as
with Dr Konqi (except that Dr K has a "raise()" in it now).

> If not the *.service file will need to be updated more to point inside the .app at the executable, right?

Quite probably, but maybe there is some conditional code (in KLauncher?) to work around
that.  If in doubt, try a little experiment… ;-)

Cheers, Ian W.

More information about the kde-mac mailing list