epcim
12/29/2016 - 10:15 AM

APT Pinning priorities

APT pinning priorities conf

How APT Interprets Priorities

Priorities (P) assigned in the APT preferences file must be positive or negative integers. They are interpreted as follows (roughly speaking):

  P >= 1000
      causes a version to be installed even if this constitutes a downgrade of the package

  990 <= P < 1000
      causes a version to be installed even if it does not come from the target release, unless the installed version is more recent

  500 <= P < 990
      causes a version to be installed unless there is a version available belonging to the target release or the installed version is more recent

  100 <= P < 500
      causes a version to be installed unless there is a version available belonging to some other distribution or the installed version is more recent

  0 < P < 100
      causes a version to be installed only if there is no installed version of the package

  P < 0
      prevents the version from being installed

If any specific-form records match an available package version then the first such record determines the priority of the package version. Failing that, if any general-form records match an available package version then the first such record determines the priority of the package version.

For example, suppose the APT preferences file contains the three records presented earlier:

      Package: perl
      Pin: version 5.10*
      Pin-Priority: 1001

      Package: *
      Pin: origin ""
      Pin-Priority: 999

      Package: *
      Pin: release unstable
      Pin-Priority: 50

  Then: