Binary name in the desktop file

Dominique Michel dominique.michel at vtxnet.ch
Thu Dec 26 12:48:49 PST 2013


Le Thu, 26 Dec 2013 20:22:33 +0000,
Jerome Leclanche <adys.wh at gmail.com> a écrit :

> You're confused. /usr/bin/env is an executable. It sets the
> environment. My whole point is this is *not* a bug and it's possible,
> albeit hacky.
> J. Leclanche

You are right. That imply the bug is else where else, it is in the
program that interpret that Exec key and pass it to the system.

Dominique

> 
> 
> On Thu, Dec 26, 2013 at 8:34 PM, Dominique Michel
> <dominique.michel at vtxnet.ch> wrote:
> > 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
> > _______________________________________________
> > xdg mailing list
> > xdg at lists.freedesktop.org
> > http://lists.freedesktop.org/mailman/listinfo/xdg


More information about the xdg mailing list