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

AppImages fail to run if appimaged process is running #827

Closed
probonopd opened this issue Oct 16, 2016 · 3 comments · May be fixed by qcif/data-curator#563
Closed

AppImages fail to run if appimaged process is running #827

probonopd opened this issue Oct 16, 2016 · 3 comments · May be fixed by qcif/data-curator#563
Labels

Comments

@probonopd
Copy link

probonopd commented Oct 16, 2016

  • Version: 7.11.4
  • Target: Linux AppImage

If a process called appimaged is running, then desktop integration must not be shown. However this functionality seems to be broken and results in the AppImage not launch its app but saying line 43: exec: : not found instead.
The original desktopintegration script does not show this behavior.

+ pidof appimaged
2677
+ exit 0
+ atexit
+ '[' 0 -eq 0 ']'
+ exec ''
/home/me/Downloads/donut-1.2.0-x86_64/AppRun: line 43: exec: : not found

(In case you are wondering: appimaged is an optional daemon that watches the system for AppImages and integrates them with the system, video)

@develar
Copy link
Member

develar commented Oct 17, 2016

In electron-builder script there is

# Exit immediately if appimaged is running
pidof appimaged 2>/dev/null && exit 0

in the same place where original line placed. Probably this check should be move to the top of the script.

Could please help understand what's wrong in electron-builder script?

@probonopd
Copy link
Author

probonopd commented Oct 17, 2016

I suspect that the line you posted is correct: If appimaged is running, then the desktopintegration script should cease execution and the atexit trap should take over and launch the app. It seems like atexit doesn't have the information it needs to launch the app.

Which means that the follwing block should be above any exit() calls:

DESKTOP_FILE=$(find "$APPDIR" -maxdepth 1 -name "*.desktop" | head -n 1)
DESKTOP_FILE_NAME=$(basename "${DESKTOP_FILE}")
APP="${DESKTOP_FILE_NAME%.*}"
BIN="$APPDIR/usr/bin/$APP"

Does that make sense?

@probonopd
Copy link
Author

ping @develar

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

Successfully merging a pull request may close this issue.

2 participants