AppImage
The problem if making software run on any Linux distribution is hard to solve. AppImage is one solution which is gaining popularity. In short it's a self-contained archive you can download, make executable and run. Library dependencies, graphics elements and everything else is contained within the "AppImage".
Basic usage[edit]
If you, as an example, want to download a version of Krita which is newer than what your distribution provides then that's a matter of running these commands in a terminal:
wget https://download.kde.org/stable/krita/4.2.0/krita-4.2.0-x86_64.appimage chmod a+x krita-4.2.0-x86_64.appimage
The first command uses wget
[1] to download the AppImage from download.kde.org/stable/krita/4.2.0/. There could be newer versions by the time you read this. The second command uses chmod
[2] to make the file executable. Then it's just a matter of running it:
./krita-4.2.0-x86_64.appimage
and that's it.
If you prefer to do things in a file manger you can - depending on your file manager. Download the AppImage file, navigate to the folder where you placed it and right click on it. Select "Properties" and "Permissions". You may find a small checkbox there saying "Allow executing file as a program". Check that box if it's there to make your AppImage executable. Do note: nemo has that option. thunar does not.
Some programs distributed by AppImage will ask you to create a .desktop
file when they are launched for the first time. These are files following the freedesktop standard for providing menu entries. Most AppImage's won't try to create a menu entry file for you. A simple way to have those available is to simply put the AppImage in your $HOME/Desktop
folder show they show up as an icon on your desktop - unless you're using some crippled desktop environment like GNOME which lack that basic feature.
Quick note on "Universal apps" and the War to become the Standard[edit]
In bullet summary there's 3 competing standards for a universal solution for providing a simple file which works on any Linux distribution: Snap - favored by Ubuntu, Flatpak - favored by Fedora and AppImages.
All of them can be used on any distribution and as a end-user it doesn't really matter. If there's no native package for your distribution and there is an AppImage available then that's fine, just use it.