Package management (Ubuntu)

Software for Ubuntu is organized via Debian packages. Ubuntu is using the Advanced Packaging Tool (APT) to handle the package management. Therefore APT provides the low-level tools e.g. for

  • installing software
  • removing software
  • updating software

Ubuntu is an Open Source GNU/Linux Distribution. It can use a really impressive archive of free software (→ thousands of freely available packages). These huge amount of software packages are organized via so called package repositories.

The Basics

Package management


Debian package? I thought I am running Ubuntu?!

Ubuntu Linux is based on Debian Linux. Therefore is is using the same, advanced and stable package management system.

What is a "package" or "binary package"?

Debian binary packages (→ files with a .deb extension) are comparable to e.g. a setup.exe out of the MS Windows world. But this comparison is only true in the broadest sense, packages are much more powerful and painless than most Windows application setups. You can basically keep in mind that packages are containing the files of an application plus a set of related commands for your operating system to install it.

If someone says “you need the package foobar”, he means you should install the Debian binary package foobar.

What is a "source package"?

Debian source packages (→ files with a .dsc extension) are used to distribute source code, mostly useful because source code is not platform depended (e.g. 32bit vs. 64bit, PowerPC vs. i386 etc.). If you are a common user, you normally don't see them very often. If you need them, you will know what they are for. ;-)

What is a "package repository" or "repository"?

Most software for Ubuntu is organized in so called repositories. A repository is basically a list of available software packages it is responsible for, normally located on a remote computer (therefore it often has a website-like address). The repository is providing information about packages for your OS (where to download the software, who created it and stuff like that).

The Advanced Packaging Too (APT) has got a lists with addresses of repositories it should keep track of (=it is mirroring them on your local machine). The main list is stored within the file /etc/apt/sources.list (you should not touch it), additional lists may be stored in *.list files within the /etc/apt/sources.list.d/ directory.

See ”Repositories” and ”Adding new repositories” for more information.

Why should this be better than the software management on MS Windows?

Debian packages are standardized and your package manager keeps track of all the software on your system. Therefore it is possible for your Ubuntu to update itself and all the software you installed.

Think about visiting How cool would it be to get all your software and updates there, not just the patches needed for your core system?1) On Ubuntu, it is really like that,2) because the package manager apt does all the needed work for you – no more Adobe, Java, Google or other background updaters, no more unpatched, insecure versions of software without an automatic updating service.

If you need software on MS Windows, you normally do something like this:

  1. If the software needs a third party component or a patch: get it first.
  2. Visit the manufacturer's website.
  3. Search for an installer (can take much time if the website is… suboptimal. Think about most “support pages” for downloading a driver).
  4. Download the installer.
  5. If you are lucky, the manufacturer provides a signature and checksums, enabling you to make sure the downloaded installer was not modified.
  6. Execute the installer, clicking “Next” a thousand times.
  7. If the software does not provide an updater: Revisit the manufacturer's website from time to time to look if there is a security patch.

You have to do this over and over again, for nearly every software you want to use. Additionally, these tasks are hardly automatable.

On Ubuntu, you just need the name of the package to install. All you have to do is to tell the package manager “install foobar for me”. Then, the package manager

  1. looks at the repositories for foobar
  2. gets the needed information to download the package including its dependencies (=which other software is needed by foobar)
  3. installs it silently after making sure the package is not compromised or damaged by verifying its signature.
  4. After installing the software, it makes sure you'll get the security updates for foobar automatically (this works because if there is a patch, the repository will tell your package manager about this)

everything with just one command. You can get a coffee during the package manager is doing its job. And it is even getting better: you can pass a list of packages, installing a whole bunch of software with one command. So ask again - why is this better? Are you kidding? ;-)

See ”Package management” for the needed commands to unleash the power of your package manager.

1) and some other Microsoft products like Office
2) but you don't even have to visit a website
QR Code
QR Code os:ubuntu:package-management:start (generated for current page)
Translations of this page: