Ubuntu Linux ships with tools — namely, apt-get and drawback — that fto you instal packages designed to tally connected Ubuntu. But what if you privation to instal bundle that tin tally connected any Linux distribution, not conscionable Ubuntu?
AppImage is the solution. AppImage is simply a instrumentality for installing bundle connected Linux that works crossed each large Linux distributions, including but not constricted to Ubuntu. On apical of this, AppImage offers benefits specified arsenic the quality to tally bundle without sudo oregon basal privileges and to debar having to extract and acceptable up packages earlier you tin tally apps.
This nonfiction walks done everything you request to cognize astir utilizing AppImage connected Ubuntu. It explains however AppImage works, however to instal the AppImage instrumentality connected Ubuntu, however to instal AppImage packages, and adjacent the basics of however to make AppImage packages of your ain connected an Ubuntu system.
What Is AppImage?
AppImage is an unfastened root instrumentality for packaging and moving bundle connected immoderate Linux distribution.
Related: What Is AppImage? Benefits, Drawbacks, and Getting Started
AppImage is designed based connected the pursuing principles:
- Each exertion that users privation to tally should beryllium a azygous file. They shouldn't person to download aggregate files, libraries, oregon dependencies to tally a azygous app.
- The app installation process should beryllium simple. There shouldn't beryllium a request to extract a bundle oregon instal antithetic parts of the app to antithetic parts of the record system, oregon for users to reply a batch of configuration questions during installation.
- Users should beryllium capable to tally applications without superuser (i.e., basal oregon sudo) privileges.
- The app absorption process should beryllium accordant crossed Linux distributions, meaning that nary substance which mentation of Linux you use, you tin trust connected the aforesaid tools and process for moving and removing software.
These factors acceptable AppImage isolated from astir different Linux bundle managers, including the bundle absorption bundle that is disposable by default connected Ubuntu.
AppImage vs. apt-get and snap
If you usage Ubuntu, you astir apt cognize that Ubuntu comes with its ain tools for managing packages. All versions of Ubuntu see apt-get (or conscionable apt for short), which tin instal bundle utilizing what are known arsenic Debian packages. In addition, modern versions of Ubuntu vessel with snap, an alternate bundle manager that relies connected drawback packages.
Apt-get and drawback are some akin to AppImage successful that they fto you instal bundle based connected packages. Both are besides comparatively casual to use.
Related: How to Install Ubuntu connected a Computer oregon Virtual Machine
However, the large differences betwixt AppImage connected the 1 hand, and apt and drawback connected the other, are that:
- AppImage doesn't necessitate basal privileges, but you bash request to beryllium the basal idiosyncratic (or usage sudo) to instal bundle with apt and snap. (Technically, you tin usage drawback without being root, but lone if you configure entree rights decently utilizing the polkit authorization framework.)
- AppImage works connected immoderate Linux distribution, not conscionable Ubuntu. Apt and drawback are besides supported connected different Linux distributions, but not all.
- AppImage exertion packages don't necessitate the installation of different packages to resoluteness exertion dependencies. Apt doesn't enactment this way. (Snap packages are much akin to AppImage successful this respect, fixed that snaps besides don't necessitate outer packages to resoluteness dependencies.)
- AppImage packages are not installed successful the accepted sense. You simply tally them, without having to extract bundle components and determination them into assorted parts of your record system.
AppImage is besides comparable successful immoderate ways to Docker, which is different instrumentality for packaging and moving applications crossed Ubuntu oregon immoderate different Linux organisation utilizing containers. But Docker is chiefly utilized for moving server applications, whereas AppImage orients much toward the satellite of desktop apps.
Plus, Docker applications necessitate an orchestration system, similar Kubernetes, successful bid to enactment good astatine scale. There are nary orchestration tools designed for AppImage apps due to the fact that users typically lone tally a fewer AppImage apps astatine a time, whereas with Docker, they mightiness tally dozens oregon hundreds of containers.
How to Use AppImage connected Ubuntu
Using AppImage connected Ubuntu boils down to 4 elemental steps:
Step 1: Install FUSE
AppImage doesn't necessitate immoderate peculiar tools, but immoderate AppImage apps necessitate a inferior called FUSE to run. FUSE is not installed by default successful Ubuntu 22.04, but you tin instal it by moving this bid successful a terminal:sudo apt-get instal fuse libfuse2
Step 2: Download an AppImage app
Next, download an AppImage app. You tin find apps successful online repositories similar AppImageHub. Some developers besides supply AppImage packages successful their GitHub oregon GitLab repositories.
Once you've recovered a package, download and prevention it to your strategy utilizing a web browser, oregon download it done the bid enactment utilizing a instrumentality similar wget:wget http://somewebsite.com/path/to/YourApp.AppImage
For the purposes of this article, I downloaded a bundle for KDiskMark from AppImageHub and saved the record to my ~/home/Downloads folder connected Ubuntu.
Step 3: Make the AppImage record executable
AppImage files request to beryllium executable to run. You tin adhd execution support connected the bid enactment with a bid like:chmod +x TerminEv-latest-x86-64.AppImage
Or unfastened up the folder that contains the bundle successful a record browser, right-click the package's icon, prime Properties and usage the Permissions tab to marque definite the container for executing the record is set:
Note that the configuration surface you spot successful a record browser whitethorn alteration depending connected which Ubuntu mentation and record browser you use.
Step 4: Run the app
Once you've acceptable executable permissions, you tin simply tally the app.
To bash this connected the bid line, benignant the sanction of your AppImage record preceded by the characters ./
Alternatively, double-click the package's icon successful a record browser, oregon right-click connected the icon and prime the Run option.
Creating Desktop Shortcuts for AppImage connected Ubuntu
If you program to usage an AppImage bundle connected a regular basis, you whitethorn privation to acceptable up a desktop shortcut truthful you tin entree it easily, without having to navigate to its determination wrong your record system.
To bash this, archetypal marque definite that you prevention the AppImage record successful a determination wherever it volition beryllium permanently accessible. It doesn't truly substance which determination you take arsenic agelong arsenic you person permissions to entree it; you could make a folder wrong your Home directory labeled "AppImage apps" and store AppImage images there.
Then, unfastened up your favourite substance exertion (like gedit, which you tin motorboat by typing "gedit" successful a terminal) and make a record that defines the desktop shortcut. The record should incorporate the pursuing lines:[Desktop Entry] Name=YourApp Exec=/path/to/app.AppImage Icon=/path/to/nextcloud-icon.png comment=app Type=Application Terminal=false Encoding=UTF-8 Categories=Utility;
Note the bolded fields, which you should alteration based connected the determination wherever you chose to store your representation and to whichever icon you'd similar to show for the desktop shortcut.
You should besides alteration the "Name" tract based connected the sanction of your app.
Once you've entered the close values, prevention your record to your Desktop directory (i.e., /home/yourusername/Desktop). The desktop launcher should present beryllium visible. If double-clicking connected the icon doesn't motorboat your app, right-click to unfastened the Properties model and marque definite permissions are acceptable to let the launcher to tally arsenic a program. This whitethorn beryllium indispensable adjacent if you already acceptable executable permissions for the AppImage record itself, since the representation record is antithetic from the desktop shortcut file.
You tin besides adhd the launcher to your applications paper by copying it to the /usr/share/applications directory with a bid like:sudo cp /home/yourusername/YourApp.desktop /usr/share/applications/
How to Remove AppImages connected Ubuntu
Because AppImage packages don't instal themselves to the Ubuntu record system, the lone happening you person to bash if you privation to uninstall an AppImage is region the record you downloaded.
You tin bash that by right-clicking connected the record wrong a record browser and selecting the enactment to delete it oregon determination it to the trash. Or region it connected the bid enactment with:rm /path/to/YourApp.AppImage
You'll besides privation to region immoderate .desktop launchers that you created for the app successful your Desktop and/or /usr/share/applications folders.
How to Create and Distribute an AppImage connected Ubuntu
Creating your ain AppImage bundle for usage connected Ubuntu oregon immoderate different Linux organisation is comparatively simple, by the standards of bundle management.
The nonstop steps beryllium connected which benignant of app you are packaging, but they typically boil down to:
- Creating a .yml file. This is simply a configuration record that defines the contents of your app.
- Using a instrumentality called pkg2appimage to physique an AppImage bundle based connected the configuration you specify successful the .yml file.
Importantly, these steps, which are elaborate successful the AppImage documentation, presume your exertion is already packaged successful a antithetic format. If you alternatively are moving with exertion root codification oregon earthy binaries, you'll request to travel a longer process that volition successful galore cases necessitate you to compile code. Check retired this guide for the details.
Once you've created an AppImage package, you tin people it to a repository to administer it to different Ubuntu users.
Conclusion: The Benefits of AppImage for Ubuntu
AppImage is surely not the lone mode to tally bundle packages connected Ubuntu. But it's simpler and faster successful galore respects than utilizing apt and snap, the much communal bundle installation tools for Ubuntu. Plus, if you usage aggregate Linux distributions, AppImage offers the payment of enabling you to negociate and tally bundle successful a accordant way, without relying connected distribution-specific tooling.
About the authorChristopher Tozzi is simply a exertion expert with taxable substance expertise successful unreality computing, exertion development, unfastened root software, virtualization, containers and more. He besides lectures astatine a large assemblage successful the Albany, New York, area. His book, “For Fun and Profit: A History of the Free and Open Source Software Revolution,” was published by MIT Press.