I am trying to understand how APT works, and here is where I got stuck - who determines what packages are installed, on day-one?

It seems that one of the rules is, based on the current snapshot of the system, apt upgrade will install up to the Recommended dependencies of the installed packages. So, from a minimum set of 'core' packages and some 'higher-level' packages, apt upgrade/dist-upgrade should be able to grow and fill the blanks.

Questions are:

  1. Is there a standard list of default packages? (Debian FAQ says a default installation includes packages with priority equal or higher than Standard. Does that define the standard list?)
  2. Is this configurable or hard coded into apt?
  3. Is there a way to go back to this standard list? meaning a single command to reverse all manual installs/uninstalls and their dependencies?
  4. Does this standard package list depend on my local hardware setup, aside from architecture? (e.g., what video card I have.)
  5. Which config file tells apt to install Recommended packages?
  6. Suppose sometime after my fresh install, a package with Standard priority is added to a repository included in my sources.list file. Will that package be installed on my box next time I run apt update && apt upgrade?
  • (5) Because it's a default, it might not be in any config file, but the configuration item is APT::install-recommends
    – muru
    Jan 27, 2020 at 4:36
  • Print a list with installed packages. Time and date is included, to know the "default" packages, from the install date : $ ls -tl /var/lib/dpkg/info/ | grep list > package-list.txt Jan 27, 2020 at 12:50
  • @Knud that will reflect the last time the packages were upgraded, not when they were installed. Jan 27, 2020 at 13:02

1 Answer 1

  1. See Is there any "base" Debian metapackage?

  2. It’s embedded in the Debian installer and the tools it uses (tasksel in particular). The installer installs the essential packages and their dependencies, and tasksel installs the standard-priority packages if the corresponding task is selected.

  3. See Is there a command that outputs ONLY the packages explicitly installed by the user? (ubuntu/debian)

  4. No.

  5. It’s the default, and can be configured in the APT configuration files under /etc/apt.

  6. No, you’d have to run tasksel again.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.