Extending the Desktop Entry spec for static app actions

Marius Vollmer marius.vollmer at nokia.com
Fri Nov 25 00:07:58 PST 2011

ext Giovanni Campagna <scampa.giovanni at gmail.com> writes:

> As a starting point, the Unity implementation of this is documented to
> work as following:
> One key X-Ayatana-Desktop-Shortcuts (type string list) with a list of
> identifiers.
> One group for each shortcut, with name "<identifier> Shortcut Group".
> Each group has Name (type localestring), Exec (type string),
> TargetEnvironment (which must be the exact string "Unity").

For reference, in MeeGo something similar was done (via
libcontentaction) by having applications install multiple *.desktop
files.  That way, we could use the existing machinery to find us all
actions that are applicable for a given mime type.

(We had also extended/abused mime types to cover URL schemes, objects in
Tracker, and regexp matches in plain text, which made this quite useful
without much new code or interfaces.)

I think a Shortcut Group will need to have exactly the same features as
a Desktop Entry, and including multiple Desktop Entries in a single file
has some disadvantages, such as naming which one you mean when you pass
the symbolic name of the Desktop Entry around, and making it more
difficult to assemble them from different packages.

So I'd say that the main Desktop Entry could still have a explicit list
of all its sub-actions, but those sub-actions should be defined in
separate files, as Desktop Entries, maybe with a new Type if that seems

More information about the xdg mailing list