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

Better AppImage support #434

Open
TheAssassin opened this issue Jun 21, 2018 · 1 comment
Open

Better AppImage support #434

TheAssassin opened this issue Jun 21, 2018 · 1 comment

Comments

@TheAssassin
Copy link

There's two major issues with the AppImage support in this application.

The autostart in https://github.com/nextcloud/desktop/blob/master/src/common/utility_unix.cpp asks QApplication for the location of the current binary. However, in an AppImage, this points to a file in a temporary mountpoint. Instead, the AppImage should be registered to be started automatically.

You can check whether you are in an AppImage by checking whether $APPIMAGE is set. $APPIMAGE also contains the path to the AppImage, which you want to use here for Exec.

You should consider adding a TryExec key pointing to the same path. Then, the desktop entry is hidden if the AppImage file gets lost (e.g., because the user deletes or moves it). The obsolete desktop files should be cleaned up from time to time.

The desktop integration code is probably not compatible with AppImage integration software like https://github.com/TheAssassin/AppImageLauncher or https://github.com/AppImage/appimaged. You should consider using libappimage to handle desktop integration. It provides a function to check whether the file is registered already, and provides functions to add and remove integration.

You should also improve the "Am I in an AppImage?" check in https://github.com/nextcloud/desktop/blob/master/src/libsync/configfile.cpp by either checking for $APPIMAGE or $APPDIR. The latter contains the path of the mountpoint, if you should need that for some reason.

CC @rullzer

@rullzer rullzer self-assigned this Jun 23, 2018
@pvincent974b
Copy link

pvincent974b commented Jul 10, 2019

Same issue with AppImage and autostart.
When I click on 'System Autostart', a new file is created in $HOME/.config/autostart/Nextcloud.desktop.
However it refers to a script located in directory /tmp/.mount_NextclvAg5yF/ which gets removed after reboot.

er-vin pushed a commit that referenced this issue Nov 27, 2020
Issue #434

Ideally one could add the blacklist to the exlucde reggexp, but this
is simpler
er-vin pushed a commit that referenced this issue Nov 27, 2020
Issue #434

Ideally one could add the blacklist to the exlucde reggexp, but this
is simpler
er-vin pushed a commit that referenced this issue Dec 2, 2020
Issue #434

Ideally one could add the blacklist to the exlucde reggexp, but this
is simpler
er-vin pushed a commit that referenced this issue Dec 8, 2020
Issue #434

Ideally one could add the blacklist to the exlucde reggexp, but this
is simpler
er-vin pushed a commit that referenced this issue Dec 10, 2020
Issue #434

Ideally one could add the blacklist to the exlucde reggexp, but this
is simpler
er-vin pushed a commit that referenced this issue Dec 10, 2020
Issue #434

Ideally one could add the blacklist to the exlucde reggexp, but this
is simpler
github-actions bot pushed a commit that referenced this issue Dec 11, 2020
Issue #434

Ideally one could add the blacklist to the exlucde reggexp, but this
is simpler
github-actions bot pushed a commit that referenced this issue Dec 14, 2020
Issue #434

Ideally one could add the blacklist to the exlucde reggexp, but this
is simpler
er-vin pushed a commit that referenced this issue Dec 14, 2020
Issue #434

Ideally one could add the blacklist to the exlucde reggexp, but this
is simpler
er-vin pushed a commit that referenced this issue Dec 14, 2020
Issue #434

Ideally one could add the blacklist to the exlucde reggexp, but this
is simpler
er-vin pushed a commit that referenced this issue Dec 15, 2020
Issue #434

Ideally one could add the blacklist to the exlucde reggexp, but this
is simpler
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants