How do I update appimages?

As pointed out in vanadium's answer, AppImage applications aren't updated by dpkg/apt.


Whether you can or can't update an AppImage without downloading the entire new version depends on the specific AppImage.

This issue is addressed in How to update appimage:

AppImages (type 2 ones, technically spoken) may contain so-called “update information” …

To update such AppImages, the AppImage project maintainer recommends downloading the latest version of AppImageUpdate.

The AppImageUpdate file should be made executable just like any other AppImage and moved to a location in your PATH.

Run AppImageUpdate and select the AppImage application you wish to check for update availability from the file chooser dialog.

If an update is available, a differential (delta) update will be performed:

AppImageUpdate implements a very efficient algorithm called ZSync2, and thus just downloads the few megabytes that really changed between your local AppImage and the new release.

Here's the output I saw when I just updated my ksnip AppImage:

Fetching release information for tag "continuous" from GitHub API.
Updating from GitHub Releases via ZSync
zsync2: /home/dkb/bin/ksnip/ksnip-1.6.0-continuous-x86_64.AppImage found, using as seed file
zsync2: Target file: /home/dkb/bin/ksnip/ksnip-1.6.0-continuous-x86_64.AppImage
zsync2: Reading seed file: /home/dkb/bin/ksnip/ksnip-1.6.0-continuous-x86_64.AppImage
zsync2: Usable data from seed files: 98.206243%
zsync2: Renaming temp file
zsync2: Fetching remaining blocks
zsync2: Downloading from https://github-production-release-asset-2e65be.s3.amazonaws.com/64607359/c2a6c880-5940-11e9-9790- … 
zsync2: Verifying downloaded file
zsync2: checksum matches OK
zsync2: used 25901056 local, fetched 472808

The sixth line from the top shows that 98% of the package needn't be downloaded for this particular update.

As stated above, whether or not you can use AppImageUpdate depends on whether your particular AppImage provides this facility. If it doesn't:

please step up to the author and ask them to include it. If they’re hosting their releases on GitHub, it’s really easy to implement.

You can read more about AppImageUpdate here and here.

More information, primarily targeted at creators of AppImages is here. This link addresses, among other things the issue of "Do I have to update them manually or it's automatic?"

Never download updates without the user’s explicit consent …

Respect global flags for “do not check for new versions” and “do not attempt to update” …

Do not bother the user with updates directly as the first thing when the application is launched …

Ask the user for permission before doing version checks …


Here's a short YouTube video from 2016 on updating an AppImage, RetroArch.


Re. Krita

If this is anything to go by, you need to entirely download the new version. Apparently, binary delta updates aren't currently available. This is according to the section titled Updating Krita in here.

If you would like to update to a new version, simply download the new Krita AppImage.

The same link also asks the Krita AppImage developers to

… add update information to the Krita AppImage and ship a .zsync file so that it can be updated using AppImageUpdate. Tools like appimagetool and linuxdeployqt can do this for you easily.


You update them manually. This means: if there is an updated appimage file available, you download it and replace the old appimage file with the new one.

Appimages work as self contained executables. They, by design, exist on their own on your system, in the folder where you put them yourself. There is no software present on your system that would allow to update them automatically.

In contrast to appimages, other systems to install software such as APT (Debian, Ubuntu) or the other new distribution formats, flatpak and snap, provide an automated application management framework. These packaging formats represent specific systems through which installed applications can be maintained, checked against a repository and updated according to their specific technologies.