Packages

Linux distributions, when used in a reasonable manner, make updates, software dependencies, and other aspects of maintaining several programs very easy. This is done by using package managers. We touched on this a little bit already. Distributions will have publicly available repositories where you can install a wide array of software. With the command-line, you can install a whole lot without ever having to browse the web, or finding any files or dependencies. For instance on Ubuntu, you can type

[bradr@localhost ~]$ sudo apt install tmux libreoffice gimp thunderbird anki blender apache2 php mariadb-server supertux

This one command will install tmuxĀ  which we covered earlier, libreofficeĀ  which is an entire office sweet, which in this author's humble opinion is superior to Microsoft Office, a Photoshop equivalent, a well known e-mail client, an indispensible flashcard application, a professional 3d animation software, an entire LAMP stack webserver, and a surprisingly good 2D sidescrolling platform game featuring the Linux mascot. The command will also automatically find and install any dependencies and maintain them.

Then you can update all software on your system with the command

[bradr@localhost ~]$ sudo apt upgrade

And that is how easy it is to maintain the system.

Distribution specific package managers

Each distro typically features it's own package manager, but they all generally work about the same way.

Distro familyPackage ManagerSearch InstallRemoveUpdate
Debian/Ubuntuaptapt search termapt install packageapt remove packageapt upgrade
RHEL/Rockydnfdnf search termdnf install packagednf remove packagednf upgrade
Arch/Manjaropacmanpacman -Ss termpacman -S packagepacman -R packagepacman -Syu