2017-04-15 22:05 GMT+02:00 Sod.Almighty <[email protected]>: > Hi everyone, > > [Apparently formatted email is not acceptable on this mailing list. So here > is a plain text version.]
The list probably had an allergy against Comic Sans... (and I can't blame it ;-) ) > What happens if the Path= line of a *.desktop file is set to a relative > path? For example: > > Path=mydir > > Or: > > Path=. Nobody knows. Relative paths in .desktop files are not allowed by the specification, so the implementations can straight out refuse to launch anything, or do an arbitrary amount of undefined stuff, which may include taking the .desktop file path as the basename and taking a relative path from that, taking a relative path from $HOME, one from the directory the desktop file was launched from, or doing something completely different. So: Don't do it. => https://standards.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html#exec-variables > The Exec key must contain a command line. A command line consists of an > executable program optionally followed by one or more arguments. The > executable program can either be specified with its full path or with the > name of the executable only. If no full path is provided the executable is > looked up in the $PATH environment variable used by the desktop environment. > The name or path of the executable program may not contain the equal sign > ("="). Arguments are separated by a space. > We at the AppImage project (https://github.com/probonopd/AppImageKit) are > wanting to use relative paths in *.desktop files to refer to locations > relative to the root of the application mount point. Please see the github > issue at > (https://github.com/probonopd/AppImageKit/pull/384#issuecomment-294278492) > for details. > > What do you guys think? Would this create some kind of conflict with > existing path rules? Yes. Aside from that, I am not sure whether it's a good idea to allow relative paths for security reasons. Changing the definition of Exec= will take a really long time until all implementations follow the changed spec, so that might not be practical. From skimming through the bug report, I don't have any idea on what actual problem you want to solve. Can't AppImageKit use bindmount tricks to confine an application in an environment with known paths? Or just rewrite the path at install time to point to the right location? Cheers, Matthias -- Debian Developer | Freedesktop-Developer I welcome VSRE emails. See http://vsre.info/ _______________________________________________ xdg mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/xdg
