Binary name in the desktop file

Dominique Michel dominique.michel at vtxnet.ch
Thu Dec 26 12:34:06 PST 2013


Le Thu, 26 Dec 2013 19:43:36 +0000,
Jerome Leclanche <adys.wh at gmail.com> a écrit :

> I don't see what menu categories have to do with this. Nor how this is
> a Wine bug.

# cat /usr/share/applications/wine-winecfg.desktop|grep Categories
Categories=Wine;

# desktop-file-validate /usr/share/applications/wine-winecfg.desktop
/usr/share/applications/wine-winecfg.desktop: error: value "Wine;" for
key "Categories" in group "Desktop Entry" contains an unregistered
value "Wine"; values extending the format should start with
"X-" 
/usr/share/applications/wine-winecfg.desktop: hint: value "Wine;"
for key "Categories" in group "Desktop Entry" does not contain a
registered main category; application might only show up in a
"catch-all" section of the application menu

For your Exec key issue, at
http://standards.freedesktop.org/desktop-entry-spec/latest/ar01s06.html
it is no mention of environmental variables, but it is that:
"The Exec key must contain a command line. A command line consists of
an executable program optionally followed by one or more arguments."

This imply the command line must begin by the executable, not by a
variable. So, this is a bug in wine which generate a buggy desktop file.
BTW, I don't know how you get it, because in my install I have:

# cat /usr/share/applications/wine.desktop|grep Exec
Exec=wine start /unix %f

and I checked the gentoo ebuild, it doesn't modify the desktop files,
but have an internal workaround for the non standard category to not
generate a warning during the installation. (Normally, each desktop file
are checked by portage for conformity, and portage complain when it is
not the case. This check is skipped by the ebuild as wine provide
extra files in /etc/xdg/menus and /usr/share/desktop-directories to
deal with that non standard category.)

Dominique

> 
> J. Leclanche
> 
> 
> On Thu, Dec 26, 2013 at 8:00 PM, Dominique Michel
> <dominique.michel at vtxnet.ch> wrote:
> > Le Thu, 26 Dec 2013 20:19:08 +0100,
> > Dominique Michel <dominique.michel at vtxnet.ch> a écrit :
> >
> >> Le Thu, 26 Dec 2013 11:56:57 +0000,
> >> Jerome Leclanche <adys.wh at gmail.com> a écrit :
> >>
> >> > My point is, "env" is not what you should get for this. Wine is
> >> > just using env as a "hacky" way to give wine the WINEPREFIX
> >> > variable.
> >> >
> >> >
> >> > J. Leclanche
> >>
> >> So, this is a wine bug, as their non standard Wine category which
> >> is not prefixed by X- and necessitate an extra xdg menu
> >> infrastructure.
> >
> > Another one is the bogus focus policy of the wine windows that think
> > they know better than the wm how to focus.
> >
> >>
> >> Dominique
> >>
> >> >
> >> >
> >> > On Thu, Dec 26, 2013 at 11:51 AM, Kevin Krammer <krammer at kde.org>
> >> > wrote:
> >> > > On Thursday, 2013-12-26, 11:33:13, Jerome Leclanche wrote:
> >> > >> On Thu, Dec 26, 2013 at 11:25 AM, Kevin Krammer
> >> > >> <krammer at kde.org> wrote:
> >> > >> > On Thursday, 2013-12-26, 10:56:11, Jerome Leclanche wrote:
> >> > >> >> I'd really like to be able to get the binary name from
> >> > >> >> desktop files (eg a way to "start without any argument").
> >> > >> >> Current implementations rely on getting the first word of
> >> > >> >> the Exec key OR replace %f etc by nothing, but that fails
> >> > >> >> for things such as these:
> >> > >> >>
> >> > >> >> Exec=env
> >> > >> >> WINEPREFIX="/home/adys/.local/share/wineprefixes/default"
> >> > >> >> wine start /ProgIDOpen chm.file %f
> >> > >> >
> >> > >> > What do you mean when you say "fails"?
> >> > >> > That the command won't launch if %f is replaced by nothing
> >> > >> > or that taking the first string fails to see that the
> >> > >> > launched program is /usr/bin/env?
> >> > >> Sorry, I meant the usual way of getting the binary name
> >> > >> (which in this case would be "env").
> >> > >
> >> > > Ok, thank you for clarifying.
> >> > > However, I don't see how the simple algorith of taking the
> >> > > first word could possibly fail to return 'env'.
> >> > > That is the most simple case: no path, no escaped or quoted
> >> > > whitespace, just a simple alphabetic sequence.
> >> > >
> >> > > Cheers,
> >> > > Kevin
> >> > > --
> >> > > Kevin Krammer, KDE developer, xdg-utils developer
> >> > > KDE user support, developer mentoring
> >> > >
> >> > > _______________________________________________
> >> > > xdg mailing list
> >> > > xdg at lists.freedesktop.org
> >> > > http://lists.freedesktop.org/mailman/listinfo/xdg
> >> > >
> >> > _______________________________________________
> >> > xdg mailing list
> >> > xdg at lists.freedesktop.org
> >> > http://lists.freedesktop.org/mailman/listinfo/xdg
> >> _______________________________________________
> >> xdg mailing list
> >> xdg at lists.freedesktop.org
> >> http://lists.freedesktop.org/mailman/listinfo/xdg
> > _______________________________________________
> > xdg mailing list
> > xdg at lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/xdg


More information about the xdg mailing list