fichier de contrôle des préférences pour APT
On peut définir le dépôt par défaut par:
apt-get install -t testing paquet
ou
APT::Default-Release "stable" ;
Quand une distribution par défaut a été indiquée, APT utilise l'algorithme suivant pour déterminer la priorité des versions d'un paquet:
une priorité égale à 100 est affectée à la version déjà installée (si elle existe)
une priorité égale à 500 est affectée aux versions qui ne sont pas installées et qui n'appartiennent pas à la distribution par défaut.
une priorité égale à 990 est affectée aux versions qui ne sont pas installées et qui appartiennent à la distribution par défaut.
Quand aucune distribution par défaut n'a été indiquée, APT affecte simplement une priorité égale à 100 à toute version installée d'un paquet et une priorité égale à 500 à tout version non installée.
Puis APT applique les règles suivantes pour déterminer la version du paquet qu'il faut installer (elles sont listées par ordre de priorité):
- Ne jamais revenir en arrière, sauf si la priorité d'une version disponible dépasse 1000.« Revenir en arrière » signifie installer une version moins récente que la version installée. Il faut noter qu'aucune des priorités par défaut n'excède 1000 ; de telles valeurs ne peuvent être définies que dans le fichier des préférences. Notez aussi qu'il est risqué de revenir en arrière.
- Installer la version qui possède la priorité la plus haute.
- Quand deux (ou plus) versions ont la même priorité, installer la version la plus récente
- Quand deux (ou plus) versions ont la même priorité et le même numéro de version, mais soit les paquets diffèrent par certaines méta-données, soit l'option —reinstall a été donnée, installer la version qui n'est pas installée.
Le fichier des préférences permet à l'administrateur système de contrôler l'affectation des priorités. Ce fichier est constitué d'une ou plusieurs entrées séparées par des lignes blanches. Ces entrées peuvent avoir deux formes, une forme particulière et une forme générale.
- La forme particulière affecte une priorité (Pin-Priority) à un paquet précis, à une version précise ou à un intervalle spécifiant plusieurs versions. Par exemple, l'entrée suivante affecte une priorité haute à toutes les versions du paquet perl dont le numéro de version commence par 5.8.
Package: perl
Pin: version 5.8*
Pin-Priority: 1001
- La forme générale affecte une priorité à toutes les versions d'un paquet dans une distribution donnée (c'est-à-dire, à toutes les versions d'un paquet qui sont listées dans un fichier Release), ou à toutes les versions d'un paquet provenant d'un site internet identifié par un nom complètement qualifié.
Cette forme générale des entrées du fichier des préférences s'applique seulement aux groupes de paquets. Par exemple, l'entrée suivante affecte une priorité haute à toutes les versions disponibles dans le site local.
Package: *
Pin: origin ""
Pin-Priority: 999
L'entrée suivante affecte une priorité basse à toutes les versions d'un paquet appartenant à toute distribution dont le nom d'« Archive » est unstable.
Package: *
Pin: release a=unstable
Pin-Priority: 50
L'entrée suivante affecte une priorité haute à toutes les versions d'un paquet appartenant à toute distribution dont le nom d'« Archive » est stable et dont le numéro de « Version » est 3.0.
Package: *
Pin: release a=stable, v=3.0
Pin-Priority: 500