Ubuntu – How are packages suggested and what is the difference between extra and new packages

aptpackage-management

When installing a new package via apt-get install, I usually just tick yes if it is a program I need/want, but, I read through it, and, I am a little curious as to what the sections actually mean.

  1. How does apt-get know what packages are "suggested"?

  2. What is the difference between "The following extra packages will be installed" and "The following NEW packages will be installed"?

Best Answer

There are three basic ways an Ubuntu package can depend or pull in other packages:

  1. Depends - this is a hard dependency, the program you are installing requires this other package to run. If you try to uninstall one of these packages, your program will be uninstalled with it.
  2. Recommends - this is a package the is needed or recommended for normal use of the program you are installing, but the program will work without it. By default Ubuntu will install these (unless disabled with --no-install-recommends) but it won't complain if you remove them later on.
  3. Suggests - this is a package that can enhance the program you are installing but is not considered a part of normal use. These packages are not installed by default (unless enabled with --install-suggests) and would be considered like a "hey, you might find these interesting" from the package developer.

By default, Ubuntu installs packages marked as depends and recommends, and all these will be listed as extra packages, unless you specified some of them explicitly on the command line.

Packages marked as NEW are all the packages that are about to be installed, i.e. the packages specified on the command line and all extra packages.