How are packages suggested and what is the difference between extra and new packages?
Solution 1:
There are three basic ways an Ubuntu package can depend or pull in other packages:
- 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.
-
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. -
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.
Solution 2:
When a package is created, its author gives it a list of suggested packages, these are things that you don't need, but might want to have.
When you install a package, it will automatically download that package, plus any other packages that one says it depends on. "New" packages is the combination of the packages you explicitly told it to install, and any dependent packages that it needs in order for them to work. "Extras" are just those that it needs, but you didn't specify.