Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pacman2appDir generates strange desktop file and hardcodes ./bin/_BINARY_ #4

Open
probonopd opened this issue Dec 8, 2015 · 1 comment

Comments

@probonopd
Copy link

./PortableLinuxGames/pacman2appDir vlc
./AppRun 
./bin/_BINARY_: error while loading shared libraries: ./bin/_BINARY_: cannot open shared object file: No such file or directory

It would be nicer if vlc.desktop still had the original Exec= entry in place and AppRun would figure out from the desktop file what to run. See AppRun.c which does just that.

@RazZziel
Copy link
Owner

pacman2appDir works different than AppRun.c on purpose: pacman2appDir's AppRun shell scrip doesn't figure out what to run every time is called, the command to run is resolved in compile time rather than in run time, because:

  • Moving path resolution to build time speeds up app startup time
  • AppRun is the place i've chosen to enter all the glue code that's needed to make some apps work:
    • Build symlinks (for other apps that need to write in the app directory)
    • Setup unionfs (for apps that need to write in the app directory)
    • Setup wine
    • Setup environment variables
    • Setup dynamic loaders
    • Setup xrandr, alsa-oss, pulse-audio fixes
    • Parse package-specific command-line arguments
    • etc

./bin/_BINARY_ is the template path for the application binary, which is determined from the application on build time. If it keeps being ./bin/_BINARY_ after pacman2appDir is run, it means it couldn't be determined for some reason. If binary usr/bin/vlc exists, ./bin/_BINARY_ should be changed to ./bin/vlc

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants