Search code examples
githubfile-permissionsappimage

AppImage on Github Releases - Executable Permission


I'm hosting an AppImage file on github releases https://github.com/Gilad-Kutiel-App/jumpfm/releases. The file does not have an execution permission when downloaded and it is needed to set it manually.

Is there anything I can do about it ?

Thank you,

Gilad


Solution

  • Before you can run an AppImage (or really any executable for that matter), you need to make it executable. This is a Linux security feature. There are three main ways to make an AppImage executable:

    1. With the GUI

    1. Open your file manager and browse to the location of the AppImage
    2. Right-click on the AppImage and click the ‘Properties’ entry
    3. Switch to the Permissions tab and
    4. Click the ‘Allow executing file as program’ checkbox if you are using a Nautilus-based file manager (Files, Nemo, Caja), or click the ‘Is executable’ checkbox if you are using Dolphin, or change the ‘Execute’ drop down list to ‘Anyone’ if you are using PCManFM
    5. Close the dialog
    6. Double-click on the AppImage file to run

    2. On the command line

    chmod a+x Some.Appimage

    3. Automatically with the optional appimaged daemon

    If you would like to have all AppImages be executable automatically, you can install the optional appimaged daemon. It will automatically add downloaded AppImages to the menu and make them executable for you. It can be downloaded from https://github.com/AppImage/AppImageKit/releases or installed from your distribution.

    On your download page, you can link to the image and/or to http://discourse.appimage.org/t/how-to-make-an-appimage-executable/80

    Make AppImage executable

    Note: Please DO NOT put an AppImage into another archive like a .zip or .tar.gz. While it may be tempting to avoid users having to set permission, this breaks desktop integration with the optional `appimaged daemon, among other things. Besides, the beauty of the AppImage format is that you never need to unpack anything