By Steven Ovadia

This article was excerpted from Learn Linux in a Month of Lunches.


Linux software installation, removal, and updating is handled by package managers. A package manager is what operates between us, the users, and the distribution software repositories. It’s where you look for software to install. The package manager is also what keeps software up-to-date on your computer. Some distributions have more up-to-date versions of software than others. Some distributions might be using version 3.17 of gedit while another might be using 3.4 (the higher the version number, the more recent the software). The currency of the version is based on what’s available in the repositories.

And if software isn’t available in a repository, it can’t be installed with a package manager. The package manager is also what you’ll use if you want to install a new desktop environment. You just find it and install it and you have another desktop.

Also, for the most part, you’re going to install, remove, and update software using a package manager and not by downloading software from websites. Think in terms of how your phone works. Most of us probably install software on our phones using the phone’s app store and not by downloading from different websites. This process is familiar to anyone used to an app store, but probably feels strange to Windows users (although Windows uses a package manager-like concept for removing software from the computer via the Add/Remove software area). However, once you get used to it, you’ll be thrilled with the ease of removing and installing software.

Your computer has only one package manager, but there are different interfaces for them. Despite the different looks, you are always interacting with the one package manager. In this article, we’ll look at Synaptic (figure 1), which is a graphical package manager used by Debian-based systems. Ubuntu Software Store is another graphical package manager. You can install software with one or both, with no repercussions to your system. Even though they’re different interfaces, they’re both using the same backend. In the case of Debian-based distributions, the backend is Apt, which stands for Advanced Packaging Tool. Different distributions use different package managers, but the concept behind them remains the same. For instance, Fedora and OpenS– USE share a backend called RPM, which stands for RPM Package Manager (yet another charmingly infuriating recursive Linux acronym). The graphical interface for RPM on Fedora is called Software and is the GNOME software installer (see figure 2).


Figure 1 Synaptic is available for every Debian-based system making it very useful to know.


Figure 2 Fedora’s graphical package manager is called Software. It uses the RPM package manager. Notice how it looks like an app store.

The graphical interface for OpenS– USE is called YaST (Yet Another Setup Tool) Control Center (see figure 3).


Figure 3 OpenS– USE’s graphical package manager is called YaST. Like Fedora, it uses the RPM package manager. Notice how it looks more like Synaptic.

Package managers work much like desktop managers—the technical underpinnings are the same but the graphical interfaces can be different. The key difference is that the interfaces are distribution-specific, so if you realize you like the look and feel of YaST, you can’t use it on Fedora. However, the behavior, in terms of how you’ll interact with it, is pretty much identical across distributions.