Pete Ryland pdr at
Thu Oct 26 04:41:08 EEST 2006


I've noticed a bit of a shortcoming in the menu specification.  It seems
there's no way for a menu editor to provide menus that override parts of a
.desktop file, like say the "no display" attribute, without copying the
complete .desktop file to the user's menu directory.  This seems a bit
strange to me, since it would seem to be a pretty common case.  The problem
comes in the following instance:

1. User installs package XYZ (which has nodisplay=true in xyz.desktop, so
doesn't show up in the menus by default)
2. User runs a menu editor and sets it to display, causing the menu editor
to copy the .desktop file to ~/.menus/ with nodisplay=false
3. User upgrades package XYZ which has changed its binary's name to xyz2
4. User's menu has now broken

This could be fixed by changing either the .menu spec, allowing overrides to
be placed there, perhaps as an attribute to <Include>, or by changing the
.desktop spec to allow files like this:

[Desktop Entry]

which would then inherit all other properties from any previous file with
the same desktop id.

The big downside to this is that all properties now have to be Optional, and
this could cause even more trouble.  So there's probably a better solution
out there that doesn't suffer from this problem.

-------------- next part --------------
An HTML attachment was scrubbed...

More information about the xdg mailing list