activation thought

Havoc Pennington hp@redhat.com
Wed, 15 Oct 2003 01:50:52 -0400


Hi,

Summary of KDE activation from the docs, people with a clue please
correct me: a query language for locating .desktop files. But desktop
files can point to shared libraries or DCOP services, not only
executables.

http://developer.kde.org/documentation/library/3.1-api/kio/html/classKService.html
http://developer.kde.org/documentation/library/3.1-api/kio/html/classKTrader.html
http://developer.kde.org/documentation/library/kdeqt/tradersyntax.html

Essentially KTrader can run queries, and queries return a KService which
is basically the same as GnomeDesktopItem, i.e. a .desktop file
representation.

An interesting thing about this is that it uses the same implementation
(file format, query language, ksycoca cache) for all activation, but
there are several different kinds of things to be activated.

So perhaps the way to think about the problem is to write an activation
framework that is _extensible_ in that arbitrary kinds of
object/component/service/executable can be located. Rather than to write
an activation framework for D-BUS only.

Perhaps the global cache and query processor is a D-BUS service and/or
built in to dbus-daemon; or perhaps it's just a shared library. But even
if activation involves D-BUS, it may not really be _for_ D-BUS only.
Maybe we should be generalizing the .desktop entry spec beyond menus?

Havoc