1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
|
<!-- -*- mode: sgml; mode: fold -*- -->
<!-- translation of version 1.3 -->
<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V3.1//EN" [
<!ENTITY % aptent SYSTEM "apt.ent.fr">
%aptent;
]>
<refentry lang=fr>
&apt-docinfo;
<refmeta>
<refentrytitle>apt_preferences</>
<manvolnum>5</>
</refmeta>
<!-- Man page title -->
<refnamediv>
<refname>apt_preferences</>
<refpurpose>Un fichier de contr�le, utilis� par APT, indiquant des pr�f�rences</>
</refnamediv>
<RefSect1><Title>Description</>
<para>
Le fichier des pr�f�rences contr�le diff�rents aspects du syst�me APT. Il est
con�u pour �tre modifiable par l'utilisateur et manipulable de fa�on
logicielle. Il comprend des enregistrements form�s sur le mod�le du fichier
<filename/status/ de Dpkg : des sections s�par�es par des espaces et des lignes
commen�ant par une �tiquette suivie d'un � : �. Il se trouve dans
<filename>/etc/apt/preferences</>.
</RefSect1>
<RefSect1><Title>Questions de version</>
<para>
L'un des buts de ce fichier est de permettre � l'utilisateur de choisir
quelle version d'un paquet il veut installer. On peut faire ce choix de
plusieurs fa�ons mais il est bas� sur trois crit�res : la version,
l'�dition et l'origine.
<para>
Choisir la version peut se faire avec une recherche de correspondance sur une
cha�ne exacte ou bien sur une cha�ne pr�fix�e. Le format est : <literal/2.1.2/
pour la premi�re et <literal/2.2*/ pour la seconde. L'utilisation d'un pr�fixe
permet d'ignorer le <literal/r/ du syst�me d'ordonnancement des �ditions
(<literal/2.1r*/), ou bien d'ignorer les r�visions propres � Debian
(<literal/1.1-*/). Quand on compare des versions en se servant d'un pr�fixe,
la version poss�dant le num�ro le plus �lev� est toujours choisie.
<para>
Choisir une �dition de la distribution est plus compliqu� et poss�de trois
formes. Le but principal du choix d'une �dition est d'identifier un ensemble de
paquets qui corresponde � un vendeur particulier ou � une �dition de la
distribution (p.ex. Debian 2.1). Les deux premi�res formes sont des raccourcis
pour une utilisation rapide en ligne de commande. Si le premier caract�re de
la cha�ne est un chiffre, c'est une recherche fond�e sur la version d'une
�dition ; sinon, c'est une recherche sur le nom d'une �dition. Quand la
cha�ne comporte des signes �gal, c'est une recherche fond�e sur une
description compl�te de l'�dition ; cette cha�ne est une liste de cl�s
(une seule lettre) suivies d'un mot et s�par�es par une virgule. Exemples :
<informalexample><programlisting>
v=2.1*,o=Debian,c=main
l=Debian
a=stable
</programlisting></informalexample>
<para>
Ces recherches utilisent des donn�es prises dans les fichiers
<filename/Release/ r�cup�r�s par APT pendant une mise � jour. Voici les
cl�s disponibles :
<VariableList>
<VarListEntry><term>a= Archive</term>
<ListItem><Para>
C'est le nom habituel donn� � nos archives, comme <literal/stable/ ou
<literal/unstable/. Le nom sp�cial <literal/now/ d�signe l'ensemble des
paquets install�s.
</VarListEntry>
<VarListEntry><term>c= Composant</term>
<ListItem><Para>
Indique un sous-composant de l'archive, tel que <literal/main/,
<literal/contrib/, etc. Quand il n'y a pas de composant dans telle archive,
on peut l'omettre.
</VarListEntry>
<VarListEntry><term>v= Version</term>
<ListItem><Para>
C'est la cha�ne repr�sentant la version ; elle poss�de les m�mes
caract�ristiques que celle du fichier <filename/Packages/. C'est le niveau
�dition de l'archive. Les num�ros d'une �dition classique de la distribution
Debian ressemblent � <literal/2.1r2/ o� le r d�signe une �dition (release) de
la distribution 2.1. Les nouvelles �ditions sont limit�es � des mises �
jour concernant la s�curit�.
</VarListEntry>
<VarListEntry><term>o= Origine</term>
<ListItem><Para>
Ce terme indique qui a fourni l'archive. Pour Debian, c'est <literal/Debian/.
Les autres fournisseurs peuvent utiliser leur propre nom.
</VarListEntry>
<VarListEntry><term><term>l= Label</term>
<ListItem><Para>
Cela donne le nom g�n�ral de la distribution. Pour Debian, c'est
<literal/Debian/. Pour des distributions d�riv�es, ce terme doit �tre leur
propre nom.
</VarListEntry>
</VariableList>
<para>
La derni�re m�thode est le choix de l'origine. C'est simplement le nom du site
d'o� proviennent les paquets. Une cha�ne vide indique un URI de fichier.
<para>
Le choix d'une version, et en particulier les deux derni�res m�thodes,
concerne plusieurs parties d'APT, pas seulement le fichier pr�f�rences.
</RefSect1>
<RefSect1><Title>R�gles pour le choix d'une version</>
<para>
APT conserve une liste de toutes les versions disponibles de tous les
paquets. Quand on indique plusieurs �ditions ou vendeurs dans le fichier
&sources-list;, tous ces �l�ments sont disponibles. APT choisit par d�faut
la version la plus r�cente parmi toutes ces sources automatiques. Quelques
sources sont �tiquet�es Non Automatique, p.ex.
<filename>project/experimental</> -- elles sont mises en bas de la pile de
s�lection.
<para>
Pour d�cider quelle version utiliser, APT affecte une priorit� � toutes les
versions disponibles d'un paquet. Puis il fait deux choses. Premi�rement :
il choisit, parmi les versions plus r�centes que la version install�e, la
version qui poss�de la plus haute priorit� ; ensuite il choisit, parmi
les versions plus anciennes que la version install�e, celle qui poss�de la
plus haute priorit�. Deuxi�mement : si les versions plus anciennes ont
une priorit� sup�rieure � 1000, il les compare avec la priorit� que poss�de
l'ensemble de mise � niveau : la plus grande est choisie. Autrement, les
versions provoquant une r�gression sont ignor�es et il choisit la plus grande
priorit� de l'ensemble de mise � niveau.
<para>
On peut penser le syst�me de priorit� en termes de strates :
<VariableList>
<VarListEntry><term>1000 et au-dessus</term>
<ListItem><Para>
Priorit�s permettant la r�gression
</VarListEntry>
<VarListEntry><term>1000</term>
<ListItem><Para>
La barri�re pour emp�cher la r�gression.
</VarListEntry>
<VarListEntry><term>de 100 � 1000</term>
<ListItem><Para>
Priorit�s standards. 990 est la priorit� d�finie par l'option
<option/--target-release / du programme &apt-get;. 989 est le d�but des
priorit�s automatiques et 500 la priorit� par d�faut des fichiers d'un paquet.
</VarListEntry>
<VarListEntry><term>100</term>
<ListItem><Para>
Priorit� de la version actuellement install�e.
</VarListEntry>
<VarListEntry><term>de 0 � 100</term>
<ListItem><Para>
Priorit�s non automatiques. On s'en sert uniquement si le paquet n'est pas
install� et s'il n'y a pas d'autre version disponible.
</VarListEntry>
<VarListEntry><term>inf�rieur � 0</term>
<ListItem><Para>
Priorit� pour une version qui ne sera jamais s�lectionn�e.
</VarListEntry>
</VariableList>
<para>
Une priorit� sup�rieure � 1000 donn�e � une �tiquette (pin) autorise une
r�gression vers cette version.
<para>
On peut accrocher une �tiquette � chaque paquet et chaque fichier
<filename/Packages/ poss�de une priorit� pour tous les paquets. La plus
haute priorit� affect�e � un paquet est celle qui est utilis�e.
<para>
Une �tiquette de paquet est de cette forme :
<informalexample><programlisting>
Package: apt
Pin: version 0.4.0
Pin-Priority: 1001
</programlisting></informalexample>
La premi�re ligne indique le paquet, la seconde donne le nom de l'�tiquette
et la derni�re la priorit� pour cette �tiquette. Le premier mot du nom de
l'�tiquette peut �tre : version, release ou origin ; le reste du
champ est d�crit plus haut dans la section � R�gles pour le choix d'une
version �.
<para>
Une �tiquette par d�faut repr�sente comment sont d�finies les priorit�s des
fichiers d'un paquet. On peut sp�cifier autant d'�tiquette par d�faut qu'on
veut ; la premi�re correspondant au d�faut s�lectionne la priorit� pour
les fichiers d'un paquet. Seuls � release � et � origin �
peuvent �tre utilis�s dans le nom de l'�tiquette puisqu'ils correspondent aux
fichiers <filename/Packages/.
<informalexample><programlisting>
Package: *
Pin: release v=2.1*
Pin-Priority: 998
</programlisting></informalexample>
<para>
Quand le champ Pin-Priority manque, la priorit� est par d�faut de 989
dans les deux cas.
<RefSect2><title>Effets notables</>
<para>
� cause de la barri�re emp�chant les r�gressions (priorit� 1000), il est
possible qu'une version poss�dant une priorit� inf�rieure soit choisie si
une version poss�dant une priorit� sup�rieure provoque une r�gression. Par
exemple, le paquet foo poss�de les versions <literal/1.2/, <literal/1.1/
et <literal/1.0/ ; <literal/1.1/ est la version install�e ; les
priorit�s de chaque version sont : 900, 100 et 950 respectivement :
la version <literal/1.2/ sera install�e.
<para>
Dans la pratique, c'est ce qu'on veut ! Un utilisateur utilisera une
�tiquette par d�faut pour rendre la distribution � stable � la
distribution par d�faut ; il utilisera ensuite l'option
<option/--target-dist/ avec &apt-get; pour choisir de nouvelles versions dans
� unstable �. Les paquets mis � niveau avec � unstable �
suivront les versions disponibles dans � unstable � puisque les
versions de � stable � sont maintenant pass�es
sous la barri�re emp�chant la r�gression.
<para>
Si on ne le veut pas, on doit utiliser une �tiquette par d�faut qui donne
� � unstable � une priorit� inf�rieure � 100.
<para>
Ceux qui utilisent des suppl�ments venant de tiers comme Helix GNOME peuvent
se servir de ce proc�d� pour obtenir des paquets Helix ; ils peuvent
forcer l'utilisation des paquets Debian en d�finissant la priorit� de cette
source suffisamment haut. On peut m�me r�aliser une r�gression massive d'un
ensemble de paquets � un autre en utilisant une priorit� sup�rieure � 1000.
</RefSect2>
</RefSect1>
<RefSect1><Title>Voir aussi</>
<para>
&apt-cache; &apt-conf;
</RefSect1>
&manbugs;
&manauthor;
&traducteur;
</refentry>
|