Most Linux users do not have any trouble with installing or uninstalling applications. It does not matter what distro you use, it is going to have a package manager that’ll do it all.
But as the Linux community is growing, developers are trying to keep things even simpler and stable for end-users as well as other developers. Recently, we have seen the rise of snap and flatpak. I have talked about both here and here. Both of these app development frameworks solve some of the problems that Linux app developers have faced for a long time.
Appimage also aims to solve numerous issues. It solves many issues when it comes to using the software on Linux distros. One of the major issues for Linux users is to get an app specific to their Linux distro and the same for developers, they have to build their app for different Linux distros.
One file equals One app
appimage files contain the required libraries or dependencies. No other package needed to be installed to run any appimage. Instead, the application may ask the user to integrate the application into the system so that you can launch it from the app menu. I will talk about appimage integration later in this article.
How to use appimage?
appimage is the simplest way to run an app on Linux. Almost all Linux distributions can run appimage perfectly fine.
Running appimage –
- Get appimage of your desired application
- Make it executable
- Double click it
And that’s pretty much it. All you need to do is make the appimage executable either from the command line or right-click the file >> properties >> permissions and check ‘Allow executing file as program”.
To make appimage executable from the command line, open terminal and type the following command –
sudo chmod +x name.appimage
Integrate appimage with system
appimage apps are designed to pack all the app-specific libraries and dependencies with them and work like portable Windows applications. Just click it and it will run.
In case you want to integrate an appimage with your system and open it from the apps menu like any other application, it is completely possible.
Many applications, when run, ask the user to integrate it with the system. And clicking on ‘Yes’ runs the application and creates an entry in the applications menu. But this functionality is only available if the developer of the app has provided that option.
There is an optional daemon called, appimaged. If installed, this daemon will look for appimage files in most commonly used directories and register the appimage apps automatically.
To install appimaged, use the following commands –
wget "https://github.com/AppImage/appimaged/releases/download/continuous/appimaged-x86_64.AppImage" chmod a+x appimaged-x86_64.AppImage ./appimaged-x86_64.AppImage --install
Once done, the terminal will prompt to logout and log back in to complete the installation. Or you can restart your system.
Now any appimage in the following directories will be registered with the system. From now on, you won’t even need to make any file executable, just download any app image and open it from the apps menu.
Directories monitored by appimaged
- $HOME/Downloads (or its localized equivalent, as determined by
- [any mounted partition]/Applications
appimage app is just a simple file and when you run it, it does not store even a single file in the system installation directory or anywhere else. As I mentioned above, certain apps may ask confirmation to integrate appimage with the system so that the user can easily open it from the apps menu. If you confirm it, then it’ll register the app with the system and link it with the appimage file.
If you have installed appimaged, then you do not have to do anything extra to integrate or remove any app. Just downloading an appimage will register the app with the system menu and deleting the file will disintegrate it automatically.
appimage file is an entire app. If an app developer releases a new version of the app, users can simply download the new version and delete the older version. That’s how you can update it.
But if you want to update the current app, you can try to do so using AppImageUpdate package provided by the AppImage developer. This package only updates an app if the update information is available in the file.
Download AppImageUpdate from the app market and run it like any other appimage file.
Now select the app you want to update and it’ll be updated. appimage updates are really fast because only the portion of the app that has changed is updated not the entire app.
So that is how you can run an appimage file. Running an entire application from a single file is a great advantage. If the project continues, I hope to get even a better way to update any application.
Also, the application website lists 900+ applications but there is no search option to find a specific app. It’ll be better to have a snap like store and get all the application properly sorted out and easily findable.