What is AppImage in Linux?

Instead of relying on what your operating system provides, AppImage encapsulates everything the application needs in a file.

On a Linux distribution, you always install new software with the help of a package manager when possible. This keeps everything neat and all files are tracked by the manager, which can then be easily deleted if desired. This also helps to avoid potential problems when you upgrade the distribution later.

But since the distribution may not have the software you need or some software may be too old, sometimes you have to resort to alternative solutions. However, among all these alternatives, choose to download only third-party .deb or .rpm files if there are no other options available.

Learn about AppImage in Linux

  1. What is AppImage?
  2. How does AppImage work?
  3. Compare AppImage, Snap and Flatpak
  4. How to run AppImage

What is AppImage?

On Windows, you can download a ZIP file, extract content into a folder and run the internal application without having to install it. This is called a portable application because you can copy it to a USB memory stick and then run it on any Windows-based computer.

Picture 1 of What is AppImage in Linux?

Although built in a different way technically, an AppImage works similarly to a portable application, from a user perspective. You can download a file and run the program on Linux operating system without installing anything. Moreover, you can also copy the file to USB and the program will run on Debian, Ubuntu, Arch Linux, openSUSE, Fedora or any other Linux distribution.

How does AppImage work?

A program often needs to use several libraries to perform tasks. A distribution selects specific versions of the library and makes sure all the programs it includes will work with these libraries. The random version of a random program from the Internet may need libraries that are not in your distribution.

Instead of relying on what your operating system provides, AppImage encapsulates everything the application needs in a file. When you run this file, AppImage executes its 'magic' and creates a temporary file system, where AppImage has access to everything it needs. In the picture below, you can see the contents of the LibreOffice AppImage temporary file system.

Picture 2 of What is AppImage in Linux?

You may have noticed this is how AppImage includes the necessary libraries, files with names starting with 'lib' and ending with the '.so' extension .

Compare AppImage, Snap and Flatpak

You can feel the Flatpak / Snap applications similar to the AppImage applications, but in fact, they are quite different. For beginners, Flatpak and Snap need an environment and a daemon to be installed first. Daemon monitors and manages how applications run, update, install, etc. Of course, each solution has its own advantages and disadvantages and none is the best solution. It all depends on what you need from your software.

Here are some advantages of Snap / Flatpak:

  1. They are sandboxed, isolated from the rest of the system. This provides protection against most types of malware.
  2. You can download Snap from a central application store. You can also search for software, download and install directly from the command line.
  3. Upgrade packages is easy. Daemon looks at the store to find out which version is newer and suitable for you.

Advantages of AppImage:

  1. You do not need to prepare the system before running AppImage. It seems that this is not a big problem, you only install the daemon snap once, then it will work. But think about the following situation. You are at school and need to quickly run a program. You cannot install the daemon snap (without root permissions), so you cannot run your favorite Snap. However, you can download an AppImage and run it, even without admin rights.
  2. Really portable: You can copy AppImage to a USB memory stick, take it with you and run it on any Linux operating system.
  3. Some AppImage programs can update themselves.
  4. Everything is contained in a file. You only need to download the file to use and delete it when you no longer need it. Nothing is simpler than that!

How to run AppImage

After you download an AppImage file, it will not be executed immediately. In some cases, AppImage may display an executable icon. In other cases, an error may occur when you double-click the file. For example, the operating system may confuse it with a video file and try to open it with the video player.

However, after the download is complete, you need to right-click on the file, go to Properties, then select Permissions and activate the executable bit on it. The way you do this depends on your desktop environment.

Picture 3 of What is AppImage in Linux?

There is an option to allow this file to run as a program or to allow execution ( Execute ) for anyone ( Anyone ).

You can find the list of AppImage programs if you want to test here. However, there is no official central app store, and in most cases, you'll find an AppImage listed as a download option on the download page of the program.

If you wonder if you should use AppImage, Snap or Flatpak, the answer is very simple. If you rarely use applications other than what your package manager provides, use AppImage when possible. However, if you often need third-party software and only use this software on your local computer, use Snap or Flatpak.

Update 17 July 2019
Category

System

Mac OS X

Hardware

Game

Tech info

Technology

Science

Life

Application

Electric

Program

Mobile