This option allows execution of any application stored in "/usr/bin" of the AppImage.
It has to be used as the first argument handed to the launch script.
Squashed commits:
- Add additional parameter checks and verify executability
- Print help when no value is passed to --exec-app
- Add all packaged executables as "additional executable" arguments to call of linuxdeployqt
+ Required dependencies of other applications will be deployed and library paths updated.
* Update help text
* Use find instead of ls to make file name handling robust (special chars, newlines, spaces)
- Modify find command to filter for executable files instead of using find's "-executable" option
Previously find failed to filter for executable files only when the AppImage was executed.
When the was AppImage mounted, "ls -al" showed that the file "usr/bin/qt.conf" was not executable.
However, when executing "find usr/bin/ -type f -executable" the file "usr/bin/qt.conf" still showed up.
Executing the same find command on the not-mounted source appdir did not show the file.
The change from "-executable" to logic ands/ors of "-user", "-group" and "-perm" fixes this behaviour.
Additionally this commit does no longer add "fgfs" to the additional executables since it is the main executable and processed anyways.
- Update find command to properly check permissions
Read permission and executability are required.
- Minor improvements for basename calls
* Quotes around basename argument
- Useless "basename" call
- Fix potential security flaw when matching application name input
The matching of "/" was erroneous and allowed execution of binaries outside the AppImage's /usr/bin directory.
When no arguments are pased to the AppImage, start with
the launcher for a pleasant experience.
Adjust the RPath on our copied osgDB plugins, so that dependencies
are found at the bundled lib dir.