On 2024-05-27 14:01, Ralf Habacker wrote:
Am 26.05.24 um 11:42 schrieb christ...@cullmann.io:

For the re-use of instances you need to use something like

https://github.com/KDAB/KDSingleApplication

or similar.

Any implicit starting of the dbus stuff will often just result in hangs
or other misbehavior.

DBus on Windows starts automatically when a client requests a dbus connection, so there is only a problem if dbus-daemon and the required configuration files were blacklisted during packaging and are not included in the installation. I have never had problems with this when working with KDE applications using MinGW.


It is just like X11: don't use it on systems that don't have it as
native windowing system, we guard that the same way.

There is a big difference to X11. X11 is usually not distributed with KDE applications as it can be with dbus, as there is a corresponding package in Craft.

That is just the same, it is foreign to the system you target.

There is no concept of DBus for communication with other apps or the system on non Linux/BSD desktop systems. That we bundle it is just an ugly workaround for all the things that non-conditionally used it.


There is e.g. the remote control area which is implemented in KDE applications with dbus. Should we now use a separate implementation for each platform with additional effort, although there is a platform-independent solution ?

Yes,

if you want that to work properly on other systems, one need to use the matching IPC services they provide.
Or just not do it.

For most use cases something like https://github.com/KDAB/KDSingleApplication is enough and avoids any extra spawned processes.
Naturally that is not true for all usages.

Greetings
Christoph

Reply via email to