More about "intents": Several improvements to desktop files and caches

Ryan Lortie desrt at desrt.ca
Sun Jan 5 18:42:47 PST 2014


hi,

On Sun, Jan 5, 2014, at 20:25, Jerome Leclanche wrote:
> Problem #1
> Apps cannot enumerate other apps of a specific type. A couple of

It is my "intent" (ha...) to raise for a while that I want to introduce
a new key to desktop files called "Implements".  There is already some
discussion about that here:
https://bugzilla.gnome.org/show_bug.cgi?id=712391


In terms of the desktop entry spec, such an addition would be extremely
simple: we have a new 'string list' key called "Implements" with no
particular meaning except that each entry in the list is expected to be
in D-Bus interface name style.

This would solve your "enumerate apps of a specific type" assuming that
you have someone willing to specify, concretely, what it means to be a
given type of application.  Taking your 'terminal emulator' example from
another part of this mail, we could have an
org.freedesktop.TerminalEmulator interface (that may not be an actual
D-Bus interface) that specifies what you must do if you're a terminal
emulator and what you can expect a terminal emulator to do if you find
its desktop file via a lookup on
"Implements=org.freedesktop.TerminalEmulator".

*Often* this will imply that an application implements said interface on
the same object path as the org.freedesktop.Application interface, but
this is not a hard requirement.  I suspect it would be a recommendation,
though.

I'd be happy to write up a patch to the spec for this part at least. 
It's been on the long tail of my TODO list for a while, and if you need
it too, that bumps the priority a bit for me.

Of course, we would then create an index based on this item in the
desktop cache so that we could very rapidly lookup "give me all apps
that are terminal emulators".

Cheers


More information about the xdg mailing list