AppImage On Linux Explained: How to Run Apps Without Installing

Photo by Nayam / Unsplash

AppImage On Linux Explained: How to Run Apps Without Installing

Learn How To Run AppImages And Seamlessly Integrate Them Into Your Linux Application Launcher

Paul Knulst  in  Linux Oct 1, 2024 3 min read

In every Linux distribution there are several ways to install software. One of the most used methods is downloading a .deb or .rpm file and simply double-click them to install.

But since some years, you might have seen applications with a .appimage extension and wondered what these files are. Within this short tutorial I want to explain AppImage and show how to use it on Linux to run applications. I also add some important tips to think about when working with AppImage and I provide a simple tutorial to add any AppImage to your Linux application launcher.

What is AppImage?

AppImage is a relatively new (compared to deb/rpm) packaging format (developed in 2004, named klik) that allows you to run applications on Linux with just a simple click. Unlike to traditional packages like DEB or RPM, AppImages are compatible across all Linux distributions, making them available to all Linux users.

💡
Note: DEB packages are used for Debian/Ubuntu-based distribution, and RPM packages are used Fedora/SUSE-based ones.

While DEB and RPM offer a convenient way for users to install software, they are challenging for developers, who has to create different packages for each Linux distribution. This is exactly where AppImage steps in.

AppImage is a universal software packaging format that bundles software in an single file which works on all modern Linux distributions. In contrast to other Linux distributions AppImage does not install software in the traditional way by placing files in various system locations (and requiring root permissions). Also, it does not really "install" the software because it is a compressed image that includes all neccessary dependencies and libraries to run the application. This means that if you run an AppImage file the software starts immediately without any extraction or installation process. To delete an AppImage it is sufficient to simply delete the .appimage file.

Key Features of AppImage

  • No installation or compilation: Simply click and run the application.
  • No root permissions required: It doesn't modify system files.
  • Portable: Can be run from anywhere, including live USB environments.
  • Read-only apps: The software operates in read-only mode.
  • Can be removed easily: Simply deleting the AppImage file will remove the complete software.
  • No sandboxing by default: AppImages are not sandboxed unless configured otherwise.
  • Not Distribution dependant: Works across various Linux distributions.

How To Use AppImage On Linux

Simpy Run The AppImage

On Linux any AppImage can be used by following three simple steps:

  1. Download the AppImage file
  2. Make it executable (chmod +x software.appimage)
  3. Run it

Add AppImage To Your Linux Application Launcher

After downloading and running your AppImage file they wont appear in your application launcher. This means that you cannot add it to your Panels or launch it by opening the launcher.

Using the AppImage software in the Linux application launcher can be done by simply creating a desktop entry for the app. In Linux a desktop entry is a configuration file that tells your desktop environment how an application is handled.

In Linux Desktop entries can be created in the following two folders:

  1. /usr/share/applications/
  2. ~.local/share/applications/

While the first folder is globally used by every user (also you need root for this) the second folder should be used.

Switch to ~.local/share/applications/, create a new file with the .desktop extension and add the following code:

[Desktop Entry]
Type=Application
Name=Appname
Icon=/path/to/your/icon.png
Exec=/path/to/app.AppImage
Categories=Utility;

In this file replace Appname with the name of the app which will be displayed in the application launcher.

Also, replace /path/to/your/icon.png with the full path to an icon file which is used for the app if you have one. If you don't have an icon, you can omit this line, but having an icon is recommended for better integration.

Lastly, replace /path/to/app.AppImage with the full path to your AppImage file.

After closing and saving this file your system should automatically detect the changes and your app can be found in the application launcher.

Closing Notes

AppImage offers a simple and effective solution for running applications across different Linux distributions without the complexity of traditional installation methods. By using this universal, portable format, it makes software access easier for both users and developers. Also, AppImage applications don't install themself on your Linux system and deleting them is very easy by simply deleting the .appimage file.

In this simple tutorial, I tried to show how every Linux user can use AppImage applications and integrate them in their launcher for a better experience.

Hopefully, this article was easy to understand and you learned about AppImage applications.

Do you have any questions regarding AppImage? Or do you have any feedback? I would love to hear it, your thoughts and answer all your questions. Please share everything in the comments.

Feel free to connect with me on Medium, LinkedIn, Twitter, and GitHub.


☕

🙌 Support this content

If you like this content, please consider supporting me. You can share it on social media, buy me a coffee, or become a paid member. Any support helps.

See the contribute page for all (free or paid) ways to say thank you!

Thanks! 🥰

By Paul Knulst

I'm a husband, dad, lifelong learner, tech lover, and Senior Engineer working as a Tech Lead. I write about projects and challenges in IT.