chiark / gitweb /
a6a076d136bafd1e836d2e4cf89c6b6b8825b85f
[developers-reference.git] / developers-reference.fr.sgml
1 <!DOCTYPE debiandoc PUBLIC "-//DebianDoc//DTD DebianDoc//EN" [
2   <!-- include version information so we don't have to hard code it
3        within the document -->
4   <!ENTITY % versiondata SYSTEM "version.ent"> %versiondata;
5   <!-- common, language independent entities -->
6   <!ENTITY % commondata  SYSTEM "common.ent" > %commondata;
7
8   <!-- CVS revision of this document -->
9   <!ENTITY cvs-rev "$Revision: 1.42 $">
10   <!-- if you are translating this document, please notate the CVS
11        revision of the developers reference here -->
12   <!-- <!ENTITY cvs-en-rev "1.253"> -->
13
14   <!-- how to mark a section that needs more work -->
15   <!ENTITY FIXME "<em>FIXME:</em>&nbsp;">
16
17 ]>
18 <debiandoc>
19
20   <book>
21       <title>Référence du développeur Debian
22
23       <author>L'équipe de la Référence du développeur &email-devel-ref;
24       <author>Andreas Barth
25       <author>Adam Di Carlo
26       <author>Raphaël Hertzog
27       <author>Christian Schwarz
28       <author>Ian Jackson
29       <author>&nbsp;
30       <translator>version française par Frédéric Bothamy (traducteur actuel)</translator>
31       <translator>et Antoine Hulin (ancien traducteur)</translator>
32       <translator>et les membres de la liste <email>debian-l10n-french@lists.debian.org</email></translator>
33       <version>Version &version;, &date-fr; (version française 20050109).</version>
34
35       <copyright>
36         <copyrightsummary>Copyright &copy; 2004 Andreas Barth</copyrightsummary>
37         <copyrightsummary>Copyright &copy; 1998&mdash;2003 Adam Di Carlo</copyrightsummary>
38         <copyrightsummary>Copyright &copy; 2002&mdash;2003 Raphaël Hertzog</copyrightsummary>
39         <copyrightsummary>Copyright &copy; 1997, 1998 Christian Schwarz.</copyrightsummary>
40 <p>
41 Ce manuel est un logiciel libre&nbsp;; il peut être redistribué et/ou modifié
42 selon les termes de la licence publique générale du projet GNU (GNU GPL), telle
43 que publiée par la «&nbsp;Free Software Foundation&nbsp;» (version 2 ou toute
44 version postérieure).
45
46 <p>
47 Il est distribué dans l'espoir qu'il sera utile, mais <em>sans aucune
48 garantie</em>, sans même la garantie implicite d'une possible valeur marchande
49 ou d'une adéquation à un besoin particulier. Consultez la licence publique
50 générale du projet GNU pour plus de détails.
51
52 <p>Une copie de la licence publique générale du projet GNU est disponible dans
53 le fichier &file-GPL; de la distribution &debian-formal; ou sur la toile&nbsp;:
54 <url id="&url-gpl" name="la licence publique générale du projet GNU">. Vous
55 pouvez également l'obtenir en écrivant à la &fsf-addr;.
56
57     <toc detail="sect1">
58
59     <chapt id="scope">Portée de ce document
60
61 <p>
62 Le but de ce document est de donner une vue d'ensemble des procédures à suivre
63 et des ressources mises à la disposition des développeurs Debian.
64
65 <!-- FIXME: rewrites -->
66 <p>
67 Les procédures décrites ci-après expliquent comment devenir responsable Debian
68 (<ref id="new-maintainer">), comment créer de nouveaux paquets (<ref
69 id="newpackage">) et comment les installer dans l'archive (<ref id="upload">),
70 comment gérer les rapports de bogues (<ref id="bug-handling">), comment
71 déplacer, effacer ou abandonner un paquet (<ref id="archive-manip">), comment
72 faire le portage d'un paquet (<ref id="porting">), quand et comment faire la
73 mise à jour du paquet d'un autre responsable (<ref id="nmu">).
74
75 <p>
76 Les ressources présentées dans ce manuel incluent les listes de diffusion (<ref
77 id="mailing-lists">) et les serveurs (<ref id="server-machines">), une
78 présentation de la structure de l'archive Debian (<ref id="archive">), des
79 explications sur les serveurs qui acceptent les mises à jour de paquets (<ref
80 id="upload-ftp-master">) et une présentation des outils qui peuvent aider un
81 responsable à améliorer la qualité de ses paquets (<ref id="tools">).
82
83 <p>
84 Ce manuel de référence ne présente pas les aspects techniques liés aux paquets
85 Debian, ni comment les créer. Il ne décrit pas non plus les règles que doivent
86 respecter les paquets Debian. Cette information est disponible dans la <url
87 id="&url-debian-policy;" name="charte Debian">.
88
89 <p>
90 De plus ce document <em>n'est pas l'expression d'une politique officielle</em>.
91 Il contient de la documentation sur le système Debian et des conseils pratiques
92 largement suivis. Ce n'est donc pas une sorte de guide de normes.
93
94         <sect>Introduction à la version française
95
96         <sect1>Avertissement
97
98 <p>
99 Bien que ce document soit en français, l'activité de responsable Debian implique
100 une maîtrise de la langue anglaise. Le projet Debian est un projet international
101 auquel participent des japonais, néo-zélandais, américains, allemands,
102 finlandais, français, espagnols, danois, etc.
103
104 <p>
105 En conséquence, la langue utilisée dans toutes les listes de diffusion destinées
106 aux développeurs (à l'exception de la liste
107 <email>debian-devel-french@&lists-host;</email>) est l'anglais et les rapports
108 de bogue doivent être rédigés en anglais. En fait, sauf exception rare, tout
109 dialogue avec les autres responsables Debian se fera en anglais quel que soit le
110 média.
111
112
113         <sect1>Glossaire
114
115 <p>
116 Cette section liste les termes techniques qui ont un sens spécifique dans le
117 projet Debian. Pour chacune de ces expressions, vous trouverez la traduction
118 française utilisée dans ce manuel, une définition et une référence à la section
119 du manuel qui traite de ce sujet.
120
121
122 <list>
123         <item><em>Upload</em>&nbsp;: mise à jour, téléchargement (parfois
124         livraison). Opération qui consiste à télécharger un nouveau paquet ou
125         une nouvelle version de paquet dans l'archive Debian (<ref
126         id="upload">).
127
128         <item><em>Non-maintainer upload (NMU)</em>&nbsp;: mise à jour
129         indépendante. Téléchargement d'une nouvelle version de paquet dans
130         l'archive Debian par une personne qui n'est pas officiellement
131         responsable de ce paquet (<ref id="nmu">).
132
133         <item><em>Source NMU</em>&nbsp;: mise à jour indépendante source. Il
134         s'agit d'une mise à jour indépendante pour un paquet source (<ref
135         id="nmu-terms">).
136
137         <item><em>Binary NMU</em>&nbsp;: mise à jour indépendante binaire. Mise
138         à jour indépendante pour un paquet binaire (<ref id="nmu-terms">).
139
140         <item><em>Bug Tracking System (BTS)</em>&nbsp;: système de suivi des
141         bogues. Il s'agit du système utilisé par le projet Debian pour suivre
142         les bogues et leur correction (<ref id="bug-handling">).
143
144         <item><em>Bug submitter</em>&nbsp;: rapporteur du bogue. Personne qui
145         envoie un rapport de bogue au système de suivi des bogues (<ref
146         id="submit-bug">).
147
148         <item><em>Release critical bug</em>&nbsp;: bogue empêchant l'intégration
149         du paquet dans la distribution. Bogues de gravité <em>critique</em>,
150         <em>grave</em> et <em>sérieuse</em>. Ces bogues ne doivent pas
151         apparaître dans une distribution <em>stable</em>. Ils doivent être
152         corrigés ou bien les paquets en cause doivent être supprimés (<ref
153         id="rc-bugs">).
154
155         <item><em>Package Tracking System (PTS)</em>&nbsp;: système de suivi des
156         paquets. Il s'agit du système utilisé par le projet Debian pour suivre
157         les paquets sources des différentes distributions (<ref
158         id="pkg-tracking-system">).
159
160         <item><em>Unstable</em>&nbsp;: nom de la distribution en cours
161         de développement. Cette distribution contient les paquets
162         envoyés par les développeurs. Ceux-ci n'étant que des êtres
163         humains, elle est parfois cassée (<ref id="sec-dists">).
164
165         <item><em>Testing</em>&nbsp;: nom de la distribution en test. Cette
166         distribution reçoit les paquets des développeurs qui ont passé une
167         période de deux semaines dans <em>unstable</em> et pour lesquels aucun
168         bogue remettant en cause la distribution (cf. <em>Release critical
169         bug</em>) n'a été découvert. Cette distribution n'a pas été testée en
170         profondeur. Elle est cependant censée être plus stable
171         qu'<em>unstable</em> (<ref id="sec-dists">).
172
173         <item><em>Stable</em>&nbsp;: nom de la distribution stable. Cette
174         distribution a été testée, validée et diffusée (<ref id="sec-dists">).
175
176         <item><em>Debian maintainer</em>&nbsp;: responsable Debian, développeur
177         Debian (parfois mainteneur). Personne qui fait officiellement partie du
178         projet Debian. Elle a accès aux serveurs Debian et participe au
179         développement &mdash;&nbsp;au sens large&nbsp;&mdash; de la distribution (<ref
180         id="developer-duties">). La plupart des responsables font de la mise en
181         paquet, mais il existe d'autres activités telles que la documentation,
182         la gestion du site web, la création des cédéroms, l'administration des
183         serveurs, etc.
184
185         <item><em>Upstream version</em>&nbsp;: version amont. Il s'agit du
186         logiciel tel qu'il est fourni par le responsable amont &mdash; par
187         opposition à la version fournie par la distribution Debian. (Voir <ref
188         id="upstream-coordination">.)
189
190         <item><em>Upstream maintainer</em>&nbsp;: responsable amont ou
191         développeur amont. Personne responsable du développement ou de la
192         maintenance d'un logiciel. En général, le responsable amont n'a rien à
193         voir avec le projet Debian (<ref id="upstream-coordination">).
194
195         <item><em>Debian keyring</em>&nbsp;: porte-clés Debian. Le porte-clés
196         Debian contient les clés publiques de tous les responsables Debian (<ref
197         id="key-maint">).
198
199         <item><em>Work-needing and prospective packages (WNPP)</em>&nbsp;:
200         paquets en souffrance et paquets souhaités. La liste des paquets en
201         souffrance indique les paquets qui n'ont plus de responsable. La liste
202         des paquets souhaités indique les logiciels que des utilisateurs
203         aimeraient bien voir dans la distribution (<ref id="upload">).
204
205         </list>
206
207
208     <chapt id="new-maintainer">Devenir responsable Debian
209         
210       <sect id="getting-started">Pour commencer
211 <p>
212 Vous avez lu toute la documentation, vous avez examiné le <url
213  id="&url-newmaint-guide;" name="guide du nouveau responsable">, vous comprenez
214  l'intérêt de tout ce qui se trouve dans le paquet d'exemple
215  <package>hello</package> et vous vous apprêtez à mettre en paquet votre
216  logiciel préféré. Comment devenir responsable Debian et intégrer votre travail
217  au projet&nbsp;?
218 <p>
219 Si vous ne l'avez pas encore fait, commencez par vous inscrire à la
220  liste &email-debian-devel;. Pour cela, envoyez un courrier à l'adresse
221  &email-debian-devel-req; avec le mot <tt>subscribe</tt> dans la ligne
222  <em>Objet</em><footnote><p><em>Subject</em> en anglais</footnote> de votre
223  message. En cas de problème, contactez l'administrateur de la liste
224  &email-listmaster;. Vous trouverez plus d'informations dans la section <ref
225  id="mailing-lists">. &email-debian-devel-announce; est une autre liste
226  incontournable pour qui veut suivre les développements de Debian.
227 <p>
228 Vous suivrez les discussions de cette liste (sans poster) pendant quelque temps
229  avant de coder quoi que ce soit et vous informerez la liste de votre intention
230  de travailler sur quelque chose pour éviter de dupliquer le travail d'un autre.
231 <p>
232 Une autre liste intéressante est &email-debian-mentors;. Voir la section <ref
233  id="mentors"> pour les détails. Le canal IRC <tt>#debian</tt> pourra aussi être
234  utile&nbsp;; voir <ref id="irc-channels">.
235
236 <p>
237 Quand vous avez choisi la manière dont vous contribuerez au projet
238  &debian-formal;, prenez contact avec les responsables Debian qui travaillent
239  sur des tâches similaires. Ainsi, vous pourrez apprendre auprès de personnes
240  expérimentées. Si, par exemple, vous voulez mettre en paquet des logiciels
241  existants, trouvez-vous un parrain. Un parrain est une personne qui travaillera
242  sur vos paquets avec vous et les téléchargera dans l'archive Debian une fois
243  qu'il sera satisfait de votre mise en paquet. Pour trouver un parrain, envoyez
244  une demande de parrainage à la liste &email-debian-mentors; en vous présentant
245  et en décrivant votre paquet (voir <ref id="sponsoring"> et <url
246  id="&url-mentors;"> pour en savoir plus
247  sur le sujet). Si vous préférez porter Debian sur une architecture ou un noyau
248  alternatif, abonnez-vous aux listes dédiées au portage et demandez-y comment
249  démarrer. Finalement, si vous êtes intéressé par la documentation ou
250  l'assurance qualité (QA), vous pouvez contacter les responsables qui
251  travaillent déjà sur ces tâches et proposer des correctifs et des
252  améliorations.
253  
254
255       <sect id="registering">S'enregistrer comme responsable Debian
256 <p>
257 Avant de décider de devenir responsable Debian, il vous faudra lire toute la
258  documentation disponible dans le <url id="&url-newmaint;" name="coin du nouveau
259  responsable">. Elle décrit toutes les étapes préparatoires qu'il vous faudra
260  franchir avant de déposer votre candidature.
261
262 Par exemple, avant d'être candidat, il vous faudra lire le <url
263  id="&url-social-contract;" name="contrat social Debian">. Devenir responsable
264  Debian implique que vous adhériez à ce contrat social et que vous vous engagiez
265  à le soutenir&nbsp;; il est très important que les responsables soient en
266  accord avec les principes fondamentaux qui animent le projet &debian-formal;.
267  Lire le <url id="&url-gnu-manifesto;" name="Manifeste GNU"> est aussi une bonne
268  idée.
269 <p>
270 Le processus d'enregistrement a pour but de vérifier votre identité, vos
271  intentions et vos compétences. Le nombre de personnes travaillant pour
272  &debian-formal; a atteint &number-of-maintainers; et notre système est utilisé
273  dans plusieurs endroits très importants&nbsp;: nous devons rester vigilants
274  pour éviter un acte malveillant. C'est pourquoi nous contrôlons les nouveaux
275  responsables avant de leur donner un compte sur nos serveurs et de les autoriser à
276  ajouter des paquets dans l'archive.
277 <p>
278 Pour devenir responsable, il faudra montrer que vous pouvez faire du bon travail
279  et que vous serez un bon contributeur. Pour cela, vous pourrez proposer des correctifs
280  par le système de suivi des bogues (BTS) ou maintenir un paquet parrainé
281  pendant un temps. Nous attendons aussi des contributeurs qu'ils soient
282  intéressés par le projet dans son ensemble et pas uniquement par leurs propres
283  paquets. Si vous pouvez aider d'autres responsables en fournissant des
284  informations sur un bogue ou même avec un correctif, faites-le&nbsp;!
285 <p>
286 Pour votre candidature, vous devrez être familiarisé avec la philosophie du
287  projet Debian et avec sa documentation technique. Il vous faudra aussi une clé
288  GnuPG signée par un responsable Debian. Si votre clé GnuPG n'est pas encore
289  signée, vous devriez essayer de rencontrer un responsable Debian pour le faire.
290  La <url id="&url-gpg-coord;" name="page de coordination des signatures de clé
291  GnuPG"> devrait vous aider à trouver un responsable Debian près de chez vous.
292  (Si vous ne trouvez pas de responsable près de chez vous, il existe un second
293  moyen pour valider votre identité. Vous pouvez envoyer une photo d'identité
294  signée avec votre clé GnuPG. Privilégiez tout de même la clé GnuPG signée pour
295  valider une identité. Reportez-vous à la <url id="&url-newmaint-id;" name="page
296  d'identification"> pour en savoir plus sur ces deux options).
297
298 <p>
299 Si vous n'avez pas de clé OpenPGP, créez-la. Tout responsable a besoin d'une clé
300  OpenPGP pour signer et vérifier les mises à jour de paquets. Vous lirez la
301  documentation du logiciel de cryptographie que vous utiliserez car elle
302  contient des informations indispensables pour la sécurité de votre clé. Les
303  défaillances de sécurité sont bien plus souvent dues à des erreurs humaines
304  qu'à des problèmes logiciels ou à des techniques d'espionnage avancées. Voir
305  <ref id="key-maint"> pour plus d'informations sur la gestion de votre clé
306  publique.
307 <p>
308 Debian utilise <prgn>GNU Privacy Guard</prgn> (paquet <package>gnupg</package>
309  version 1 ou supérieure) comme standard de base. Vous pouvez aussi utiliser une
310  autre implémentation d'OpenPGP. OpenPGP est un standard ouvert basé sur la <url
311  id="&url-rfc2440;" name="RFC 2440">.
312 <p>
313 <!-- FIXME: DSS is not exactly equivalent to DSA, is it? -->
314 L'algorithme à clé publique recommandé pour les développements Debian est DSA
315  (parfois appelé «&nbsp;DSS&nbsp;» ou «&nbsp;DH\ElGamal&nbsp;»). Vous pouvez
316  aussi utiliser d'autres types de clés. La longueur de votre clé doit être au
317  minimum de 1024 bits&nbsp;; il n'y a pas de raison d'utiliser une clé plus
318  courte et le faire serait beaucoup moins sûr. Votre clé doit être signée avec
319  votre propre identifiant&nbsp;; cela évite les falsifications. <prgn>GNU
320  Privacy Guard</prgn> le fait automatiquement.
321 <p>
322 Si votre clé publique n'est pas sur un serveur public tel que &pgp-keyserv;,
323  reportez-vous à la documentation disponible localement dans &file-keyservs;.
324  Cette documentation explique comment mettre votre clé publique sur un serveur.
325  L'équipe <em>New maintainer</em> mettra votre clé publique sur les serveurs de
326  clés si elle n'y est pas déjà.
327 <p>
328 Certains pays limitent l'usage des logiciels de cryptographie. Cela ne devrait
329  cependant pas avoir d'impact sur l'activité d'un responsable de paquet car il
330  peut être tout à fait légal d'utiliser des logiciels de cryptographie pour
331  l'authentification plutôt que pour le chiffrement. &debian-formal; ne nécessite
332  en aucune façon l'utilisation de chiffrement. Si vous vivez dans un pays où
333  l'utilisation de la cryptographie pour authentification est interdite,
334  contactez-nous pour que nous prenions des dispositions particulières.
335 <p>
336 Pour faire acte de candidature, il vous faut un responsable Debian qui vérifiera
337  votre candidature (un <em>avocat</em>). Après avoir contribué au projet Debian
338  pendant un temps, quand vous choisissez de devenir un responsable Debian
339  officiel, un responsable déjà enregistré avec qui vous aurez travaillé dans les
340  derniers mois devra exprimer que, d'après lui, vous pouvez contribuer avec
341  succès au projet Debian.
342 <p>
343 Quand vous avez trouvez un <em>avocat</em>, quand votre clé GnuPG est signée et
344  quand vous avez déjà contribué au projet, vous êtes prêt à faire
345  acte de candidature. Il vous suffit pour cela de vous enregistrer sur notre
346  <url id="&url-newmaint-apply;" name="page de candidature">. Ensuite, votre
347  avocat devra confirmer votre candidature. Quand il aura accompli cette tâche,
348  un responsable de candidature<footnote><p>Application manager</footnote> sera
349  désigné pour vous accompagner dans le processus d'enregistrement. Vous pouvez
350  toujours consulter le <url id="&url-newmaint-db;" name="tableau de bord des
351  candidatures"> pour connaître l'état de votre candidature.
352 <p>
353 Pour en savoir plus, consultez le <url id="&url-newmaint;" name="coin des
354  nouveaux responsables"> sur le site Debian. Assurez-vous de bien connaître les
355  étapes nécessaires au processus d'enregistrement avant de vous porter candidat.
356  Vous gagnerez beaucoup de temps si vous êtes bien préparé.
357
358
359       <sect id="mentors">Mentors et parrains Debian
360 <p>
361 La liste de diffusion &email-debian-mentors; a été créée pour les responsables
362  débutants qui cherchent de l'aide pour leur première création de paquet ainsi
363  que pour des problèmes spécifiques aux développeurs. Tout responsable débutant
364  est invité à s'y inscrire (voir <ref id="mailing-lists"> pour plus de détails).
365 <p>
366 Ceux qui préfèrent une aide personnalisée (via une correspondance privée)
367  doivent aussi poster dans cette liste, un développeur expérimenté se portera
368  volontaire pour les aider.
369 <p>
370 Si vos paquets sont prêts à être intégrés mais que vous attendiez le
371  résultat de votre candidature, vous pouvez chercher un parrain qui téléchargera
372  les paquets à votre place. Les parrains sont des responsables Debian officiels
373  volontaires pour examiner et télécharger vos paquets. Vous pouvez
374  demander un parrainage à l'adresse <url id="&url-sponsors;">. Veuillez tout
375  d'abord lire la FAQ non officielle de debian-mentors à <url id="&url-mentors;">.
376 <p>
377 Si vous désirez être mentor ou parrain, reportez-vous à <ref id="newmaint">.
378
379
380     <chapt id="developer-duties">Les charges du responsable Debian
381
382       <sect id="user-maint">Mise à jour de vos références Debian
383 <p>
384 Il existe une base de données LDAP contenant des informations concernant les
385 développeurs Debian à <url id="&url-debian-db;">. Vous devriez y entrer vos
386 informations et les mettre à jour quand elles changent. Le plus important est de
387 vous assurer que l'adresse vers laquelle est redirigée votre adresse debian.org
388 est toujours à jour, de même que l'adresse à laquelle vous recevez votre
389 abonnement à debian-private si vous choisissez d'être abonné à cette liste.
390 <p>
391 Pour plus d'informations à propos de cette base de données, veuillez consulter
392 <ref id="devel-db">.
393
394       <sect id="key-maint">Gérer votre clé publique
395 <p>
396 Soyez très vigilant en utilisant votre clé privée. Ne la placez pas sur un
397  serveur public ou sur des machines multi-utilisateurs telles que les serveurs
398  Debian (voir <ref id="server-machines">). Sauvegardez vos clés et gardez-en une
399  copie hors connexion. Lisez la documentation fournie avec votre logiciel et la
400  <url id="&url-pgp-faq;" name="FAQ PGP">.
401 <p>
402 Vous devez vous assurer que non seulement votre clé est à l'abri des vols, mais
403  également à l'abri d'une perte. Générez et faites une copie (et également sur
404  papier) de votre certificat de révocation&nbsp;; il est nécessaire si votre clé
405  est perdue.
406 <p>
407 Si vous ajoutez des signatures ou des identifiants à votre clé publique, vous
408  pouvez mettre à jour le porte-clés Debian en envoyant votre clé publique à
409  <tt>&keyserver-host;</tt>.
410 <p>
411 Si vous voulez ajouter une nouvelle clé ou supprimer une ancienne clé, vous
412 devez faire signer la nouvelle clé par un autre développeur. Après cela, un
413 courriel signé par cet autre développeur listant votre nom de compte, les
414 identifiants de clé («&nbsp;keyids&nbsp;») de l'ancienne clé et de la nouvelle
415 et la raison doivent être envoyés à &email-debian-keyring;. Si l'ancienne clé
416 est compromise ou invalide, vous devez également ajouter le certification de
417 révocation. S'il n'y pas de vraie raison pour une nouvelle clé, les responsables
418 du trousseau de clés ne l'accepteront que si elle est plus sure et connectée à
419 l'ancienne clé.
420 <p>
421 Les mêmes routines d'extraction de clé décrites dans <ref id="registering"> s'appliquent.
422 <p>
423 Vous pouvez trouver une présentation approfondie de la gestion de clé Debian
424  dans la documentation du paquet <package>debian-keyring</package>.
425
426        <sect id="voting">Voter
427 <p>
428 Bien que Debian ne soit pas vraiment une démocratie, nous disposons d'un
429 processus démocratique pour élire nos chefs et pour approuver les résolutions
430 générales. Ces procédures sont définies par la <url id="&url-constitution;"
431 name="charte Debian">.
432 <p>
433 En dehors de l'élection annuelle du chef, les votes ne se tiennent pas
434 régulièrement et ils ne sont pas entrepris à la légère. Chaque proposition est
435 tout d'abord discutée sur la liste de diffusion &email-debian-vote; et elle a
436 besoin de plusieurs approbations avant que le secrétaire du projet n'entame la
437 procédure de vote.
438 <p>
439 Vous n'avez pas besoin de suivre les discussions précédant le vote car le
440 secrétaire enverra plusieurs appels au vote sur la liste
441 &email-debian-devel-announce; (et tous les développeurs devraient être inscrits
442 à cette liste). La démocratie ne fonctionne pas si les personnes ne prennent pas
443 part au vote, c'est pourquoi nous encourageons tous les développeurs à voter. Le
444 vote est conduit par messages signés ou chiffrés par GPG.
445
446 <p>
447 La liste de toutes les propositions (passées et présentes) est disponible à la
448  page <url id="&url-vote;" name="Informations sur les votes Debian">, ainsi que
449  des informations complémentaires sur la procédure à suivre pour effectuer une
450  proposition, la soutenir et voter pour elle.
451
452       <sect id="inform-vacation">Prendre des vacances courtoisement
453 <p>
454 Il est courant pour les développeurs de s'absenter, que ce
455 soit pour des vacances prévues ou parce qu'ils sont submergés de travail. La
456 chose importante à noter est que les autres développeurs ont besoin de savoir
457 que vous êtes en vacances pour qu'ils puissent agir en conséquence si un
458 problème se produit pendant vos vacances.
459 <p>
460 Habituellement, cela veut dire que les autres développeurs peuvent faire des NMU
461 (voir <ref id="nmu">) sur votre paquet si un gros problème (bogues empêchant 
462 l'intégration dans la distribution, mise à jour de sécurité, etc.) se produit pendant que vous êtes en
463 vacances. Parfois, ce  n'est pas très important, mais il est de
464 toute façon approprié d'indiquer aux autres que vous n'êtes pas disponible.
465 <p>
466 Il y a deux choses à faire pour informer les autres développeurs.
467 Premièrement, envoyez un courrier électronique à &email-debian-private; en
468 commençant le sujet de votre message par «&nbsp;[VAC]&nbsp;»<footnote>Ainsi, le
469 message peut être facilement filtré par les personnes qui ne veulent pas lire
470 ces annonces de vacances.</footnote> et donnez la période de vos
471 vacances. Vous pouvez également donner quelques instructions pour
472 indiquer comment agir si un problème survenait.
473 <p>
474 L'autre chose à faire est de vous signaler comme «&nbsp;en
475  vacances&nbsp;»<footnote><p><em>on vacation</em> en anglais</footnote> dans la
476  <qref id="devel-db">base de données Debian LDAP</qref> (l'accès à cette
477  information est réservé aux développeurs). N'oubliez pas de retirer votre
478  indicateur «&nbsp;en vacances&nbsp;» lorsque celles-ci sont terminées&nbsp;!
479
480       <sect id="upstream-coordination">Coordination avec les développeurs amont
481 <p>
482 Une grande part de votre travail de responsable Debian sera de rester en contact
483  avec les développeurs amont. Parfois, les utilisateurs établissent des
484  rapports de bogue qui ne sont pas spécifiques à Debian. Vous devez transmettre
485  ces rapports de bogue aux développeurs amont pour qu'ils soient corrigés dans
486  les prochaines versions.
487 <p>
488 Bien qu'il ne soit pas de votre responsabilité de corriger les
489  bogues non spécifiques à Debian, vous pouvez le faire si vous en êtes capable.
490  Quand vous faites de telles corrections, assurez-vous de les envoyer
491  également au développeur amont. Les utilisateurs et responsables
492  Debian proposent souvent des correctifs pour corriger des bogues amont, il
493  vous faudra alors évaluer ce correctif puis le transmettre aux développeurs
494  amont.
495 <p>
496 Si vous avez besoin de modifier les sources d'un logiciel pour fabriquer un
497  paquet conforme à la charte Debian, alors vous devriez proposer un correctif
498  aux développeurs amont pour qu'il soit inclus dans leur version. Ainsi, vous
499  n'aurez plus besoin de modifier les sources lors des mises à jour amont
500  suivantes. Quels que soient les changements dont vous avez besoin, il faut
501  toujours essayer de rester dans la lignée des sources amont.
502
503       <sect id="rc-bugs">Comment gérer les bogues empêchant l'intégration du
504       paquet dans la distribution&nbsp;?
505 <p>
506 Habituellement, vous devriez traiter les rapports de bogue sur vos paquets tel
507  que cela est décrit dans <ref id="bug-handling">. Cependant, il y a une
508  catégorie spéciale de bogues qui nécessite particulièrement votre
509  attention&nbsp;: les bogues empêchant l'intégration du paquet dans la
510  distribution<footnote>Traduction de l'anglais <em>Release-critical bug (RC
511  Bugs)</em></footnote>. Tous les rapports de bogue de gravité <em>critique</em>,
512  <em>grave</em> et <em>sérieuse</em><footnote>Respectivement <em>critical</em>,
513  <em>grave</em> et <em>serious</em> en anglais</footnote> sont considérés comme
514  ayant un impact sur la présence du paquet dans la prochaine version stable de
515  Debian. Ces bogues peuvent retarder la diffusion d'une distribution Debian
516  ou peuvent justifier la suppression d'un paquet d'une distribution gelée.
517  C'est pourquoi ces bogues doivent être corrigés au plus vite.
518 <p>
519 Les développeurs faisant partie de l'équipe d'<url id="&url-debian-qa;"
520  name="assurance qualité Debian"> surveillent ces bogues et essaient de vous
521  aider chaque fois qu'ils le peuvent. Si vous ne pouvez pas corriger un bogue de
522  ce type dans les deux semaines, vous devriez soit demander de l'aide en
523  envoyant un courrier à l'équipe d'assurance qualité (<em>QA group</em>) à
524  &email-debian-qa;, soit expliquer vos difficultés et présenter un plan pour
525  corriger le problème en répondant au rapport de bogue concerné. Si rien n'est
526  fait, des personnes de l'équipe d'assurance qualité pourraient chercher à
527  corriger votre paquet (voir <ref id="nmu">) après avoir tenté de vous contacter
528  (ils pourraient attendre moins longtemps que d'habitude pour faire leur mise à
529  jour s'il n'y a pas trace d'activité récente de votre part dans le système de
530  suivi des bogues).
531
532
533       <sect>Démissionner
534 <p>
535 Si vous choisissez de quitter le projet Debian, procédez comme suit&nbsp;:
536 <enumlist compact="compact">
537   <item><p>abandonnez tous vos paquets comme décrit dans <ref
538         id="orphaning">&nbsp;;</item>
539   <item><p>envoyez un courrier électronique à &email-debian-private; indiquant
540         pourquoi vous quittez le projet&nbsp;;</item>
541   <item><p>signalez aux responsables du porte-clés Debian que vous quittez le
542         projet en écrivant à &email-debian-keyring;.</item>
543 </enumlist>
544
545
546
547    <chapt id="resources">Ressources pour le responsable Debian
548 <p>
549 Dans ce chapitre, vous trouverez une brève description des listes de diffusion,
550  des machines Debian qui seront à votre disposition en tant que responsable
551  Debian ainsi que toutes les autres ressources à votre disposition pour vous
552  aider dans votre travail de responsable.
553
554       <sect id="mailing-lists">Les listes de diffusion
555 <p>
556 Une grande partie des discussions entre les développeurs Debian (et les
557 utilisateurs) est gérée par un vaste éventail de listes de diffusion que nous
558 hébergeons à <tt><url id="http://&lists-host;/" name="&lists-host;"></tt>.
559 Pour en savoir plus sur comment s'abonner ou se désabonner, comment envoyer un
560 message et comment ne pas en envoyer, comment retrouver d'anciens messages et
561 comment les rechercher, comment contacter les responsables des listes et pour
562 savoir d'autres informations sur les listes de diffusion, veuillez lire <url
563 id="&url-debian-lists;">. Cette section ne couvrira que les aspects des listes
564 de diffusion qui ont un intérêt particulier pour les développeurs.
565
566       <sect1 id="mailing-lists-rules">Règles de base d'utilisation
567 <p>
568 Lorsque vous répondez sur une liste de diffusion, veuillez ne pas envoyer de
569 copie (<tt>CC</tt>) à l'auteur d'origine sauf s'il le demande explicitement.
570 Toute personne envoyant un message à une liste de diffusion devrait la suivre
571 pour voir les réponses.
572 <p>
573 Le multi-postage (cross-posting) (envoyer le même message à plusieurs listes)
574 est découragé. Comme toujours sur le net, veuillez réduire la citation des
575 articles auxquels vous répondez. En général, veuillez adhérez aux conventions
576 usuelles d'envoi de messages.
577 <p>
578 Veuillez lire le <url name="code de conduite"
579 id="&url-debian-lists;#codeofconduct"> pour plus d'informations.
580
581         <sect1 id="core-devel-mailing-lists">Principales listes pour les
582         responsables
583 <p>
584 Les principales listes de diffusion de Debian que les développeurs
585  devraient suivre sont&nbsp;:
586 <list>
587 <item>&email-debian-devel-announce;, utilisée pour les annonces importantes
588       faites aux responsables. Tous les responsables Debian sont censés être
589       inscrits à cette liste,</item>
590 <item>&email-debian-devel;, utilisée pour discuter de diverses questions
591       techniques relatives au développement,</item>
592 <item>&email-debian-policy; où l'on discute et vote les modifications de la
593       charte Debian,</item>
594 <item>&email-debian-project;, utilisée pour discuter de questions non
595       techniques.</item>
596 </list>
597 <p>
598 Il existe d'autres listes de diffusion spécialisées dans différents thèmes.
599  Reportez-vous à la page <url id="http://&lists-host;/"> pour en obtenir
600  la liste complète.
601
602         <sect1 id="mailing-lists-special">Listes spéciales
603 <p>
604 &email-debian-private; est une liste de diffusion destinée aux discussions
605  privées entre développeurs Debian. Elle doit être utilisée pour tout message
606  qui ne doit pas être publié, quelle qu'en soit la raison. C'est une liste à
607  faible trafic et les utilisateurs sont priés de ne l'utiliser qu'en cas de
608  réelle nécessité. De plus, il ne faut <em>jamais</em> faire suivre un courrier
609  de cette liste à qui que ce soit. Pour des raisons évidentes, les archives de
610  cette liste ne sont pas disponibles sur la toile. Vous pouvez les consulter en
611  visitant le répertoire <file>~debian/archive/debian-private</file> avec votre
612  compte sur <tt>lists.debian.org</tt>.
613 <p>
614 &email-debian-email; est une liste de diffusion fourre-tout. Elle est utilisée
615  pour les correspondances relatives à Debian qu'il serait utile d'archiver,
616  telles que des échanges avec les auteurs amont à propos de licences, de bogues
617  ou encore des discussions sur le projet avec d'autres personnes.
618
619        <sect1 id="mailing-lists-new">Demander une nouvelle liste relative au développement
620 <p>
621 Avant de demander un liste de diffusion liée au développement d'un paquet (ou
622 d'un petit groupe de paquets liés), veuillez considérer si l'utilisation d'un
623 alias (via un fichier .forward-aliasname sur master.debian.org, ce qui se
624 traduit en une adresse raisonnablement agréable
625 <var>you-aliasname@debian.org</var>) ou une liste de diffusion auto-gérée sur
626 <qref id="alioth">Alioth</qref> serait plus appropriée.
627 <p>
628 Si vous décidez qu'une liste de diffusion standard sur lists.debian.org est
629 vraiment ce que vous voulez, lancez-vous et faites une demande en suivant <url
630 name="le guide" id="&url-debian-lists-new;">.
631
632
633       <sect id="irc-channels">Canaux IRC
634 <p>
635 Plusieurs canaux IRC sont dédiés au développement Debian. Ils sont
636  principalement hébergés sur le réseau <url id="&url-openprojects;"
637  name="freenode"> (anciennement connu sous le nom de Open Projects Network).
638  L'entrée DNS <tt>irc.debian.org</tt> est simplement un alias vers
639  <tt>irc.freenode.net</tt>.
640 <p>
641 Le principal canal pour Debian est <em>#debian</em>. Il s'agit d'un
642 canal important, généraliste, où les utilisateurs peuvent trouver des nouvelles
643  récentes dans le sujet et qui est administré par des robots. <em>#debian</em>
644  est destiné aux anglophones&nbsp;; il existe également <em>#debian.de</em>,
645  <em>#debian-fr</em>, <em>#debian-br</em> et d'autres canaux avec des noms
646  semblables pour les personnes parlant d'autres langues.
647 <p>
648 Le canal principal pour le développement Debian est <em>#debian-devel</em>.
649  C'est un canal très actif avec habituellement plus de 150 personnes connectées
650  en permanence. C'est un canal pour les personnes qui travaillent sur Debian, ce
651  n'est pas un canal d'aide (il existe <em>#debian</em> pour cela). Il est
652  cependant ouvert à tous ceux qui veulent écouter (et apprendre). Le sujet est
653  toujours rempli d'informations intéressantes.
654 <p>
655 Comme <em>#debian-devel</em> est un canal ouvert, vous ne devriez pas y parler
656  de problèmes discutés sur &email-debian-private;. Il existe un canal protégé
657  par clé <em>#debian-private</em> dans ce but. La clé est disponible dans les
658  archives de debian-private à
659  <file>master.debian.org:&file-debian-private-archive;</file>, effectuez
660  simplement un <prgn>zgrep</prgn> avec <em>#debian-private</em> dans tous les
661  fichiers.
662 <p>
663 Il existe d'autres canaux dédiés à des sujets spécifiques. <em>#debian-bugs</em>
664  est utilisé pour la coordination des <em>chasses aux bogues</em>.
665  <em>#debian-boot</em> est utilisé pour la coordination du travail sur les
666  disquettes de démarrage (i.e., l'installateur).
667 <!-- FIXME: is boot-floppies an anachronism, or still the channel name? -->
668 <em>#debian-doc</em> est utilisé
669  occasionnellement pour travailler sur la documentation comme celle que vous
670  lisez actuellement. D'autres canaux sont dédiés à une architecture ou un
671  ensemble de paquets&nbsp;: <em>#debian-bsd</em>, <em>#debian-kde</em>,
672  <em>#debian-jr</em>, <em>#debian-edu</em>, <em>#debian-sf</em> (paquet
673  SourceForge), <em>#debian-oo</em> (paquet OpenOffice), etc.
674 <p>
675 Certains canaux pour développeurs non anglophones existent, par exemple,
676  <em>#debian-devel-fr</em> pour les francophones intéressés dans le
677  développement de Debian.
678 <p>
679 Il existe également des canaux dédiés pour Debian sur d'autres réseaux IRC,
680  notamment sur le réseau IRC <url name="Open and free technology community
681  (OFTC)" id="http://www.oftc.net/">.
682
683
684       <sect id="doc-rsrcs">Documentation
685 <p>
686 Ce document contient beaucoup d'informations très utiles aux développeurs
687  Debian, mais il ne peut pas tout contenir. La plupart des autres documents
688  intéressants sont référencés dans le <url id="&url-devel-docs;" name="coin
689  du développeur Debian">. Prenez le temps de parcourir tous les liens, vous
690  apprendrez encore beaucoup de choses.
691
692
693       <sect id="server-machines">Les serveurs Debian
694 <p>
695 Debian possède plusieurs ordinateurs employés comme serveurs, dont la plupart hébergent
696  les fonctions critiques du projet Debian. La plupart des machines sont
697  utilisées pour des activités de portage et elles ont toutes un accès permanent
698  à Internet.
699 <p>
700 La plupart des machines peuvent être utilisées par les développeurs
701  tant qu'ils respectent les règles définies dans la <url
702  id="&url-dmup;" name="charte d'utilisation des machines Debian">.
703 <p>
704 Dans l'ensemble, vous pouvez faire usage de ces machines pour des buts relatifs
705  à Debian comme vous l'entendez. Veuillez cependant être gentil avec les
706  administrateurs système et ne pas utiliser de grandes quantités d'espace
707  disque, de ressource réseau ou CPU sans obtenir auparavant l'accord des
708  administrateurs. Habituellement, ces machines sont administrées par des
709  volontaires.
710 <p>
711 Veuillez prendre soin de votre mot de passe Debian ainsi que des clés SSH
712  installées sur les machines Debian. Évitez les méthodes de connexion ou d'envoi
713  de données qui envoient les mots de passe en clair par l'Internet comme telnet,
714  FTP, POP, etc.
715 <p>
716 Veuillez ne pas déposer de données non relatives à Debian sur les serveurs
717 Debian à moins que vous n'ayez préalablement obtenu la permission de le faire.
718 <p>
719 La liste actuelle des machines Debian est disponible à <url
720  id="&url-devel-machines;">. Cette page web contient les noms des machines, les
721  informations de contact, les informations sur qui peut s'y connecter, les clés
722  SSH, etc.
723 <p>
724 Si vous avez un problème en utilisant un serveur Debian et si vous estimez que
725  les administrateurs système devraient en être avertis, l'équipe des
726  administrateurs système peut être jointe à
727  <email>debian-admin@lists.debian.org</email>.
728 <p>
729 Si votre problème est lié à un certain service ou n'est pas lié au système
730  (paquet à supprimer de l'archive ou suggestion pour le site web par exemple),
731  il vous faudra en général ouvrir un rapport de bogue sur un
732  «&nbsp;pseudo-paquet&nbsp;». Reportez-vous à la section <ref id="submit-bug">
733  pour connaître la procédure à suivre.
734         <p>
735 Certains des serveurs de base sont à accès restreint, mais les informations de
736 ceux-ci sont fournies par d'autres serveurs miroirs.
737
738       <sect1 id="servers-bugs">Le serveur pour les rapports de bogues
739 <p>
740 <tt>&bugs-host;</tt> est le serveur maître du système de suivi des bogues
741  (BTS<footnote><p>Système de suivi des bogues se dit <em>Bug Tracking
742  System</em> en anglais</footnote>).
743 <p>
744 Ce serveur est à accès restreint&nbsp;; un miroir est disponible sur <tt>merkel</tt>.
745 <p>
746  Si vous envisagez de manipuler les rapports
747  de bogue ou d'en faire une analyse statistique, ce sera le bon endroit pour le
748  faire. Informez la liste &email-debian-devel; de votre intention avant
749  d'implémenter quoi que ce soit afin d'éviter un travail en double ou un
750  gaspillage de temps machine.
751
752       <sect1 id="servers-ftp-master">Le serveur ftp-master
753 <p>
754 Le serveur <tt>ftp-master.debian.org</tt> est le serveur maître de l'archive
755  Debian (exception faite des paquets non-US). En général, les mises à jour de
756  paquets se font sur ce serveur. Reportez-vous à la section <ref id="upload">
757  pour en savoir plus.
758 <p>
759 Ce serveur est à accès restreint&nbsp;; un miroir est disponible sur <tt>merkel</tt>.
760 <p>
761 Les problèmes avec l'archive Debian FTP doivent généralement être rapportés
762  comme bogues sur le pseudo-paquet <package>ftp.debian.org</package> ou par
763  courrier électronique à &email-ftpmaster;&nbsp;; reportez-vous à la section
764  <ref id="archive-manip"> pour connaître la procédure à suivre.
765
766       <sect1 id="servers-non-us">Le serveur non-US
767 <p>
768 Le serveur non-US <tt>non-us.debian.org</tt> est le serveur maître de la partie
769  non-US de l'archive Debian. Si vous avez besoin d'envoyer un paquet dans l'une
770  des sections non-US, envoyez-le vers ce serveur. Reportez-vous à la section
771  <ref id="upload-non-us"> pour en savoir plus.
772 <p>
773 Les problèmes avec l'archive de paquets non-US doivent généralement être
774  rapportés comme bogues sur le pseudo-paquet <package>nonus.debian.org</package>
775  (remarquez l'absence de trait d'union entre "non" et "us" dans le nom du
776  pseudo-paquet &mdash;&nbsp;c'est dû à la compatibilité descendante). Rappelez-vous
777  de vérifier si quelqu'un n'aurait pas déjà rempli un rapport de bogue
778  concernant le problème sur le <url id="http://&bugs-host;/nonus.debian.org"
779  name="système de suivi des bogues">.
780
781       <sect1 id="servers-www">Le serveur www-master
782 <p>
783 Le serveur web principal est <tt>www-master.debian.org</tt>. Il héberge les
784  pages web officielles, la façade de Debian pour la plupart des débutants.
785 <p>
786 Si vous rencontrez un problème avec un serveur web Debian, vous devez
787  généralement envoyer un rapport de bogue sur le pseudo-paquet
788  <package>www.debian.org</package>. Vérifiez d'abord sur le <url
789  id="http://&bugs-host;/www.debian.org" name="système de suivi des bogues">
790  que personne ne l'a déjà rapporté avant vous.
791
792       <sect1 id="servers-people">Le serveur web people
793 <p>
794 <tt>people.debian.org</tt> est le serveur utilisé par les développeurs pour 
795 leurs pages concernant Debian.
796 <p>
797 Si vous avez des informations spécifiques Debian que vous voulez rendre
798  disponibles sur le web, vous pouvez le faire en les plaçant dans le répertoire
799  <file>public_html</file> de votre répertoire personnel sur
800  <tt>people.debian.org</tt>. Elles seront accessibles à l'adresse
801  <tt>http://people.debian.org/~<var>votre-user-id</var>/</tt>.
802 <p>
803 Vous ne devriez utiliser que cet emplacement particulier car il sera sauvegardé
804  alors que sur les autres serveurs, ce ne sera pas le cas.
805 <p>
806 Habituellement, la seule raison pour utiliser un serveur différent est que vous
807  avez besoin de publier des informations soumises aux restrictions d'exportation 
808  américaines, dans ce cas, vous pouvez utiliser l'un des autres serveurs situés
809  en dehors des États-Unis, comme le serveur mentionné ci-dessus
810  <tt>non-us.debian.org</tt>.
811 <p>
812 Veuillez envoyer un courrier à &email-debian-devel; si vous avez une question.
813
814       <sect1 id="servers-cvs">Le serveur CVS
815 <!-- TODO: document svn.debian.org also, arch.debian.org also -->
816 <p>
817 Notre serveur CVS est situé sur <tt>cvs.debian.org</tt>.
818 <p>
819 Si vous avez besoin d'un serveur CVS accessible par tous pour, par exemple,
820  coordonner le travail de plusieurs développeurs sur un paquet, vous pouvez
821  demander un espace CVS sur ce serveur.
822 <p>
823 Le serveur <tt>cvs.debian.org</tt> autorise les accès CVS locaux, les accès en
824  lecture seule pour les connexions client-serveur anonymes et les accès
825  client-serveur complets pour les connexions <prgn>ssh</prgn>. L'espace CVS peut
826  aussi être consulté par la toile à l'adresse <url id="&url-cvsweb;">.
827 <p>
828 Pour obtenir un espace CVS, envoyez une demande à l'adresse &email-debian-admin;
829  en précisant le nom de l'espace, le compte Debian propriétaire du répertoire
830  racine et pourquoi vous en avez besoin.
831
832       <sect1 id="dchroot">Chroots de différentes distributions
833         <p>
834 Sur certaines machines, des chroots de différentes distributions sont
835 disponibles. Vous pouvez les utiliser comme ceci&nbsp;:
836
837 <example>
838 vore% dchroot unstable
839 Executing shell in chroot: /org/vore.debian.org/chroots/user/unstable
840 </example>
841
842 Dans tous les chroots, les répertoires normaux des utilisateurs sont disponibles.
843 Vous pouvez trouver quels chroots sont disponibles à
844 <tt>&url-devel-machines;</tt>.
845
846
847     <sect id="devel-db">La base de données des développeurs
848 <p>
849 La base de données des développeurs à <url id="&url-debian-db;"> est un annuaire
850  LDAP de gestion des informations des développeurs Debian. Vous pouvez utiliser
851  cette ressource pour rechercher la liste des développeurs Debian. Une partie de
852  ces informations est également disponible à travers le service <prgn>finger</prgn> sur les
853  serveurs Debian, essayez <prgn>finger yourlogin@debian.org</prgn> pour voir ce
854  qu'il indique.
855 <p>
856 Les développeurs peuvent <url name="se connecter à la base de données"
857 id="&url-debian-db-login;"> pour modifier différentes informations les
858 concernant, comme&nbsp;:
859 <list>
860         <item>l'adresse de suivi pour leur adresse debian.org,
861         <item>l'abonnement à debian-private,
862         <item>l'état en vacances ou non,
863         <item>des informations personnelles comme les adresse, pays, latitude et
864         longitude de l'endroit où ils vivent pour utilisation dans la <url
865         name="carte mondiale des développeurs Debian" id="&url-worldmap">,
866         numéros de téléphone et de fax, surnom IRC et page web,
867         <item>le mot de passe et le shell préféré sur les machines du projet Debian.
868 </list>
869 <p>
870 La plupart des informations ne sont naturellement pas accessibles publiquement.
871 Pour plus d'informations, veuillez lire la documentation en ligne que vous
872 pouvez trouver à <url id="&url-debian-db-doc;">.
873
874 <p>
875 Les développeurs peuvent également envoyer leurs clés SSH pour qu'elles soient utilisées pour
876  autorisation sur les machines Debian officielles et même ajouter de nouvelles
877  entrées DNS du type *.debian.net. Ces fonctionnalités sont documentées à <url
878  id="&url-debian-db-mail-gw;">.
879
880
881     <sect id="archive">L'archive Debian
882 <p>
883 La distribution &debian-formal; est composée d'un grand nombre de paquets
884  (fichiers <tt>.deb</tt>&nbsp;: actuellement, à peu près &number-of-pkgs;) et de
885  quelques autres fichiers (comme la documentation et des images des disquettes
886  d'installation).
887 <p>
888 Voici un exemple d'arborescence pour une archive Debian complète&nbsp;:
889 <p>
890 &sample-dist-dirtree;
891 <p>
892 Comme vous pouvez le voir, le répertoire racine contient deux répertoires,
893  <file>dists/</file> et <file>pool/</file>. Le second est un ensemble de
894  répertoires où sont stockés les paquets. Ceux-ci sont manipulés grâce à la base
895  de données de l'archive et aux logiciels qui l'accompagnent. Le premier
896  répertoire contient les distributions <em>stable</em>, <em>testing</em> et
897  <em>unstable</em>. Les fichiers <file>Packages</file> et <file>Sources</file>
898  qui se trouvent dans les répertoires de distribution peuvent faire référence à
899  des fichiers du répertoire <file>pool/</file>. Le découpage en sous-répertoires
900  est identique d'un répertoire de distribution à l'autre&nbsp;. Ce que nous
901  exposerons ci-dessous pour la distribution <em>stable</em> est également
902  applicable aux distributions <em>unstable</em> et <em>testing</em>.
903 <p>
904 Le répertoire <file>dists/stable</file> contient trois répertoires nommés
905   <file>main</file>, <file>contrib</file> et <file>non-free</file>.
906 <p>
907 Dans chacune de ces sections, se trouve un répertoire contenant les paquets
908   sources (<file>source/</file>) et un répertoire pour chaque architecture
909   acceptée (<file>binary-i386/</file>, <file>binary-m68k/</file>, etc.).
910 <p>
911 La section <em>main</em> contient d'autres répertoires destinés aux images de
912  disquettes et à plusieurs documents essentiels pour installer la distribution
913  Debian sur une architecture particulière (<file>disk-i386/</file>,
914  <file>disk-m68k/</file>, etc.).
915
916       <sect1 id="archive-sections">Les sections
917 <p>
918 La section <em>main</em> constitue la <strong>distribution &debian-formal;
919  officielle</strong>. Elle est officielle parce qu'elle est entièrement conforme
920  à toutes nos recommandations. Les deux autres sections divergent de ces
921  recommandations à différents degrés, elles <strong>ne</strong> font donc <strong>pas</strong>
922  officiellement partie de &debian-formal;.
923 <p>
924 Chaque paquet de la section <em>main</em> doit être conforme aux <url
925  id="&url-dfsg;" name="directives Debian pour le logiciel
926  libre"><footnote>Debian Free Software Guidelines</footnote> et à toutes les
927  autres recommandations décrites dans <url id="&url-debian-policy;" name="la
928  charte Debian"><footnote>Debian Policy Manual</footnote>. Les
929  DFSG<footnote><em>Debian Free Software Guidelines</em></footnote> constituent
930  notre définition de «&nbsp;logiciel libre&nbsp;». Reportez-vous à la <em>charte
931  Debian</em> pour en savoir plus.
932 <p>
933 Les paquets de la section <em>contrib</em> doivent être conformes aux DFSG, mais
934  ne respectent pas d'autres contraintes. Ils peuvent, par exemple, dépendre de
935  paquets de la section <em>non-free</em>.
936 <p>
937 Les paquets qui ne sont pas conformes aux DFSG sont rangés dans la section
938  <em>non-free</em>. Bien que nous supportions l'usage de ces paquets et qu'ils
939  bénéficient de nos infrastructures (système de suivi des bogues, listes de
940  diffusion, etc.), ces paquets <em>non-free</em> ne font pas partie de la
941  distribution Debian.
942 <p>
943 La <em>charte Debian</em> donne des définitions plus précises pour ces trois
944  sections. Les paragraphes précédents ne constituent qu'une introduction.
945 <p>
946 La séparation de l'archive en trois sections est importante pour toute personne
947  qui désire distribuer Debian, que ce soit par serveur FTP ou sur cédérom. Il
948  suffit de distribuer les sections <em>main</em> et <em>contrib</em> pour éviter
949  tout problème légal. Certains paquets de la section <em>non-free</em>
950  interdisent leur distribution à titre commercial par exemple.
951 <p>
952 D'un autre côté, un distributeur de cédérom pourra facilement vérifier
953  la licence de chacun des paquets de la section <em>non-free</em> et
954  inclure tous les paquets qu'il lui sera autorisé (dans
955  la mesure où cela varie énormément d'un distributeur à l'autre, ce travail ne
956  peut être fait par les développeurs Debian).
957 <p>
958 Notez que le terme «&nbsp;section&nbsp;» est également utilisé pour faire
959  référence aux catégories qui simplifient l'organisation des paquets 
960 disponibles et leur recherche, e.g. <em>admin</em>, <em>net</em>, <em>utils</em> etc. Il
961  fut un temps où ces sections (sous-sections, plutôt) existaient sous la forme
962  de sous-répertoires dans l'archive Debian. Actuellement, elles n'existent plus
963  que dans le champ en-tête «&nbsp;Section&nbsp;» des paquets.
964
965       <sect1>Les architectures
966 <p>
967 À ses débuts, le noyau Linux existait uniquement pour les architectures Intel
968  x86&nbsp;; il en était de même pour Debian. Linux devenant de plus en plus
969  populaire, il a été porté vers d'autres architectures.
970 <p>
971 Le noyau 2.0 existe pour les architectures Intel x86, DEC Alpha, SPARC,
972  Motorola, 680x0 (Atari, Amiga, et Macintosh), MIPS et PowerPC. Le noyau 2.2
973  reconnaît de nouvelles architectures, comme ARM et UltraSPARC. Puisque Linux
974  reconnaît ces architectures, le projet Debian a décidé qu'il devait également les
975  accepter. C'est pourquoi plusieurs portages sont en cours&nbsp;; en fait, il y
976  a aussi des portages vers d'autres noyaux non-Linux. À côté d'<em>i386</em> (notre nom
977  pour Intel x86), nous avons, au moment où j'écris, <em>m68k</em>,
978  <em>alpha</em>, <em>powerpc</em>, <em>sparc</em>, <em>hurd-i386</em>,
979  <em>arm</em>, <em>ia64</em>, <em>hppa</em>, <em>s390</em>, <em>mips</em>,
980  <em>mipsel</em> et <em>sh</em>.
981 <p>
982 &debian-formal; 1.3 est disponible uniquement pour <em>i386</em>. Debian 2.0
983  reconnaît les architectures <em>i386</em> et <em>m68k</em>. Debian 2.1 reconnaît
984  les architectures <em>i386</em>, <em>m68k</em>, <em>alpha</em> et
985  <em>sparc</em>. Debian 2.2 accepte en plus les architectures
986  <em>powerpc</em> et <em>arm</em>. Debian 3.0 a ajouté cinq
987  nouvelles architectures&nbsp;: <em>ia64</em>, <em>hppa</em>, <em>s390</em>,
988  <em>mips</em> et <em>mipsel</em>.
989 <p>
990 Pour chaque portage, vous trouverez des informations destinées aux développeurs
991  et utilisateurs sur la page <url id="&url-debian-ports;" name="Portage
992  Debian">.
993
994       <sect1>Les paquets
995 <p>
996 Il existe deux types de paquets Debian&nbsp;: les paquets sources et les paquets
997  binaires.
998 <p>
999 Les paquets sources sont constitués de deux ou trois fichiers&nbsp;: un fichier
1000  <file>.dsc</file> et soit un fichier <file>.tar.gz</file>, soit un fichier
1001  <file>.orig.tar.gz</file> et un fichier <file>.diff.gz</file>.
1002 <p>
1003 Si un paquet est développé spécifiquement pour le projet Debian et n'est pas
1004  distribué en dehors de Debian, il n'y a qu'un fichier <file>.tar.gz</file> qui
1005  contient les sources du programme. Si un paquet est distribué ailleurs, le
1006  fichier <file>.orig.tar.gz</file> contient ce que l'on appelle <em>code source
1007  amont</em>, c'est-à-dire, le code source distribué par le <em>mainteneur
1008  amont</em> (il s'agit souvent de l'auteur du logiciel). Dans ce cas, le fichier
1009  <file>.diff.gz</file> contient les modifications faites par le responsable
1010  Debian.
1011 <p>
1012 Le fichier <file>.dsc</file> liste tous les fichiers sources avec leurs sommes
1013  de contrôle (<prgn>md5sums</prgn>) et quelques informations supplémentaires
1014  concernant le paquet (responsable, version, etc.).
1015
1016       <sect1>Les distributions
1017 <p>
1018 L'organisation des répertoires présentée précédemment est elle-même englobée par
1019  les <em>répertoires des distributions</em>. Chaque distribution est incluse
1020  dans le répertoire <file>pool</file> à la racine de l'archive Debian.
1021 <p>
1022 Pour résumer, une archive Debian a un répertoire racine sur un serveur FTP. Par
1023  exemple, sur le site miroir <ftpsite>ftp.us.debian.org</ftpsite>, l'archive
1024  Debian se trouve dans <ftppath>/debian</ftppath> ce qui est un emplacement
1025  courant. Un autre emplacement courant est <file>/pub/debian</file>.
1026 <p>
1027 Une distribution est composée de paquets sources et binaires et des
1028  fichiers <file>Sources</file> et <file>Packages</file> correspondants qui
1029  contiennent toutes les méta-informations sur les paquets. Les premiers sont
1030  conservés dans le répertoire <file>pool/</file> tandis que les seconds sont
1031  conservés dans le répertoire <file>dists/</file> de l'archive (pour
1032  compatibilité descendante).
1033
1034         <sect2 id="sec-dists"><em>Stable</em>, <em>testing</em> et
1035         <em>unstable</em>
1036 <p>
1037 Il y a toujours une distribution appelée <em>stable</em> (dans le répertoire
1038  <file>dists/stable</file>), une distribution appelée <em>testing</em> (dans le
1039  répertoire <file>dists/testing</file>) et une distribution appelée
1040  <em>unstable</em> (dans le répertoire <file>dists/unstable</file>). Ceci
1041  reflète le processus de développement du projet Debian.
1042 <p>
1043 Les développements se font sur la distribution
1044  <em>unstable</em><footnote><p><em>unstable</em> signifie
1045  «&nbsp;instable&nbsp;»</footnote> (c'est pourquoi elle est aussi appelée
1046  <em>distribution de développement</em>). Chaque développeur Debian peut
1047  modifier ses paquets à tout moment dans cette distribution. Ainsi son contenu
1048  change tous les jours. Comme aucun effort particulier n'est fait pour s'assurer
1049  que tout fonctionne correctement dans cette distribution, elle est parfois
1050  littéralement «&nbsp;instable&nbsp;».
1051 <p>
1052 La distribution <qref id="testing">«&nbsp;testing&nbsp;»</qref> est générée
1053  automatiquement en prenant les paquets
1054  d'<em>unstable</em> s'ils satisfont à certains critères. Ces critères
1055  garantissent que les paquets de <em>testing</em> sont de bonne qualité. La
1056  mise à jour de <em>testing</em> est lancée chaque jour après que les
1057  nouveaux paquets ont été installés. Voir <ref id="testing">.
1058 <p>
1059 Après une période de développement, quand le responsable de
1060  distribution<footnote><p><em>Release manager</em></footnote> le juge opportun,
1061  la distribution <em>testing</em> est gelée, ce qui signifie que les conditions
1062  à remplir pour qu'un paquet passe d'<em>unstable</em> à <em>testing</em> sont
1063  durcies. Les paquets trop bogués sont supprimés et les seules mises à jours
1064  autorisées concernent les corrections de bogues. Après quelque temps, selon
1065  l'avancement, la distribution entre dans une phase de «&nbsp;gel complet&nbsp;»
1066  où les seules modifications acceptées concernent la procédure d'installation.
1067  Cette phase s'appelle un «&nbsp;cycle de test&nbsp;» et cela peut durer jusqu'à
1068  deux semaines. Il peut y avoir plusieurs cycles de tests avant que le
1069  responsable de distribution ne la déclare prête pour la diffusion. À la fin du
1070  dernier cycle de test, la distribution <em>frozen</em> devient <em>stable</em>,
1071  remplaçant l'ancienne distribution <em>stable</em> qui est enlevée à cette
1072  occasion (elle peut être retrouvée à l'adresse <tt>&archive-host;</tt>).
1073 <p>
1074 Ce cycle de développement est basé sur l'idée que la distribution
1075  <em>unstable</em> devient <em>stable</em> après une période de test
1076  (<em>testing</em>). Une distribution contient inévitablement des bogues, même
1077  si elle est classée stable. C'est pourquoi les distributions stables sont mises
1078  à jour de temps en temps. Les corrections introduites sont testées avec une
1079  grande attention et sont ajoutées une à une à l'archive pour diminuer les
1080  risques d'introduire de nouveaux bogues. Vous pouvez trouver des paquets
1081  proposés pour les mises à jour de <em>stable</em> dans le répertoire
1082  <file>proposed-updates</file>. De temps en temps, les paquets de ce répertoire
1083  qui ne présentent pas de problème sont installés dans la distribution
1084  <em>stable</em> et le numéro de révision de cette distribution est incrémenté
1085  («&nbsp;3.0&nbsp;» devient «&nbsp;3.0r1&nbsp;», «&nbsp;2.0r4&nbsp;» devient
1086  «&nbsp;2.0r5&nbsp;» et ainsi de suite).
1087 <p>
1088 Notez que, pendant la période de gel, les développements continuent sur la
1089  distribution <em>unstable</em> car cette distribution reste en place.
1090
1091     <sect2>
1092         <heading>Informations complémentaires sur la distribution
1093         «&nbsp;testing&nbsp;»</heading>
1094         <p>
1095 Les paquets sont habituellement installés dans la distribution <em>testing</em>
1096 après avoir atteint un certain degré de test dans <em>unstable</em>.
1097         <p>
1098 Pour plus de détails, veuillez consulter les <qref id="testing">informations à
1099 propos de la distribution <em>testing</em></qref>.
1100
1101         <sect2 id="experimental">Experimental
1102 <p>
1103 La distribution <em>experimental</em> est une distribution particulière. Ce n'est
1104    pas une distribution à part entière comme le sont <em>stable</em> et
1105    <em>unstable</em>. Elle est prévue pour servir de plate-forme de
1106    développement pour les projets expérimentaux qui risquent vraiment de
1107    détruire le système ou bien pour des logiciels qui sont vraiment trop
1108    instables pour être inclus dans la distribution <em>unstable</em> (mais pour
1109    lesquels une mise en paquet est justifiée). Les utilisateurs qui téléchargent
1110    et installent des paquets depuis <em>experimental</em> sont prévenus&nbsp;:
1111    on ne peut pas faire confiance à la distribution <em>experimental</em>.
1112 <p>
1113 Voici les lignes de <manref name="sources.list" section="5"> pour
1114    <em>experimental</em>&nbsp;:
1115 <example>
1116 deb http://ftp.<var>xy</var>.debian.org/debian/ ../project/experimental main
1117 deb-src http://ftp.<var>xy</var>.debian.org/debian/ ../project/experimental main
1118 </example>
1119 <p>
1120 Si un logiciel peut causer des dégâts importants, il sera sûrement
1121    préférable de le mettre dans la distribution <em>experimental</em>. Un
1122    système de fichiers compacté expérimental, par exemple, devrait probablement
1123    aller dans <em>experimental</em>.
1124 <p>
1125 Une nouvelle version amont qui ajoute de nouvelles fonctions tout en supprimant
1126    de nombreuses autres ne devra pas être téléchargée dans l'archive Debian,
1127    elle pourra cependant être téléchargée dans <em>experimental</em>. Une
1128    nouvelle version non finalisée d'un logiciel qui utilise une méthode de
1129    configuration complètement différente pourrait aller dans
1130    <em>experimental</em> au gré du responsable. Si vous travaillez sur un cas de
1131    mise à jour complexe ou incompatible, vous pouvez aussi utiliser
1132    <em>experimental</em> comme plate-forme d'intégration et ainsi fournir un
1133    accès aux testeurs.
1134 <p>
1135 Quelques logiciels expérimentaux peuvent cependant aller dans <em>unstable</em>,
1136    avec un avertissement dans la description, mais ce n'est pas recommandé car
1137    les paquets d'<em>unstable</em> se propagent dans <em>testing</em> et
1138    aboutissent dans <em>stable</em>. Vous ne devriez pas avoir peur d'utiliser
1139    <em>experimental</em> car ceci ne cause aucun souci aux ftpmasters, les
1140    paquets expérimentaux sont automatiquement enlevés quand vous envoyez le
1141    paquet dans <em>unstable</em> avec un numéro de version supérieur.
1142 <p>
1143 Un nouveau logiciel qui ne risque pas d'endommager le système ira directement
1144    dans <em>unstable</em>.
1145 <p>
1146 Une solution de rechange à <em>experimental</em> consiste à utiliser vos pages
1147    personnelles sur le serveur <tt>people.debian.org</tt>.
1148 <p>
1149 Veuillez considérer l'utilisation de l'option <tt>-v</tt> de
1150 <prgn>dpkg-buildpackage</prgn> si l'envoi d'un paquet dans <em>unstable</em> ferme
1151 finalement des bogues qui ont d'abord été corrigés dans <em>experimental</em>.
1152
1153 Lors de l'envoi vers <em>unstable</em> d'un paquet contenant des bogues corrigés
1154 dans <em>experimental</em>, veuillez considérer l'utilisation de l'option
1155 <tt>-v</tt> de <prgn>dpkg-buildpackage</prgn> pour qu'ils soient finalement
1156 fermés.
1157
1158       <sect1 id="codenames">Les noms de distribution
1159 <p>
1160 Chaque distribution Debian diffusée a un <em>nom de code</em>&nbsp;: Debian 1.1
1161  s'appelle «&nbsp;buzz&nbsp;»&nbsp;; Debian 1.2, «&nbsp;rex&nbsp;»&nbsp;; Debian
1162  1.3, «&nbsp;bo&nbsp;»&nbsp;; Debian 2.0, «&nbsp;hamm&nbsp;»&nbsp;; Debian 2.1,
1163  «&nbsp;slink&nbsp;»; Debian 2.2, «&nbsp;potato&nbsp;» et Debian 3.0,
1164  «&nbsp;woody&nbsp;». Il y a aussi une pseudo-distribution nommée
1165  «&nbsp;sid&nbsp;», il s'agit de la distribution <em>unstable</em>&nbsp;; comme
1166  les paquets vont d'<em>unstable</em> à <em>testing</em> quand ils approchent
1167  de la stabilité, la distribution «&nbsp;sid&nbsp;» n'est jamais diffusée. En
1168  plus du contenu habituel d'une distribution Debian, «&nbsp;sid&nbsp;» contient
1169  des paquets pour des architectures qui ne sont pas encore officiellement
1170  reconnues ou pour lesquelles la distribution n'a pas encore été diffusée. Ces
1171  architectures seront intégrées ultérieurement à la distribution principale.
1172 <p>
1173 Comme Debian est un projet de développement ouvert (i.e. tout le monde peut
1174  participer et suivre les développements), même les distributions
1175  <em>unstable</em> et <em>testing</em> sont disponibles sur les serveurs HTTP et
1176  FTP de Debian. Si nous avions nommé le répertoire qui contient la prochaine
1177  distribution à diffuser «&nbsp;testing&nbsp;», il aurait fallu changer son nom en
1178  «&nbsp;stable&nbsp;» au moment de la diffusion, ce qui aurait forcé les miroirs
1179  FTP à télécharger à nouveau la distribution complète (qui est plutôt volumineuse).
1180 <p>
1181 D'un autre côté, si une distribution s'appelait <em>Debian-x.y</em> dès le
1182  départ, des personnes pourraient s'imaginer que la distribution Debian
1183  <em>x.y</em> est disponible. (Cela s'est produit par le passé, un distributeur
1184  avait gravé des cédéroms Debian 1.0 en utilisant une version de développement
1185  pré-1.0. C'est pour cette raison que la première version officielle était la
1186  version 1.1 et non la 1.0).
1187 <p>
1188 En conséquence, les noms de répertoire des distributions dans l'archive sont
1189  déterminés par leur nom de code et non par leur statut (exemple&nbsp;:
1190  slink). Ces noms sont identiques pendant la période de développement et une
1191  fois la distribution diffusée&nbsp;; des liens symboliques, qui peuvent être
1192  modifiés facilement, indiquent la distribution stable actuelle. Tout ceci
1193  explique pourquoi les répertoires des distributions sont nommés à partir des
1194  noms de code des distributions alors que <em>stable</em>, <em>testing</em> et
1195  <em>unstable</em> sont des liens symboliques qui pointent vers les répertoires
1196  appropriés.
1197
1198
1199     <sect id="mirrors">Les miroirs Debian
1200         <p>
1201 Les différentes archives de téléchargement et le site web disposent de plusieurs
1202 miroirs pour soulager les serveurs principaux d'une lourde charge. En fait,
1203 certains de ces serveurs ne sont pas publics&nbsp;&mdash; la charge est
1204 répartie sur une première série de serveurs. De cette façon, les
1205 utilisateurs ont toujours accès aux miroirs et s'y habituent, ce qui permet à
1206 Debian de mieux répartir les besoins en bande passante sur plusieurs serveurs et
1207 plusieurs réseaux différents et évitent aux utilisateurs de surcharger
1208 l'emplacement primaire. Notez que, dans cette première série, les serveurs sont aussi à jour
1209 que possible car la mise à jour est déclenchée par les sites maîtres internes.
1210         <p>
1211 Toutes les informations sur les miroirs Debian peuvent être trouvées à <url
1212 id="&url-debian-mirrors;">, y compris une liste des miroirs publics disponibles
1213 FTP/HTTP. Cette page utile inclut également des informations et des outils pour
1214 créer son propre miroir, soit en interne soit pour un accès public.
1215         <p>
1216 Les miroirs sont en général mis en &oelig;uvre par des tiers qui veulent aider
1217  Debian. C'est pourquoi les développeurs n'ont en général pas de compte sur ces
1218  machines.
1219
1220
1221     <sect id="incoming-system">
1222         <heading>Le système Incoming
1223 <p>
1224 Le système Incoming est responsable de la collecte des paquets mis à jour et de
1225  leur installation dans l'archive Debian. Il est constitué d'un ensemble de
1226  répertoires et de scripts qui sont installés à la fois sur
1227  <tt>&ftp-master-host;</tt> et sur <tt>&non-us-host;</tt>.
1228 <p>
1229 Les paquets sont envoyés par tous les responsables Debian dans un répertoire
1230  nommé <file>unchecked</file>. Ce répertoire est parcouru toutes les 15 minutes
1231  par le script <prgn>katie</prgn> qui vérifie l'intégrité des paquets envoyés et
1232  leurs signatures de chiffrage. Si le paquet est considéré comme prêt à être
1233  installé, il est déplacé dans le répertoire <file>accepted</file>. S'il s'agit
1234  du premier envoi du paquet, il est déplacé dans le répertoire <file>new</file>
1235  où il attend l'approbation des ftpmasters. Si le paquet contient des fichiers
1236  devant être installés <em>à la main</em>, il est déplacé dans le répertoire
1237  <file>byhand</file> où il attend une installation manuelle par les ftpmasters.
1238  Sinon, si une erreur a été détectée, le paquet est refusé et il est déplacé
1239  dans le répertoire <file>reject</file>.
1240 <p>
1241 Une fois que le paquet est accepté, le système envoie une confirmation par
1242  courrier au responsable et ferme les bogues corrigés par l'envoi, puis
1243  les compilateurs automatiques peuvent commencer la recompilation. Le paquet est
1244  maintenant accessible publiquement à <url id="&url-incoming;"> (une telle
1245  adresse n'existe pas pour les paquets de l'archive non-US) jusqu'à ce qu'il
1246  soit vraiment installé dans l'archive Debian. Ceci se produit seulement une
1247  fois par jour, le paquet est alors supprimé de <file>Incoming</file> et
1248  installé dans le pool avec les autres paquets. Une fois que toutes les autres
1249  mises à jour (fabrication des nouveaux fichiers d'index <file>Packages</file> et
1250  <file>Sources</file> par exemple) ont été effectuées, un script spécial est
1251  appelé pour demander aux miroirs primaires de se mettre à jour.
1252 <p>
1253 Le logiciel de maintenance de l'archive enverra également le fichier
1254 <file>.changes</file> signé avec OpenPGP/GnuPG que vous avez envoyé, à la liste
1255 de diffusion appropriée. Si un paquet est diffusé avec le champ
1256 <tt>Distribution:</tt> positionné à «&nbsp;stable&nbsp;», l'annonce sera envoyée
1257 à &email-debian-changes;. Si un paquet est diffusé avec le champ
1258 <tt>Distribution:</tt> positionné à «&nbsp;unstable&nbsp;» ou
1259 «&nbsp;experimental&nbsp;», l'annonce sera à la place envoyée à
1260 &email-debian-devel-changes;.
1261 <p>
1262 Tous les développeurs Debian ont un droit d'écriture dans le répertoire
1263  <file>unchecked</file> pour pouvoir y envoyer leurs paquets&nbsp;; ils ont également
1264  accès au répertoire <file>reject</file> pour supprimer les mauvais envois ou
1265  déplacer certains fichiers dans le répertoire <file>unchecked</file>. Mais 
1266  seuls les ftpmasters ont droit d'écriture dans les autres répertoires.
1267  C'est pourquoi vous ne pouvez pas supprimer un envoi une fois qu'il a été
1268  accepté.
1269
1270       <sect1 id="delayed-incoming-broken">Incoming différé
1271 <p>
1272 <em>Note&nbsp;:</em> la description présentée ici ne fonctionne pas
1273  car ftp-master est à accès restreint. Veuillez vous reporter à <ref
1274  id="delayed-incoming"> pour la façon actuelle de faire.
1275 <p>
1276 Le répertoire <file>unchecked</file> comprend un sous-répertoire spécial,
1277  <file>DELAYED</file><footnote>Différé en anglais</footnote>. Celui-ci est
1278  lui-même subdivisé en neuf répertoires nommés <file>1-day</file> à
1279  <file>9-day</file>. Les paquets qui sont envoyés dans l'un de ces
1280  répertoires seront déplacés dans le vrai répertoire <file>unchecked</file>
1281  après le nombre correspondant de jours. Un script, exécuté chaque jour, 
1282 déplace les paquets entre les répertoires. Ceux
1283  qui sont dans «&nbsp;1-day&nbsp;» sont installés dans
1284  <file>unchecked</file> alors que les autres sont déplacés dans le
1285  répertoire adjacent (par exemple, un paquet dans <file>5-day</file> sera
1286  déplacé dans <file>4-day</file>). Cette fonctionnalité est particulièrement
1287  utile pour les personnes qui effectuent des mises à jour indépendantes
1288  (NMU, «&nbsp;non-maintainer uploads&nbsp;»). Au lieu d'attendre avant
1289  d'envoyer la NMU, elle est envoyée dès qu'elle est prête dans l'un de ces
1290  répertoires <file>DELAYED/<var>x</var>-day</file>. Ceci laisse le nombre
1291  correspondant de jours au responsable pour réagir et envoyer lui-même une
1292  autre correction s'il n'est pas complètement satisfait par la NMU. Il peut
1293  également enlever complètement la NMU.
1294 <p>
1295 L'utilisation de ce délai peut être simplifiée en
1296  l'intégrant à votre outil d'envoi. Par exemple, si vous utilisez
1297  <prgn>dupload</prgn> (voir <ref id="dupload">), vous pouvez ajouter cette
1298  partie à votre fichier de configuration&nbsp;:
1299 <example>
1300 $delay = ($ENV{DELAY} || 7);
1301 $cfg{'delayed'} = {
1302          fqdn => "&ftp-master-host;",
1303          login => "yourdebianlogin",
1304          incoming => "/org/ftp.debian.org/incoming/DELAYED/$delay-day/",
1305          dinstall_runs => 1,
1306          method => "scpb"
1307 };</example>
1308 Une fois que vous avez fait ce changement, <prgn>dupload</prgn> peut être
1309 utilisé pour envoyer facilement dans l'un des répertoires de délai ainsi&nbsp;:
1310 <example>DELAY=5 dupload --to delayed &lt;changes-file&gt;</example>
1311
1312
1313     <sect id="pkg-info">Informations sur un paquet
1314 <p>
1315
1316       <sect1 id="pkg-info-web">Sur le web
1317 <p>
1318 Chaque paquet a plusieurs pages web dédiées.
1319  <tt>http://&packages-host;/<var>nom-paquet</var></tt> affiche chaque version
1320  du paquet disponible dans les différentes distributions. Les informations
1321  détaillées par version incluent la description du paquet, les dépendances et
1322  des liens pour télécharger le paquet.
1323 <p>
1324 Le système de suivi des bogues trie les bogues par paquet. Vous pouvez regarder
1325  les bogues de chaque paquet à
1326  <tt>http://&bugs-host;/<var>nom-paquet</var></tt>.
1327
1328       <sect1 id="madison">L'outil <prgn>madison</prgn>
1329 <p>
1330 <prgn>madison</prgn> est un outil en ligne de commande qui est disponible sur
1331  <tt>&ftp-master-host;</tt>, sur <tt>&non-us-host;</tt> et sur le miroir
1332  <tt>&ftp-master-mirror;</tt>. Il utilise un seul
1333  argument qui correspond au nom du paquet. Il affiche comme résultat quelle
1334  version du paquet est disponible pour chaque combinaison d'architecture et de
1335  distribution. Un exemple l'expliquera mieux.
1336 <p>
1337 <example>
1338 $ madison libdbd-mysql-perl
1339 libdbd-mysql-perl |   1.2202-4  |   stable   | source, alpha, arm, i386, m68k, powerpc, sparc
1340 libdbd-mysql-perl |   1.2216-2  |   testing  | source, arm, hppa, i386, ia64, m68k, mips, mipsel, powerpc, s390, sparc
1341 libdbd-mysql-perl | 1.2216-2.0.1|   testing  | alpha
1342 libdbd-mysql-perl |   1.2219-1  |   unstable | source, alpha, arm, hppa, i386, ia64, m68k, mips, mipsel, powerpc, s390, sparc</example>
1343 <p>
1344 Dans cet exemple, vous pouvez voir que la version dans <em>unstable</em> diffère
1345  de celle de <em>testing</em> et qu'il y a eu une NMU binaire seulement pour
1346  l'architecture alpha. Chaque version du paquet a été recompilée sur la plupart
1347  des architectures.
1348
1349     <sect id="pkg-tracking-system">Système de suivi des paquets
1350 <p>
1351 Le système de suivi des paquets (PTS)<footnote>«&nbsp;Package Tracking
1352  System&nbsp;»</footnote> est un outil pour suivre par courrier l'activité
1353  concernant un paquet source. Cela veut vraiment dire que vous pourrez recevoir
1354  les mêmes courriers que le responsable, simplement en vous inscrivant au paquet
1355  dans le PTS.
1356 <p>
1357 Chaque courrier envoyé par le PTS est classé sous l'un des mots-clés
1358  listés ci-dessous. Ceci vous permettra de sélectionner les courriers que vous
1359  voulez recevoir.
1360 <p>
1361 Par défaut, vous recevrez&nbsp;:
1362 <taglist>
1363   <tag><tt>bts</tt>
1364   <item>Tous les rapports de bogue et les discussions qui
1365         suivent.
1366
1367   <tag><tt>bts-control</tt>
1368   <item>Les courriers de notification de <email>control@bugs.debian.org</email>
1369         sur les changement d'état de l'un des rapports de bogue.
1370
1371   <tag><tt>upload-source</tt>
1372   <item>Le courrier de notification de <prgn>katie</prgn> quand un paquet
1373         source envoyé a été accepté.
1374
1375   <tag><tt>katie-other</tt>
1376   <item>Les autres courriers d'avertissement et d'erreur de
1377         <prgn>katie</prgn> (comme une incohérence de passage en force pour les champs
1378         section ou priorité).
1379
1380   <tag><tt>default</tt>
1381   <item>Tout courrier non automatique envoyé au PTS par les personnes qui
1382         veulent contacter les inscrits au paquet. Ceci peut être fait en
1383         envoyant un courrier à <tt><var>paquet-source</var>@&pts-host;</tt>. Pour
1384         prévenir l'envoi de spam, tous les courriers envoyés à ces adresses doivent
1385         contenir l'en-tête <tt>X-PTS-Approved</tt> avec une valeur non vide.
1386
1387   <tag><tt>summary</tt>
1388   <item>(Ceci est une extension prévue).
1389         Les courriers de résumé réguliers sur l'état du paquet (statistiques sur
1390         les bogues, vue générale du portage, progression dans <em>testing</em>,
1391         etc.).
1392 </taglist>
1393
1394 <p>
1395 Vous pouvez également décider de recevoir  des informations supplémentaires&nbsp;: 
1396 <taglist>
1397   <tag><tt>upload-binary</tt>
1398    <item>Le courrier d'information de <prgn>katie</prgn> quand un paquet
1399         binaire envoyé est accepté. En d'autres termes, à chaque fois qu'un
1400         démon de compilation ou un porteur envoie votre paquet pour une autre
1401         architecture, vous recevez un courrier pour suivre comment votre paquet
1402         est recompilé pour toutes les architectures.
1403
1404   <tag><tt>cvs</tt>
1405   <item>Les notifications de modifications CVS<footnote><p><em>CVS
1406         commits</em></footnote> si le responsable a mis en place un système pour
1407         faire suivre les notifications de modifications vers le PTS.
1408
1409   <tag><tt>ddtp</tt>
1410   <item>Les traductions des descriptions ou des questionnaires debconf soumis
1411         au Projet de traduction des descriptions de paquets
1412         Debian<footnote><p><em>Debian Description Translation Project,
1413         DDTP</em></footnote>.
1414
1415 </taglist>
1416
1417         <sect1 id="pts-commands">L'interface de courrier du PTS
1418 <p>
1419 Vous pouvez contrôler votre (vos) inscription(s) au PTS en envoyant différents
1420  commandes à <email>pts@qa.debian.org</email>.
1421
1422 <taglist>
1423   <tag><tt>subscribe &lt;paquet source&gt; [&lt;adresse&gt;]</tt>
1424   <item>Inscrit <var>adresse</var> aux communications liées au paquet source
1425         <var>paquet source</var>. L'adresse de l'expéditeur est utilisée si le
1426         second argument n'est pas présent. Si <var>paquet source</var> n'est pas
1427         un paquet source valide, vous obtiendrez un avertissement. Cependant,
1428         s'il s'agit d'un paquet binaire valide, le PTS vous inscrira pour le
1429         paquet source correspondant.
1430
1431   <tag><tt>unsubscribe &lt;paquet source&gt; [&lt;adresse&gt;]</tt>
1432   <item>Supprime une inscription précédente au paquet source
1433         <var>paquet source</var> en utilisant l'adresse spécifiée ou l'adresse de
1434         l'expéditeur si le second argument n'est pas rempli.
1435
1436   <tag><tt>which [&lt;adresse&gt;]</tt>
1437   <item>Liste les inscriptions pour l'expéditeur ou pour l'adresse indiquée
1438         si elle est spécifiée.
1439
1440   <tag><tt>keyword [&lt;adresse&gt;]</tt>
1441   <item>Donne les mots-clés que vous acceptez. Pour une explication des ces
1442         mots-clés, <qref id="pkg-tracking-system">voir ci-dessus</qref>. Voici
1443         un rapide résumé&nbsp;:
1444         <list>
1445         <item><tt>bts</tt>&nbsp;: courriers venant du système de gestion de bogues (BTS) Debian
1446         <item><tt>bts-control</tt>&nbsp;: réponses aux courriers envoyés à
1447               &bugs-host;&email-bts-control;
1448         <item><tt>summary</tt>&nbsp;: courriers de résumé automatique sur l'état
1449               d'un paquet
1450         <item><tt>cvs</tt>&nbsp;: notifications de modifications CVS
1451         <item><tt>ddtp</tt>&nbsp;: traductions des descriptions et
1452               questionnaires debconf
1453         <item><tt>upload-source</tt>&nbsp;: annonce d'un nouvel envoi de paquet
1454               source qui a été accepté
1455         <item><tt>upload-binary</tt>&nbsp;: annonce d'un nouvel envoi de binaire
1456               seulement (portage)
1457         <item><tt>katie-other</tt>&nbsp;: autres courriers des ftpmasters
1458               (incohérence de passage en force, etc.)
1459         <item><tt>default</tt>&nbsp;: tous les autres courriers (ceux qui ne sont
1460               pas automatiques)
1461         </list>
1462
1463   <tag><tt>keyword &lt;paquet source&gt; [&lt;adresse&gt;]</tt>
1464   <item>Identique à l'élément précédent, mais pour un paquet source donné
1465         car vous pouvez sélectionner un ensemble de mots-clés différent pour
1466         chaque paquet source.
1467
1468   <tag><tt>keyword [&lt;adresse&gt;] {+|-|=} &lt;liste de mots-clés&gt;</tt>
1469   <item>Accepte (+) ou refuse (-) les courriers classés sous le(s) mot(s)-clé(s).
1470         Définit la liste (=) des mots-clés acceptés.
1471
1472   <tag><tt>keyword &lt;paquet source&gt; [&lt;adresse&gt;] {+|-|=} &lt;liste de mots-clés&gt;</tt>
1473   <item>Identique à l'élément précédent, mais remplace la liste des mots-clés
1474         pour le paquet source indiqué.
1475
1476   <tag><tt>quit | thanks | --</tt>
1477   <item>Arrête le traitement des commandes. Toutes les lignes suivantes sont
1478         ignorées par le robot.
1479 </taglist>
1480
1481         <sect1 id="pts-mail-filtering">Filtrer les courriers du PTS
1482 <p>
1483 Une fois que vous vous êtes inscrit à un paquet, vous recevrez les courriers
1484  envoyés à <tt><var>paquet source</var>@packages.qa.debian.org</tt>. Ces courriers
1485  ont des en-têtes spéciaux ajoutés pour vous permettre de les filtrer dans des
1486  boîtes aux lettres (par exemple, avec <prgn>procmail</prgn>). Les en-têtes ajoutés sont
1487  <tt>X-Loop</tt>, <tt>X-PTS-Package</tt>, <tt>X-PTS-Keyword</tt> et
1488  <tt>X-Unsubscribe</tt>.
1489 <p>
1490 Voici un exemple d'en-têtes ajoutés pour une notification d'envoi de
1491 source sur le paquet <package>dpkg</package>&nbsp;:
1492 <example>
1493 X-Loop: dpkg@&pts-host;
1494 X-PTS-Package: dpkg
1495 X-PTS-Keyword: upload-source
1496 X-Unsubscribe: echo 'unsubscribe dpkg' | mail pts@qa.debian.org
1497 </example>
1498
1499         <sect1 id="pts-cvs-commit">Faire suivre les modifications de CVS vers le PTS
1500 <p>
1501 Si vous utilisez un référentiel CVS accessible publiquement pour maintenir votre
1502  paquet Debian, vous pouvez vouloir faire suivre les notifications de
1503  modifications vers le PTS pour que les inscrits (ainsi que des possibles
1504  co-responsables) puissent suivre de près l'évolution du paquet.
1505 <p>
1506 Une fois que votre référentiel génère des notifications de modifications, vous
1507  devez simplement vous assurer qu'il envoie une copie de tous ces courriers à
1508  <tt><var>paquet source</var>_cvs@&pts-host;</tt>. Seules les personnes qui ont
1509  accepté le mot-clé <em>cvs</em> recevront les notifications.
1510
1511         <sect1 id="pts-web">L'interface web du PTS
1512 <p>
1513 Le PTS possède une interface web à <url id="http://&pts-host;/"> qui réunit
1514 beaucoup d'informations au
1515 même endroit à propos de chaque paquet source. Il propose plusieurs liens utiles
1516 (BTS, statistiques QA, informations de contact, état de traduction DDTP,
1517 journaux de compilation automatique) et il regroupe beaucoup d'autres informations
1518 provenant de différents endroits (les 30 dernières entrées de changelog, l'état
1519 dans <em>testing</em>, etc.). Il s'agit d'un outil très pratique si vous désirez
1520 connaître ce qu'il en est d'un paquet source spécifique. De plus, il y a un
1521 formulaire qui permet de facilement s'inscrire au PTS par courrier.
1522         <p>
1523 Vous pouvez aller directement à la page web concernant un paquet source avec une
1524 URL comme <tt>http://&pts-host;/<var>paquet source</var></tt>.
1525 <p>
1526 Cette interface a été conçue comme un portail pour le développements des
1527 paquets&nbsp;: vous pouvez ajouter du contenu personnalisé aux pages de vos
1528 paquets. Vous pouvez ajouter des «&nbsp;informations
1529 statiques&nbsp;»<footnote><em>Static information</em></footnote> (des annonces
1530 qui sont destinées à rester disponibles indéfiniment) et des nouvelles dans la
1531 section «&nbsp;dernières nouvelles&nbsp;»<footnote><em>Latest
1532 news</em></footnote>.
1533 <p>
1534 Les annonces statiques peuvent être utilisées pour indiquer&nbsp;:
1535 <list>
1536 <item>la disponibilité d'un projet hébergé sur <qref id="alioth">Alioth</qref> pour la
1537 co-maintenance du paquet,
1538 <item>un lien vers le site web amont,
1539 <item>un lien vers le suivi de bogues amont,
1540 <item>l'existence d'un canal IRC dédié au logiciel,
1541 <item>toute autre ressource disponible qui peut être utile à la maintenance du paquet.
1542 </list>
1543 Les nouvelles usuelle peuvent être utilisées pour annoncer que&nbsp;:
1544 <list>
1545 <item>des paquets bêta sont disponibles pour test,
1546 <item>des paquets finaux sont attendus pour la semaine prochaine,
1547 <item>l'empaquetage est sur le point d'être intégralement refait,
1548 <item>des rétroportages sont disponibles,
1549 <item>le responsable est en vacance (s'il désire publier cette information),
1550 <item>une mise à jour indépendante (NMU) est en cours de réalisation,
1551 <item>quelque chose d'important va affecter le paquet.
1552 </list>
1553 <p>
1554 Les deux types d'informations sont fabriqués de façon similaire&nbsp;: il vous
1555 suffit d'envoyer un courrier soit à <email>pts-static-news@qa.debian.org</email>
1556 (pour les annonces statiques), soit à <email>pts-news@qa.debian.org</email>
1557 (pour les nouvelles usuelles). Le courrier devrait indiquer quel paquet est
1558 concerné par la nouvelle en donnant le nom du paquet source dans un en-tête de
1559 courrier <tt>X-PTS-Package</tt> ou dans un pseudo-en-tête <tt>Package</tt>
1560 (comme pour les rapports de bogue du BTS). Si une URL est disponible dans
1561 l'en-tête de courrier <tt>X-PTS-Url</tt> ou dans un pseudo-en-tête <tt>Url</tt>,
1562 le résultat est un lien vers cette URL au lieu d'une nouvelle complète.
1563 <p>
1564 Voici quelques exemples de courriers valides utilisés pour générer des nouvelles dans
1565 le PTS. Le premier ajoute un lien vers l'interface cvsweb de debian-cd dans la
1566 section «&nbsp;Informations statiques&nbsp;»&nbsp;:
1567 <example>
1568 From: Raphael Hertzog &lt;hertzog@debian.org&gt;
1569 To: pts-static-news@qa.debian.org
1570 Subject: Browse debian-cd CVS repository with cvsweb
1571  
1572 Package: debian-cd
1573 Url: http://cvs.debian.org/debian-cd/
1574 </example>
1575 <p>
1576 Le second est une annonce envoyée à une liste de diffusion et également
1577 envoyée au PTS pour qu'elle soit publiée sur la page web du PTS du paquet. Notez
1578 l'utilisation du champ BCC pour éviter que des réponses ne soient envoyées par
1579 erreur au PTS.
1580 <example>
1581 From: Raphael Hertzog &lt;hertzog@debian.org&gt;
1582 To: debian-gtk-gnome@lists.debian.org
1583 Bcc: pts-news@qa.debian.org
1584 Subject: Galeon 2.0 backported for woody
1585 X-PTS-Package: galeon
1586
1587 Hello gnomers!
1588
1589 I'm glad to announce that galeon has been backported for woody. You'll find
1590 everything here:
1591 ...
1592 </example>
1593 <p>
1594 Réfléchissez-y à deux fois avant d'ajouter une nouvelle au PTS car vous ne
1595 pourrez pas l'enlever par la suite et vous ne pourrez pas non plus l'éditer. La
1596 seule chose que vous puissiez faire est d'envoyer une deuxième nouvelle qui va
1597 déprécier l'information contenue dans la précédente.
1598
1599     <sect id="ddpo">Vue d'ensemble des paquets d'un développeur
1600 <p>
1601 Un portail web pour l'Assurance Qualité (QA) est disponible à <url
1602  id="&url-ddpo;"> qui affiche un tableau de tous les paquets d'un
1603  développeur (y compris ceux pour lequel il est co-responsable). Le tableau donne
1604  un bon résumé sur les paquets d'un développeur&nbsp;: nombre de bogues par
1605  gravité, liste des versions disponibles, état des tests et des liens vers
1606  d'autres informations utiles.
1607 <p>
1608 C'est une bonne idée de vérifier régulièrement vos données pour ne pas oublier
1609  de bogues ouverts et pour ne pas oublier quels paquets sont sous votre
1610  responsabilité.
1611
1612     <sect id="alioth">Debian *Forge&nbsp;: Alioth
1613 <p>
1614 Alioth est un service de Debian plutôt récent, basé sur une version
1615 légèrement modifiée du logiciel GForge (qui a évolué à partir de
1616 SourceForge). Ce logiciel offre aux développeurs l'accès à des outils
1617 faciles d'utilisation comme un gestionnaire de suivi de bogues, un
1618 gestionnaire de correctifs, un gestionnaire de tâches et de projets,
1619 un service d'hébergement de fichiers, des listes de diffusion, des
1620 dépôts CVS, etc. Tous ces outils sont gérés par une interface web.
1621 <p>
1622 Alioth est destiné à fournir des facilités pour des projets de logiciels
1623 soutenus ou dirigés par Debian, à faciliter les contributions de développeurs
1624 externes aux projets initiés par Debian et à aider des projets dont les buts
1625 sont de promouvoir Debian ou ses dérivés.
1626 <p>
1627 Pour plus d'informations, veuillez visiter <url id="&url-alioth;">.
1628
1629    <chapt id="pkgs">Gestion des paquets
1630 <p>
1631 Ce chapitre contient des informations relatives à la création, l'envoi, la
1632  maintenance et le portage des paquets.
1633
1634
1635     <sect id="newpackage">Nouveaux paquets
1636 <p>
1637 Si vous voulez créer un nouveau paquet pour la distribution Debian, vous devriez
1638  commencer par consulter la liste des <url id="&url-wnpp;" name="paquets en
1639  souffrance et paquets souhaités">. Vous pourrez ainsi vérifier que personne ne
1640  travaille déjà sur ce paquet et éviter un double travail. Consultez aussi cette
1641  page si vous voulez en savoir plus.
1642 <p>
1643 Supposons que personne ne travaille sur le paquet que vous visez, vous devez
1644  alors envoyer un rapport de bogue (voir <ref id="submit-bug">) concernant le
1645  pseudo-paquet <package>wnpp</package>. Ce courrier devra décrire le paquet que
1646  vous projetez de créer, la licence de ce paquet et l'URL à laquelle le source
1647  peut être téléchargé. Cette liste n'est pas limitative.
1648 <p>
1649 Le sujet de votre rapport de bogue devra être &lt;ITP<footnote><p><em>Intent To
1650  Package</em>&nbsp;: intention d'empaquetage</footnote>&nbsp;:
1651  <var>NomDuPaquet</var> &mdash; <var>courte description</var>&gt;, en remplaçant
1652  <var>NomDuPaquet</var> par le nom du paquet. La gravité du bogue sera
1653  <em>wishlist</em>. Si vous le jugez nécessaire, envoyez une copie à
1654  &email-debian-devel; en mettant cette adresse dans le champ
1655  <tt>X-Debbugs-CC:</tt> de l'en-tête du message. N'utilisez pas le champ
1656  <tt>CC:</tt> car de cette manière le sujet du message ne contiendrait pas le
1657  numéro du bogue.
1658 <p>
1659 Il faudra aussi ajouter une entrée <tt>Closes: bug#<var>nnnnn</var></tt> dans le
1660  fichier <file>changelog</file> du nouveau paquet. Cette indication fermera
1661  automatiquement le rapport de bogue à l'installation du nouveau paquet sur les
1662  serveurs d'archivage (voir <ref id="upload-bugfix">).
1663 <p>
1664 Plusieurs raisons nous poussent à demander aux responsables
1665  d'annoncer leur intention&nbsp;:
1666 <list compact>
1667 <item>Les responsables ont ainsi la possibilité de puiser dans l'expérience
1668       des autres responsables et cela leur permet de savoir si une autre
1669       personne travaille déjà dessus.
1670 <item>D'autres personnes qui envisagent de travailler sur le même paquet
1671       apprendront ainsi qu'il existe déjà un volontaire, l'effort peut alors
1672       être partagé.
1673 <item>Cela permet aux autres responsables de connaître le nouveau
1674       paquet mieux que ne le permettent la description d'une ligne et l'habituelle
1675       entrée de type changelog <em>Initial release</em> postée sur
1676       <tt>debian-devel-changes</tt>.
1677 <item>C'est une information utile pour
1678       les gens qui utilisent la distribution <em>unstable</em> et qui sont nos
1679       premiers testeurs. Nous devons faciliter la tâche de ces gens.
1680 <item>Avec ces annonces, les développeurs Debian et toutes les autres personnes
1681       intéressées peuvent se faire une meilleure idée des évolutions et des
1682       nouveautés du projet.
1683 </list>
1684
1685
1686       <sect id="changelog-entries">Enregistrer les modifications dans le paquet
1687 <p>
1688 Les modifications que vous apportez au paquet doivent être notifiées dans le
1689    fichier <file>debian/changelog</file>. Ces notes doivent donner une
1690    description concise des changements, expliquer les raisons de ceux-ci (si
1691    ce n'est pas clair) et indiquer si des rapports de bogue ont été clos. Il
1692    faut aussi indiquer quand le paquet a été terminé. Ce fichier sera
1693    installé dans
1694    <file>/usr/share/doc/<var>paquet</var>/changelog.Debian.gz</file> ou
1695    <file>/usr/share/doc/<var>paquet</var>/changelog.gz</file> pour un paquet
1696    natif.
1697 <p>
1698 Le fichier <file>debian/changelog</file> a une structure précise comportant
1699    différents champs. Le champ <em>distribution</em> est décrit dans <ref
1700    id="distribution">. Vous trouverez plus d'informations sur la structure de ce
1701    fichier dans la section «&nbsp;<file>debian/changelog</file>&nbsp;» de la
1702    <em>charte Debian</em>.
1703 <p>
1704 Les entrées du fichier <file>changelog</file> peuvent être
1705    utilisées pour fermer des rapports de bogue au moment où le paquet est
1706    installé dans l'archive. Voir la section <ref id="upload-bugfix">.
1707 <p>
1708 Par convention, l'entrée changelog d'un paquet contenant une nouvelle version
1709    amont ressemble à&nbsp;:
1710 <example>
1711   * new upstream version
1712 </example>
1713 <p>
1714 Quelques outils peuvent vous aider à créer des entrées et à finaliser le fichier
1715    <file>changelog</file> pour une livraison &mdash; voir les sections <ref
1716    id="devscripts"> et <ref id="dpkg-dev-el">.
1717 <p>
1718 Voir aussi <ref id="bpp-debian-changelog">.
1719
1720
1721       <sect id="sanitycheck">Tester le paquet
1722 <p>
1723 Avant d'envoyer votre paquet, vous devriez faire quelques tests de base. Vous
1724    devriez au moins faire les tests suivants (il vous faut une ancienne version
1725    du paquet)&nbsp;:
1726 <list>
1727 <item>Installez le paquet et vérifiez que le logiciel fonctionne. Si le
1728       paquet existait déjà dans une version plus ancienne, faites une mise à
1729       jour.
1730 <item>Exécutez <prgn>lintian</prgn> sur votre paquet. Vous pouvez exécuter
1731       <prgn>lintian</prgn> comme suit&nbsp;: <tt>lintian -v
1732       <var>version-paquet</var>.changes</tt>. Ce programme fera une
1733       vérification sur les paquets source et binaire. Si vous ne comprenez pas
1734       les messages retournés par <prgn>lintian</prgn>, essayez l'option
1735       <tt>-i</tt>. Cette option rendra <prgn>lintian</prgn> beaucoup plus
1736       bavard dans sa description du problème.
1737       <p>
1738       En principe, un paquet pour lequel <prgn>lintian</prgn> renvoie des erreurs
1739       (elles commencent par <tt>E</tt>) <em>ne doit pas</em> être installé dans
1740       l'archive.
1741       <p>
1742       Pour en savoir plus sur <prgn>lintian</prgn>, reportez-vous à la section
1743       <ref id="lintian">.
1744 <item>Vous pouvez facultativement exécuter <ref id="debdiff"> pour analyser les
1745       modifications depuis une ancienne version si celle-ci existe.
1746 <item>Faites régresser le paquet vers sa version précédente si elle existe
1747       &mdash; cela permet de tester les scripts <file>postrm</file> et
1748       <file>prerm</file>.
1749 <item>Désinstallez le paquet et réinstallez-le.
1750 </list>
1751
1752
1753       <sect id="sourcelayout">Disposition du paquet source
1754 <p>
1755       Il existe deux types de paquets source Debian&nbsp;:
1756           <list>
1757           <item>les paquets appelés <em>natifs</em> pour lesquels il
1758                 n'y a pas de distinction entre les sources d'origine et les
1759                 correctifs appliqués pour Debian
1760           <item>les paquets (plus courants) où il y a un fichier archive source
1761                 d'origine accompagné par un autre fichier contenant les
1762                 correctifs pour Debian.
1763           </list>
1764 <p>
1765 Pour les paquets natifs, le paquet source inclut un fichier de contrôle source
1766 Debian (<tt>.dsc</tt>) et l'archive source (<tt>.tar.gz</tt>). Un paquet source
1767 d'un paquet non natif inclut un fichier de contrôle source Debian, l'archive
1768 source d'origine (<tt>.orig.tar.gz</tt>) et les correctifs Debian
1769 (<tt>.diff.gz</tt>).
1770 <p>
1771 Le caractère natif d'un paquet est déterminé lorsqu'il est construit par <manref
1772 name="dpkg-buildpackage" section="1">. Le reste de cette section ne se rapporte
1773 qu'aux paquets non natifs.
1774
1775 <p>
1776 La première fois qu'un paquet est installé dans l'archive pour une version amont
1777    donnée, le fichier <file>tar</file> de cette version amont doit être
1778    téléchargé et mentionné dans le fichier <file>.changes</file>. Par la suite,
1779    ce fichier <file>tar</file> sera utilisé pour générer les fichiers
1780    <file>diff</file> et <file>.dsc</file> et il ne sera pas nécessaire de le
1781    télécharger à nouveau.
1782 <p>
1783 Par défaut, <prgn>dpkg-genchanges</prgn> et <prgn>dpkg-buildpackage</prgn>
1784    incluront le fichier <file>tar</file> amont si et seulement si le numéro de
1785    révision du paquet source est 0 ou 1, ce qui indique une nouvelle version
1786    amont. Ce comportement peut être modifié en utilisant <tt>-sa</tt> pour
1787    l'inclure systématiquement ou <tt>-sd</tt> pour ne jamais l'inclure.
1788 <p>
1789 Si la mise à jour ne contient pas le fichier <file>tar</file> des sources
1790    originaux, <prgn>dpkg-source</prgn> <em>doit</em>, pour construire les
1791    fichiers <file>.dsc</file> et <file>diff</file> de la mise à jour, utiliser
1792    un fichier <tt>tar</tt> identique à l'octet près à celui déjà présent dans
1793    l'archive.
1794
1795         <sect id="distribution">Choisir une distribution
1796 <p>
1797 Chaque envoi doit spécifier à quelle distribution le paquet est destiné. Le
1798 processus de construction de paquet extrait cette information à partir de la
1799 première ligne du fichier <file>debian/changelog</file> et la place dans le champ
1800 <tt>Distribution</tt> du fichier <tt>.changes</tt>.
1801 <p>
1802 Il existe plusieurs valeurs possibles pour ce champ&nbsp;: «&nbsp;stable&nbsp;»,
1803     «&nbsp;unstable&nbsp;», «&nbsp;testing-proposed-updates&nbsp;» et
1804     «&nbsp;experimental&nbsp;».
1805 <p>
1806 En fait, il y a deux autres possibilités&nbsp;:
1807     «&nbsp;stable-security&nbsp;» et «&nbsp;testing-security&nbsp;», mais
1808     veuillez lire <ref id="bug-security"> pour plus d'informations sur celles-ci.
1809 <p>
1810 Il n'est pas possible d'envoyer un paquet dans plusieurs distributions
1811    en même temps.
1812
1813           <sect1 id="upload-stable">Cas spécial&nbsp;: mise à jour d'un paquet de
1814           la distribution <em>stable</em>
1815 <p>
1816 Livrer un paquet pour la distribution <em>stable</em> signifie que le paquet
1817      sera dirigé vers le répertoire <file>stable-proposed-updates</file> des
1818      archives Debian pour y être testé avant d'être effectivement inclus dans
1819      <em>stable</em>.
1820 <p>
1821 Une livraison pour la distribution <em>stable</em> requiert des soins
1822      supplémentaires. Un paquet de cette distribution ne devrait être mis à jour
1823      que dans les cas suivants&nbsp;:
1824 <list>
1825 <item>un problème fonctionnel vraiment critique,
1826 <item>un paquet devenu ininstallable,
1827 <item>un paquet indisponible pour une architecture.
1828 </list>
1829 <p>
1830 Par le passé, des envois vers <em>stable</em> étaient également utilisés pour
1831 corriger les problèmes de sécurité. Cependant, cette pratique est dépréciée car
1832 les envois utilisés pour les avis de sécurité Debian<footnote>Debian security
1833 advisory</footnote> sont automatiquement copiés dans l'archive
1834 <file>proposed-updates</file> appropriée quand l'avis est publié. Reportez-vous
1835 à <ref id="bug-security"> pour des informations plus détaillées sur la gestion
1836 des problèmes de sécurité.
1837 <p>
1838 Il est fortement déconseillé de changer quoi que ce soit si ce
1839      n'est pas important car même une modification triviale peut provoquer un
1840      bogue.
1841 <p>
1842 Les paquets livrés pour <em>stable</em> doivent être compilés avec la
1843      distribution <em>stable</em> pour que leurs dépendances se limitent aux
1844      bibliothèques (et autres paquets) disponibles dans <em>stable</em>&nbsp;;
1845      un paquet livré pour la distribution <em>stable</em> qui dépend d'une
1846      bibliothèque qui n'est disponible que dans <em>unstable</em> sera rejeté.
1847      Modifier les dépendances d'autres paquets (en manipulant le champ
1848      <tt>Provides</tt> ou les fichiers shlibs) et, peut-être, rendre ces paquets
1849      ininstallables, est fortement déconseillé.
1850 <p>
1851 L'équipe responsable de la distribution<footnote><em>the Release
1852      team</em></footnote> (joignable à l'adresse &email-debian-release;)
1853      évaluera régulièrement le contenu de <em>stable-proposed-updates</em> et
1854      décidera si votre paquet peut être inclus dans la distribution
1855      <em>stable</em>. Soyez précis (et, si nécessaire, prolixe) quand vous
1856      décrivez, dans le fichier changelog, vos changements pour une livraison
1857      vers <em>stable</em>, sinon le paquet ne sera pas pris en considération.
1858           <p>
1859 Il est fortement conseillé de discuter avec le responsable de la version stable <em>avant</em>
1860 de réaliser un envoi dans <em>stable</em>/<em>stable-proposed-updates</em>, pour
1861 que le paquet envoyé corresponde aux besoins de la prochaine révision de <em>stable</em>.
1862
1863     <sect1 id="upload-t-p-u">Cas spécial&nbsp;: mise à jour d'un paquet de la
1864     distribution <em>testing</em>/<em>testing-proposed-updates</em>
1865 <p>
1866 Veuillez consulter les informations dans la <qref id="t-p-u">section sur
1867 <em>testing</em></qref> pour des détails.
1868
1869       <sect id="upload">Mettre à jour un paquet
1870
1871         <sect1 id="upload-ftp-master">Installer un paquet sur
1872         <tt>ftp-master</tt>
1873 <p>
1874 Pour installer un paquet, vous devez envoyer les fichiers (y compris les
1875    fichiers changes et dsc signés) par ftp anonyme sur
1876    <ftpsite>&ftp-master-host;</ftpsite> dans le répertoire &upload-queue;. Pour
1877    que les fichiers y soient traités, ils doivent être signés avec une clé du
1878    porte-clés (<em>keyring</em>) Debian.
1879
1880 <p>
1881 Attention, il est préférable de transférer le fichier
1882    <tt>changes</tt> en dernier. Dans le cas contraire, votre livraison pourrait
1883    être rejetée car l'outil de maintenance de l'archive pourrait lire le fichier
1884    <tt>changes</tt> et constater que les fichiers ne sont pas tous présents.
1885 <p>
1886 <!-- FIXME: is this still topical? Explain the rationale? -->
1887 <em>Note&nbsp;:</em> ne téléchargez pas sur <tt>ftp-master</tt> de paquets
1888    concernant la cryptographie qui appartiendraient à <em>contrib</em> ou <em>non-free</em>.
1889    Ces logiciels doivent aller sur <tt>non-us</tt> (voir <ref
1890    id="upload-non-us">). De plus, les paquets contenant un logiciel protégé par
1891    des brevets américains ne peuvent pas être envoyés sur
1892    <tt>ftp-master</tt>&nbsp;; selon le cas, ils peuvent peut-être pourtant être
1893    envoyés vers <file>non-US/non-free</file> (le paquet est dans
1894    <em>non-free</em> à cause de problèmes de distribution et non pas à cause de
1895    la licence du logiciel). Quand vous ne pouvez télécharger sur
1896    <tt>ftp-master</tt>, vous ne pouvez pas non plus télécharger sur
1897    les sites de repli qui arrivent finalement sur <tt>ftp-master</tt>. Si vous ne savez pas si votre paquet
1898    est protégé par un brevet ou s'il est soumis aux lois de contrôle des
1899    exportations américaines, posez la question sur la liste
1900    &email-debian-devel;.
1901 <p>
1902 Les paquets <ref id="dupload"> ou <ref id="dput"> pourront vous faciliter le
1903    travail lors du téléchargement. Ces programmes, bien pratiques, aident à
1904    automatiser le processus d'envoi de paquets vers Debian
1905 <p>
1906 Pour supprimer des paquets, veuillez lire le fichier README dans ce répertoire
1907 FTP et le paquet Debian <ref id="dcut">.
1908
1909         <sect1 id="upload-non-us">Installer un paquet sur <tt>non-US</tt>
1910 <p>
1911 <em>Note&nbsp;:</em> non-us n'est plus traité actuellement.
1912           <p>
1913 Comme nous l'avons dit un peu plus haut, les programmes soumis au contrôle des
1914    exportations américaines ne doivent pas être installés sur
1915    <tt>ftp-master</tt>. Installez le paquet par FTP anonyme sur
1916    <ftpsite>non-us.debian.org</ftpsite> dans le répertoire &upload-queue;
1917    (<ref id="dupload"> et <ref id="dput"> avec les options adéquates peuvent
1918    tous deux être utilisés pour cela).
1919 <p>
1920 Attention, les personnes résidant aux États-Unis et les citoyens américains sont
1921    soumis à des restrictions sur l'exportation des logiciels de cryptographie.
1922    Au moment où j'écris, les citoyens américains peuvent exporter quelques
1923    logiciels de cryptographie soumis à une obligation de déclaration auprès du
1924    département du commerce américain. Toutefois, cette restriction a été
1925    abandonnée pour des logiciels qui sont déjà disponibles en dehors des
1926    États-Unis. En conséquence, tout logiciel de cryptographie de la section
1927    <em>main</em> de l'archive Debian qui ne dépend d'aucun paquet d'une autre
1928    section &mdash;&nbsp;il ne doit pas dépendre de <em>non-US/main</em>&nbsp;&mdash; peut
1929    être téléchargé sur <tt>ftp-master</tt> ou l'une de ses files d'attente
1930    décrites plus haut.
1931 <p>
1932 La <em>charte Debian</em> n'empêche pas les résidents et citoyens américains de
1933    livrer des paquets sur <tt>non-US</tt> mais ils devront être vigilants en le
1934    faisant. Nous recommandons aux responsables concernés de prendre toutes les
1935    précautions nécessaires, <em>y compris la consultation d'un juriste</em>,
1936    pour s'assurer qu'ils n'enfreignent pas une loi américaine en livrant un
1937    paquet sur <tt>non-US</tt>.
1938 <p>
1939 Pour les paquets des sections <em>non-US/main</em> et <em>non-US/contrib</em>,
1940    les responsables devraient au moins suivre la <url id="&url-u.s.-export;"
1941    name="procédure décrite par le gouvernement américain">. Les responsables de
1942    paquets <em>non-US/non-free</em> devront en plus consulter les <url
1943    id="&url-notification-of-export;" name="règles de déclaration d'exportation
1944    pour les logiciels commerciaux">.
1945 <p>
1946 Cette section a pour seul but d'informer, elle n'a pas valeur de conseil
1947    juridique. Une fois encore, nous recommandons aux résidents et citoyens
1948    américains de consulter un juriste avant de livrer un paquet sur
1949    <tt>non-US</tt>.
1950
1951         <sect1 id="delayed-incoming">Envois différés
1952           <p>
1953 Les envois différés sont pour le moment réalisés <em>via</em> la file différée
1954    sur gluck. Le répertoire d'envoi est
1955    <ftpsite>gluck:~tfheen/DELAYED/[012345678]-day</ftpsite>.
1956 0-day est envoyé approximativement une heure avant l'exécution de dinstall.
1957           <p>
1958 Avec une version assez récente de dput, cette section
1959 <example>
1960 [tfheen_delayed]
1961 method = scp
1962 fqdn = gluck.debian.org
1963 incoming = ~tfheen
1964 </example>
1965 dans votre fichier ~/.dput.cf devrait fonctionner correctement pour réaliser des
1966 envois dans la file DELAYED.
1967           <p>
1968 <em>Note&nbsp;:</em>
1969 Comme la file d'envoi va sur <tt>ftp-master</tt>, la 
1970 prescription que l'on trouve dans <ref id="upload-ftp-master"> s'applique
1971 également ici.
1972
1973         <sect1>Envois de sécurité
1974           <p>
1975 N'envoyez PAS un paquet vers la file d'envoi de sécurité (<em>oldstable-security</em>,
1976 <em>stable-security</em>, etc.) sans avoir obtenu au préalable l'autorisation de l'équipe de
1977 sécurité. Si le paquet ne correspond pas tout à fait aux besoins de cette
1978 équipe, il entraînera beaucoup de problèmes et de délais dans la gestion de cet
1979 envoi non désiré. Pour plus de détails, consultez la section <ref id="bug-security">.
1980
1981         <sect1>Les autres files d'envoi
1982           <p>
1983 Les files scp sur ftp-master, non-us et security sont pratiquement inutilisables
1984 à cause des restrictions de connexion sur ces hôtes.
1985           <p>
1986 Les files anonymes sur ftp.uni-erlangen.de et ftp.uk.debian.org sont
1987 actuellement arrêtées. Un travail est en cours pour les restaurer. 
1988           <p>
1989 Les files sur master.debian.org, samosa.debian.org, master.debian.or.jp
1990 et ftp.chiark.greenend.org.uk sont arrêtées de façon permanente et ne seront pas
1991 restaurées. La file du Japon sera remplacée par une nouvelle file sur
1992 hp.debian.or.jp un jour.
1993           <p>
1994 À l'heure actuelle, la file en ftp anonyme sur auric.debian.org (le précédent
1995 ftp-master) fonctionne, mais elle est déconseillée et sera supprimée à un moment
1996 donné.
1997
1998       <sect1 id="upload-notification">
1999           <heading>Notification de l'installation d'un nouveau paquet</heading>
2000 <p>
2001 Les administrateurs de l'archive Debian sont responsables de l'installation des
2002  mises à jour. La plupart des mises à jour sont gérées quotidiennement par le
2003  logiciel de gestion de l'archive <prgn>katie</prgn>. Les mises à jour de
2004  paquets sur la distribution <em>unstable</em> sont installées
2005  ainsi. Dans les autres cas et notamment dans le cas d'un nouveau paquet,
2006  celui-ci sera installé manuellement. Il peut s'écouler jusqu'à un mois entre le
2007  téléchargement d'un paquet vers un serveur et son installation effective. Soyez
2008  patient.
2009 <p>
2010 Dans tous les cas, vous recevrez un accusé de réception par courrier
2011  électronique indiquant que votre paquet a été installé et quels rapports de
2012  bogues ont été clos. Lisez attentivement ce courrier et vérifiez que tous les
2013  rapports de bogue que vous vouliez clore sont bien dans cette liste.
2014 <p>
2015 L'accusé de réception indique aussi la section dans laquelle le paquet a été
2016  installé. S'il ne s'agit pas de votre choix, vous recevrez un second courrier
2017  qui vous informera de cette différence (voir ci-dessous).
2018 <p>
2019 Notez que si vous envoyez <em>via</em> les files, le logiciel de démon de file
2020  vous enverra également une notification par courriel.
2021
2022
2023         <sect id="override-file">Spécifier la section, la sous-section et la priorité d'un paquet
2024 <p>
2025 Les champs <tt>Section</tt> et <tt>Priority</tt> du fichier
2026    <file>debian/control</file> n'indiquent ni où le paquet sera installé dans
2027    l'archive Debian, ni sa priorité. Afin de conserver la cohérence de
2028    l'archive, ce sont les administrateurs qui contrôlent ces champs. Les valeurs
2029    du fichier <file>debian/control</file> sont juste des indications.
2030 <p>
2031 Les administrateurs de l'archive indiquent les sections et priorités des paquets
2032    dans le fichier <em>override</em>. Si ce fichier <em>override</em> et le
2033    fichier <file>debian/control</file> de votre paquet diffèrent, vous en serez
2034    informé par courrier électronique quand votre paquet sera installé dans
2035    l'archive. Vous pourrez corriger votre fichier <em>debian/control</em> avant
2036    votre prochain téléchargement ou alors vous pourrez vouloir modifier le
2037    fichier <em>override</em>.
2038 <p>
2039 Pour modifier la section dans laquelle un paquet est archivé, vous devez d'abord
2040    vérifier que fichier <file>debian/control</file> est correct. Ensuite,
2041    envoyez un courrier à &email-override; ou un rapport de bogue sur le
2042    pseudo-paquet <package>ftp.debian.org</package> demandant la modification de
2043    la section ou de la priorité de votre paquet. Exposez bien les raisons qui
2044    vous amènent à demander ces changements.
2045 <p>
2046 Pour en savoir plus sur les <em>fichiers override</em>, reportez-vous à <manref
2047 name="dpkg-scanpackages" section="8"> et <url
2048 id="&url-bts-devel;#maintincorrect">.
2049         <p>
2050 Notez que le champ <tt>Section</tt> décrit à la fois la section et la
2051 sous-section, comme décrit dans <ref id="archive-sections">. Si la section est
2052 «&nbsp;main&nbsp;», elle devrait être omise. La liste des sous-sections
2053 autorisées peut être trouvée dans <url
2054 id="&url-debian-policy;ch-archive.html#s-subsections">.
2055
2056 <sect id="bug-handling">Gérer les bogues
2057 <p>
2058 Chaque développeur doit être capable de travailler avec le <url name="système de
2059 suivi des bogues" id="&url-bts;"> Debian. Il faut savoir comment remplir
2060 des rapports de bogue correctement (voir <ref id="submit-bug">), comment les
2061 mettre à jour et les réordonner et comment les traiter et les fermer.
2062 <p>
2063 Les fonctionnalités du système de suivi des bogues sont décrites dans la <url id="&url-bts-devel;" name="documentation
2064 du BTS pour les développeurs">. Ceci inclut la fermeture des bogues, l'envoi des
2065 messages de suivi, l'assignation des niveaux de gravité et des marques,
2066 l'indication que les bogues ont été envoyés au développeur amont et autres
2067 problèmes.
2068 <p>
2069 Des opérations comme réassigner des bogues à d'autres paquets, réunir des
2070 rapports de bogues séparés traitant du même problème ou rouvrir des bogues
2071 quand ils ont été prématurément fermés, sont gérées en utilisant le serveur de
2072 courrier de contrôle. Toutes les commandes disponibles pour ce serveur sont
2073 décrites dans la <url id="&url-bts-control;" name="documentation du serveur de
2074 contrôle du BTS">.
2075
2076       <sect1 id="bug-monitoring">Superviser les rapports de bogue
2077 <p>
2078 Si vous voulez être un bon responsable, consultez régulièrement la page du <url
2079  id="&url-bts;" name="système de suivi des bogues">. Cette page contient tous
2080  les rapports de bogue qui concernent vos paquets. Vous pouvez les vérifier avec
2081  cette page&nbsp;: <tt>http://&bugs-host;/<var>votre_compte</var>@debian.org</tt>.
2082 <p>
2083 Les responsables interagissent avec le système de suivi des bogues en utilisant
2084  l'adresse électronique <tt>&bugs-host;</tt>. Vous trouverez une documentation
2085  sur les commandes disponibles à l'adresse <url id="&url-bts;"> ou, si vous avez
2086  installé le paquet <package>doc-debian</package>, dans les fichiers locaux
2087  &file-bts-docs;.
2088 <p>
2089 Certains trouvent utile de recevoir régulièrement une synthèse des rapports de
2090  bogues ouverts. Si vous voulez recevoir une synthèse hebdomadaire relevant tous
2091  les rapports de bogue ouverts pour vos paquets, vous pouvez configurer
2092  <prgn>cron</prgn> comme suit&nbsp;:
2093 <example>
2094 # Synthèse hebdomadaire des rapports de bogue qui me concernent
2095 &cron-bug-report;
2096 </example>
2097 Remplacez <var>address</var> par votre adresse officielle de responsable Debian.
2098
2099       <sect1 id="bug-answering">Répondre à des rapports de bogue
2100 <p>
2101 Lorsque vous répondez à des rapports de bogue, assurez-vous que toutes vos
2102  discussions concernant les bogues sont envoyées au
2103  rapporteur du bogue et au bogue lui-même (<email>123@&bugs-host;</email>
2104  par exemple). Si vous rédigez un nouveau courrier et que vous ne vous souvenez
2105  plus de l'adresse du rapporteur de bogue, vous pouvez utiliser l'adresse
2106  <email>123-submitter@&bugs-host;</email> pour contacter le rapporteur
2107  <em>et</em> enregistrer votre courrier dans le journal du bogue (ce qui veut
2108  dire que vous n'avez pas besoin d'envoyer une copie du courrier à
2109  <email>123@&bugs-host;</email>).
2110 <p>
2111 Si vous recevez un bogue mentionnant «&nbsp;FTBFS&nbsp;», cela veut dire
2112 «&nbsp;Fails To Build From Source&nbsp;» (Erreur de construction à partir du
2113 source). Les porteurs emploient fréquemment cet acronyme.
2114 <p>
2115 Une fois que vous avez traité un rapport de bogue (i.e. que vous l'avez
2116  corrigé), marquez-le comme <em>done</em> (fermez-le) en envoyant un message
2117  d'explication à <email>123-done@&bugs-host;</email>. Si vous corrigez un
2118  bogue en changeant et en envoyant une nouvelle version du paquet, vous pouvez
2119  fermer le bogue automatiquement comme décrit dans <ref id="upload-bugfix">.
2120 <p>
2121 Vous ne devez <em>jamais</em> fermer un rapport de bogue en envoyant la commande
2122  <tt>close</tt> à l'adresse &email-bts-control;.Si vous le faites, le rapporteur
2123  n'aura aucune information sur la clôture de son rapport.
2124
2125       <sect1 id="bug-housekeeping">Gestion générale des bogues
2126 <p>
2127 En tant que responsable de paquet, vous trouverez fréquemment des bogues dans
2128  d'autres paquets ou vous aurez des bogues sur vos paquets qui sont en fait des
2129  bogues sur d'autres paquets. Les fonctions intéressantes du système de suivi
2130  des bogues sont décrites dans la <url
2131  id="&url-bts-devel;" name="documentation du BTS pour les développeurs Debian">.
2132  Les <url id="&url-bts-control;" name="instructions du serveur de contrôle du
2133  BTS"> documentent les opérations techniques du BTS, telles que comment remplir,
2134  réassigner, regrouper et marquer des bogues. Cette section contient des lignes
2135  directrices pour gérer vos propres bogues, définies à partir de l'expérience
2136  collective des développeurs Debian.
2137 <p>
2138 Remplir des rapports de bogue pour des problèmes que vous trouvez dans d'autres
2139  paquet est l'une des «&nbsp;obligations civiques&nbsp;» du responsable,
2140  reportez-vous à <ref id="submit-bug"> pour les détails. Cependant, gérer les
2141  bogues de vos propres paquets est encore plus important.
2142 <p>
2143 Voici une liste des étapes que vous pouvez suivre pour gérer un rapport de
2144  bogue&nbsp;:
2145 <enumlist>
2146   <item>
2147         Décider si le rapport correspond à un bogue réel ou non. Parfois, les
2148         utilisateurs exécutent simplement un programme de la mauvaise façon car
2149         ils n'ont pas lu la documentation. Si c'est votre diagnostic, fermez
2150         simplement le bogue avec assez d'informations pour laisser l'utilisateur
2151         corriger son problème (donnez des indications vers la bonne
2152         documentation et ainsi de suite). Si le rapport de bogue revient
2153         régulièrement, vous devriez vous demander si la documentation est assez
2154         bonne ou si le programme ne devrait pas détecter une mauvaise
2155         utilisation pour donner un message d'erreur informatif. Il s'agit d'un
2156         problème qui peut être discuté avec l'auteur amont.
2157         <p>
2158         Si le rapporteur de bogue n'est pas d'accord avec votre décision de
2159         fermeture du bogue, il peut le ré-ouvrir jusqu'à ce que vous trouviez un
2160         accord sur la façon de le gérer. Si vous n'en trouvez pas, vous pouvez
2161         marquer le bogue avec <tt>wontfix</tt> pour indiquer aux personnes que
2162         le bogue existe, mais ne sera pas corrigé. Si cette situation n'est pas
2163         acceptable, vous (ou le rapporteur) pouvez vouloir demander une décision
2164         par le comité technique en réattribuant le bogue à
2165         <package>tech-ctte</package> (vous pouvez utiliser la commande
2166         <tt>clone</tt> du BTS si vous désirez garder le bogue comme rapporté sur
2167         votre paquet). Avant de faire cela, veuillez lire la <url
2168         id="&url-tech-ctte;" name="procédure recommandée">.
2169   </item>
2170   <item>
2171         Si le bogue est réel, mais est causé par un autre paquet,
2172         réattribuez simplement le bogue à l'autre paquet. Si vous ne savez pas à
2173         quel paquet il doit être réattribué, vous pouvez demander de l'aide sur
2174         <qref id="irc-channels">IRC"</qref> ou sur &email-debian-devel;.
2175         <p>
2176         Parfois, vous devez également ajuster la gravité du bogue pour qu'elle
2177         corresponde à notre définition de gravité des bogues. C'est dû au
2178         fait que les gens tendent à augmenter la gravité des bogues pour
2179         s'assurer que leurs bogues seront corrigés rapidement. La gravité de
2180         certains bogues peut même être rétrogradée en <em>wishlist</em> (souhait)
2181         quand le changement demandé est seulement d'ordre cosmétique.
2182   </item>
2183   <item>
2184         Le rapporteur de bogue peut avoir oublié de fournir certaines
2185         informations. Dans ce cas, vous devez lui demander les informations
2186         nécessaires. Vous pouvez utiliser la marque <tt>moreinfo</tt> (plus
2187         d'information) sur le bogue. De plus, si vous ne pouvez pas reproduire le
2188         bogue, vous pouvez le marquer comme <tt>unreproducible</tt> (non
2189         reproductible). Une personne qui arriverait à reproduire le bogue est
2190         alors invitée à fournir plus d'informations sur la façon de le
2191         reproduire. Après quelques mois, si cette information n'a été envoyée
2192         par personne, le bogue peut être fermé.
2193   </item>
2194   <item>
2195         Si le bogue est lié à l'empaquetage, vous devez simplement le
2196         corriger. Si vous ne pouvez pas le corriger vous-même, marquez alors le
2197         bogue avec <tt>help</tt> (aide). Vous pouvez également demander de
2198         l'aide sur &email-debian-devel; ou &email-debian-qa;. S'il s'agit d'un
2199         problème amont, vous devez faire suivre le rapport à l'auteur amont.
2200         Faire suivre un bogue n'est pas suffisant, vous devez vérifier à chaque
2201         version si le bogue a été corrigé ou non. S'il a été corrigé, vous le
2202         fermez simplement, sinon vous devez le rappeler à l'auteur. Si vous avez
2203         les compétences nécessaires, vous pouvez préparer un correctif pour
2204         corriger le bogue et l'envoyer en même temps à l'auteur. Assurez-vous
2205         d'envoyer le correctif au BTS et marquez le bogue avec <tt>patch</tt>
2206         (correctif).
2207   </item>
2208   <item>
2209         Si vous avez corrigé un bogue sur votre copie locale ou si un correctif
2210         a été inclus dans le référentiel CVS, vous pouvez marquer le bogue avec
2211         <tt>pending</tt> (en attente) pour informer que le bogue est corrigé et
2212         qu'il sera fermé lors du prochain envoi (ajoutez le <tt>closes:</tt>
2213         dans le <file>changelog</file>). C'est particulièrement utile si
2214         plusieurs développeurs travaillent sur le même paquet.
2215   </item>
2216   <item>
2217         Une fois que le paquet corrigé est disponible dans la distribution
2218         <em>unstable</em>, vous pouvez fermer le bogue. Ceci peut être fait
2219         automatiquement, pour cela, reportez-vous à <ref id="upload-bugfix">.
2220   </item>
2221 </enumlist>
2222
2223       <sect1 id="upload-bugfix">Quand les rapports de bogue sont-ils fermés par
2224       une mise à jour&nbsp;?
2225 <p>
2226 Au fur et à mesure que les bogues et problèmes sont corrigés dans vos paquets,
2227  il est de votre responsabilité de fermer le rapport de bogue associé.
2228  Cependant, vous ne devez pas le fermer avant que le paquet n'ait été accepté
2229  dans l'archive Debian. C'est pourquoi, vous pouvez et vous devez clore le
2230  rapport dans le système de suivi des bogues une fois que vous avez reçu l'avis
2231  indiquant que votre nouveau paquet a été installé dans l'archive.
2232 <p>
2233 Cependant, il est possible d'éviter d'avoir à fermer manuellement les bogues
2234  après l'envoi &mdash; indiquez simplement les bogues corrigés dans le fichier
2235  <file>changelog</file> en suivant une syntaxe précise. Par exemple&nbsp;:
2236
2237 <example>
2238 acme-cannon (3.1415) unstable; urgency=low
2239
2240   * Frobbed with options (closes: Bug#98339)
2241   * Added safety to prevent operator dismemberment, closes: bug#98765,
2242     bug#98713, #98714.
2243   * Added man page. Closes: #98725.
2244 </example>
2245
2246 Techniquement parlant, l'expression rationnelle Perl suivante décrit comment les
2247 lignes de <em>changelogs</em> de fermeture de bogues sont identifiées&nbsp;:
2248
2249 <example>
2250   /closes:\s*(?:bug)?\#\s*\d+(?:,\s*(?:bug)?\#\s*\d+)*/ig
2251 </example>
2252
2253 Nous préférons la syntaxe <tt>closes: #<var>XXX</var></tt>, car c'est l'entrée
2254 la plus concise et la plus facile à intégrer dans le texte du fichier
2255 <file>changelog</file>.
2256 <p>
2257 Si un envoi est identifié comme une <qref id="nmu">mise à jour indépendante
2258 (NMU)</qref> (et c'est le cas si le nom de
2259 la personne qui a réalisé ce changement n'est pas exactement le même que celui
2260 de l'un des responsables ou expéditeurs, sauf si le responsable est le groupe
2261 d'Assurance Qualité), le bogue est alors marqué <tt>fixed</tt> (corrigé) au lieu
2262 d'être fermé. Si un envoi de responsable a pour cible <em>experimental</em>,
2263 l'étiquette <tt>fixed-in-experimental</tt> est alors ajoutée au bogue&nbsp;;
2264 pour les mises à jour indépendantes, l'étiquette <tt>fixed</tt> (corrigé) est
2265 utilisée (il est attendu que la règle spéciale pour <em>experimental</em> sera
2266 modifiée dès que le suivi des versions sera ajouté au système de suivi des
2267 bogues).
2268 <p>
2269 Si vous entrez un numéro de bogue incorrect ou si vous oubliez un bogue dans les
2270  entrées du fichier <file>changelog</file>, n'hésitez pas à annuler tout dommage
2271  que l'erreur a entraîné. Pour rouvrir un bogue fermé par erreur, envoyez une
2272  commande <tt>reopen <var>XXX</var></tt> à l'adresse de contrôle du système de
2273  suivi des bogues, &email-bts-control;. Pour fermer tous les bogues restants qui
2274  ont été corrigés par votre envoi, envoyez le fichier <file>.changes</file> à
2275  <email>XXX-done@&bugs-host;</email> où <var>XXX</var> est le numéro du
2276  bogue.
2277 <p>
2278 Rappelez-vous qu'il n'est pas obligatoire de fermer les bogues en utilisant le
2279  <file>changelog</file> tel que décrit ci-dessus. Si vous désirez simplement
2280  fermer les bogues qui n'ont rien à voir avec l'un de vos envois, faites-le
2281  simplement en envoyant une explication à
2282  <email>XXX-done@&bugs-host;</email>. Vous <strong>ne devez pas</strong> pas
2283  fermer des bogues dans une entrée de changelog d'une version si les
2284  changements dans cette version n'ont rien à voir avec le bogue.
2285 <p>
2286 Pour une information plus générale sur ce qu'il faut mettre dans les entrées de
2287 changelog, veuillez vous reporter aux <ref id="bpp-debian-changelog">.
2288
2289       <sect1 id="bug-security">Gérer les bogues de sécurité
2290 <p>
2291 À cause de leur nature sensible, les bogues liés à la sécurité doivent être
2292  soigneusement traités. L'équipe de sécurité de Debian est là pour coordonner
2293  cette activité, pour faire le suivi des problèmes de sécurité en cours, pour
2294  aider les responsables ayant des problèmes de sécurité ou pour les corriger
2295  elle-même, pour envoyer les annonces de sécurité et pour maintenir le site
2296  security.debian.org.
2297 <p>
2298 Si vous prenez connaissance d'un bogue lié à un problème de sécurité sur un
2299    paquet Debian, que vous soyez ou non le responsable, regroupez les
2300    informations pertinentes sur le problème et contactez rapidement l'équipe de
2301    sécurité à &email-security-team; dès que possible. <strong>N'ENVOYEZ
2302    PAS</strong> de paquet pour <em>stable</em>&nbsp;; l'équipe de sécurité le
2303    fera.
2304
2305    Les informations utiles incluent, par exemple&nbsp;:
2306
2307  <list compact>
2308       <item>
2309       les versions du paquet connues pour être affectées par le bogue. Vérifiez
2310       chaque version présente dans les distributions maintenues par Debian ainsi
2311       que dans <em>testing</em> et dans <em>unstable</em>,
2312       </item>
2313       <item>
2314       la nature d'une solution si elle est disponible (les correctifs sont
2315       particulièrement utiles),
2316       </item>
2317       <item>
2318       tout paquet corrigé que vous avez vous-même préparé (envoyez seulement les
2319       fichiers <file>.diff.gz</file> et <file>.dsc</file> et lisez d'abord <ref
2320       id="bug-security-building">),
2321       </item>
2322       <item>
2323       toute assistance que vous pouvez fournir pour aider les tests (exploits,
2324       tests de régression, etc.),
2325       </item>
2326       <item>
2327       toute information nécessaire pour l'annonce de sécurité (voir <ref
2328       id="bug-security-advisories">).
2329       </item>
2330   </list>
2331
2332         <sect2 id="bug-security-confidentiality">Confidentialité
2333 <p>
2334 À la différence de la plupart des autres activités au sein de Debian, les
2335    informations sur les problèmes de sécurité doivent parfois être gardées en
2336    privé pour un certain temps. Ceci permet les distributeurs de logiciels de
2337    coordonner leur dévoilement afin de minimiser l'exposition de leurs
2338    utilisateurs. Cette décision dépend de la nature du problème
2339    et de l'existence d'une solution correspondante et également s'il s'agit d'un
2340    fait connu publiquement.
2341 <p>
2342 Il existe plusieurs façons pour un développeur de prendre connaissance d'un
2343 problème de sécurité&nbsp;:
2344
2345 <list compact>
2346       <item>
2347       il le remarque sur un forum public (liste de diffusion, site web, etc.),
2348       </item>
2349       <item>
2350       quelqu'un remplit un rapport de bogue,
2351       </item>
2352       <item>
2353       quelqu'un l'informe par courrier privé.
2354       </item>
2355 </list>
2356
2357 Dans les deux premiers cas, l'information est publique et il est important
2358 d'avoir une solution le plus vite possible. Dans le dernier cas, cependant, ce
2359 n'est peut-être pas une information publique. Dans ce cas, il existe quelques
2360 options possibles pour traiter le problème&nbsp;:
2361
2362 <list>
2363 <item>
2364       si l'exposition de sécurité est mineure, il n'y a parfois pas besoin de
2365       garder le secret sur le problème et une correction devrait être effectuée
2366       et diffusée,
2367 </item>
2368 <item>
2369       si le problème est grave, il est préférable de partager cette
2370       information avec d'autres vendeurs et de coordonner une diffusion.
2371       L'équipe de sécurité garde des contacts avec les différentes organisations
2372       et individus et peut prendre soin des actions à mener.
2373 </item>
2374 </list>
2375
2376 <p>
2377 Dans tous les cas, si la personne qui indique le problème demande à ce que
2378 l'information ne soit pas diffusée, cela devrait être respecté avec l'évidente exception
2379 d'informer l'équipe de sécurité pour qu'une correction puisse être effectuée
2380 pour la version stable de Debian. Quand vous envoyez des informations
2381 confidentielles à l'équipe de sécurité, assurez-vous de bien mentionner ce fait.
2382
2383 <p>Veuillez noter que si le secret est nécessaire, vous ne pourrez pas envoyer
2384 un correctif vers <em>unstable</em> (ou ailleurs) puisque les informations de
2385 changelog et de diff sont publiques pour <em>unstable</em>.
2386
2387 <p>Il existe deux raisons pour diffuser l'information même si le secret est
2388 demandé&nbsp;: le problème est connu depuis un certain temps ou le problème ou
2389 son exploitation est devenu public.
2390
2391         <sect2 id="bug-security-advisories">Annonces de sécurité
2392 <p>
2393 Les annonces de sécurité ne sont émises que pour la distribution actuelle
2394    diffusée <em>stable</em>, <em>PAS</em> pour <em>testing</em> ou <em>unstable</em>.
2395    Quand elle est diffusée, l'annonce est envoyée à la liste de diffusion
2396    &email-debian-security-announce; et elle est postée sur <url
2397    id="&url-debian-security-advisories;" name="la page de sécurité">. Les
2398    annonces de sécurité sont écrites et postées par les membres de l'équipe de sécurité.
2399    Cependant, ils ne verront aucun inconvénient à ce qu'un responsable leur
2400    apporte des informations ou écrive une partie du texte. Les informations qui
2401    devraient être présentes dans une annonce incluent&nbsp;:
2402 <list compact>
2403 <item>
2404         une description du problème et de sa portée, y compris&nbsp;:
2405         <list>
2406         <item>
2407                 le type du problème (usurpation de privilège, déni de service,
2408                 etc.),
2409         </item>
2410         <item>
2411                 quels sont les privilèges obtenus et par quels utilisateurs (si c'est le
2412                 cas)
2413         </item>
2414         <item>
2415                 comment il peut être exploité,
2416         </item>
2417         <item>
2418                 si le problème peut être exploité à distance ou localement,
2419         </item>
2420         <item>
2421                 comment le problème a été corrigé,
2422         </item>
2423         </list>
2424         Ces informations permettent aux utilisateurs d'estimer la menace pesant
2425    sur leurs systèmes.
2426
2427 </item>
2428 <item>
2429         les numéros de version des paquets affectés,
2430 </item>
2431 <item>
2432         les numéros de version des paquets corrigés,
2433 </item>
2434 <item>
2435         une information sur la façon de récupérer les paquets mis à jour
2436         (habituellement l'archive de sécurité Debian),
2437 </item>
2438 <item>
2439         des références à des annonces amont, des identifiants <url
2440         id="http://cve.mitre.org" name="CVE"> et toute autre information utile
2441         pour recouper les références de la vulnérabilité.
2442 </item>
2443 </list>
2444
2445          <sect2 id="bug-security-building">
2446             <heading>Préparer les paquets pour corriger des problèmes de sécurité
2447 <p>
2448 Une façon d'aider l'équipe de sécurité dans ses travaux est de leur fournir des
2449   paquets corrigés convenables pour une annonce de sécurité pour la version
2450   <em>stable</em> de Debian
2451 <p>
2452 Quand une mise à jour de la version <em>stable</em> est effectuée, un soin
2453   particulier doit être apporté pour éviter de modifier le comportement du
2454   système ou d'introduire de nouveaux bogues. Pour cela, faites le moins de
2455   changements possibles pour corriger le bogue. Les utilisateurs et les
2456   administrateurs s'attendent à un comportement identique dans une version
2457   lorsque celle-ci est diffusée, donc tout changement qui est fait est
2458   susceptible de casser le système de quelqu'un. Ceci est spécialement vrai pour
2459   les bibliothèques&nbsp;: assurez-vous ne de jamais changer l'API ou l'ABI,
2460   quelque minimal que soit le changement.
2461 <p>
2462 Cela veut dire que passer à une version amont supérieure n'est pas une bonne
2463 solution. À la place, les changements pertinents devraient être rétroportés
2464 vers la version présente dans la distribution <em>stable</em> de Debian.
2465 Habituellement, les développeurs amont veulent bien aider. Sinon, l'équipe de
2466 sécurité Debian peut le faire.
2467 <p>
2468 Dans certains cas, il n'est pas possible de rétroporter un correctif de
2469 sécurité, par exemple, quand de grandes quantités de code source doivent être
2470 modifiées ou récrites. Si cela se produit, il peut être nécessaire de passer à
2471 une nouvelle version amont. Cependant, ceci n'est fait que dans des situations
2472 extrêmes et vous devez toujours coordonner cela avec l'équipe de sécurité au
2473 préalable.
2474 <p>
2475 Il existe une autre règle de conduite liée à cela&nbsp;: testez toujours vos
2476 changements. Si une exploitation du problème existe, essayez-la et
2477 vérifiez qu'elle réussit sur le paquet non corrigé et échoue sur le paquet
2478 corrigé. Testez aussi les autres actions normales car parfois un correctif de
2479 sécurité peut casser de manière subtile des fonctionnalités qui ne semblent pas
2480 liées.
2481 <p>
2482 N'incluez <strong>PAS</strong> de changements dans votre paquet qui ne soient
2483 pas liés directement à la correction de la vulnérabilité. Ceux-ci devraient être
2484 ensuite enlevés et cela perd du temps. S'il y a d'autres bogues dans votre
2485 paquet que vous aimeriez corriger, faites un envoi vers
2486 proposed-updates de la façon habituelle, après l'envoi de l'alerte de sécurité.
2487 Le mécanisme de mise à jour de sécurité n'est pas un moyen d'introduire des
2488 changements dans votre paquet qui seraient sinon rejetés de la distribution
2489 stable, n'essayez donc pas de faire cela, s'il vous plaît.
2490 <p>
2491 Examinez et testez autant que possible vos changements. Vérifiez les différences
2492 avec la version précédente de manière répétée (<prgn>interdiff</prgn> du
2493 paquet <package>patchutils</package> et <prgn>debdiff</prgn> du paquet
2494 <package>devscripts</package> sont des outils utiles pour cela, voir <ref
2495 id="debdiff">).
2496 <p>
2497 Assurez-vous de conserver les points suivants à l'esprit&nbsp;:
2498
2499 <list>
2500 <item>
2501       Ciblez la bonne distribution dans votre
2502       fichier <file>debian/changelog</file>. Pour <em>stable</em>, il s'agit de
2503       <tt>stable-security</tt> et pour <em>testing</em>, c'est
2504       <tt>testing-security</tt> et pour l'ancienne distribution stable, c'est
2505       <tt>oldstable-security</tt>. Ne ciblez ni
2506       <var>distribution</var>-proposed-updates, ni <tt>stable</tt>&nbsp;!
2507 </item>
2508 <item>L'envoi devra avoir «&nbsp;urgency=high&nbsp;».
2509 </item>
2510 <item>
2511       Fournissez des entrées de changelog descriptives et complètes. D'autres
2512       personnes se baseront dessus pour déterminer si un bogue particulier a été
2513       corrigé. Incluez toujours une référence externe, de préférence un
2514       identifiant CVE, pour qu'elle puisse être recoupée. Incluez la même
2515       information dans le changelog pour <em>unstable</em> pour qu'il soit clair
2516       que le même bogue a été corrigé car cela est très utile pour vérifier que
2517       le bogue a été corrigé pour la prochaine version stable. Si aucun
2518       identifiant CVE n'a encore été assigné, l'équipe de sécurité en demandera
2519       un pour qu'il puisse être inclus dans le paquet et dans le changelog.
2520 </item>
2521 <item>
2522       Fournissez des entrées de changelog descriptives et complètes. D'autres
2523       personnes se baseront dessus pour déterminer si un bogue particulier a été
2524       corrigé. Quand cela est possible, incluez une référence externe, de
2525       préférence, un identifiant CVE, pour qu'elle puisse être recoupée.
2526 </item>
2527 <item>
2528       Assurez-vous que le numéro de version est correct. Il doit être plus élevé
2529       que celui du paquet actuel, mais moins que ceux des paquets des versions
2530       des distributions suivantes. En cas de doute, testez-le avec <tt>dpkg
2531       --compare-versions</tt>. Soyez attentif à ne pas ré-utiliser un numéro de
2532       version que vous auriez déjà utilisé pour un précédent envoi.
2533       Pour <em>testing</em>, il doit y avoir un numéro
2534       de version supérieur dans <em>unstable</em>. S'il n'y en a pas encore (par
2535       exemple, si <em>testing</em> et <em>unstable</em> ont la même version),
2536       vous devez envoyer une nouvelle version vers <em>unstable</em> en premier.
2537 </item>
2538 <item>
2539       Ne faites pas d'envoi de source seul si votre paquet possède un ou
2540       plusieurs paquets binary-all (n'utilisez pas l'option <tt>-S</tt> de
2541       <prgn>dpkg-buildpackage</prgn>). L'infrastructure <prgn>buildd</prgn> ne
2542       construira pas ceux-ci. Ce point s'applique aux envois de paquets normaux
2543       également.
2544 </item>
2545 <item>
2546       Sauf si la source amont a été envoyée auparavant à security.debian.org (par une
2547       précédente mise à jour de sécurité), construisez le paquet avec la source
2548       amont complète (<tt>dpkg-buildpackage -sa</tt>). S'il y a déjà eu un
2549       précédent envoi à security.debian.org, vous pouvez faire un envoi sans le
2550       paquet source (<tt>dpkg-buildpackage -sd</tt>).
2551 </item>
2552 <item>
2553       Assurez-vous d'utiliser exactement le même nom <file>*.orig.tar.gz</file>
2554       que celui utilisé dans l'archive normale, sinon il ne sera pas possible de
2555       déplacer plus tard le correctif de sécurité dans l'archive principale.
2556 </item>
2557 <item>
2558       Compilez le paquet sur un système
2559       propre, dont tous les paquets appartiennent à la distribution pour laquelle vous
2560       construisez le paquet. Si vous n'avez pas un tel système, vous pouvez
2561       utiliser l'une des machines de debian.org (voir <ref
2562       id="server-machines">) ou mettez en place un chroot (voir <ref id=
2563       "pbuilder"> et <ref id="debootstrap">).
2564 </item>
2565 </list>
2566
2567       <sect2 id="bug-security-upload">Mettre à jour le paquet corrigé
2568 <p>
2569 Vous <em>NE</em> devez <em>PAS</em> envoyer un paquet dans la file d'attente des envois de sécurité
2570 (oldstable-security, stable-security, etc.)
2571 sans l'accord préalable de l'équipe de sécurité. Si le paquet ne remplit pas
2572 exactement les exigences de l'équipe, il causera beaucoup de problèmes, ainsi
2573 que des délais dans la gestion de l'envoi indésirable.
2574 <p>
2575 Vous <em>NE</em> devez <em>PAS</em> envoyer votre correction dans
2576 <em>proposed-updates</em> sans vous coordonner avec l'équipe de sécurité. Les
2577 paquets seront copiés de security.debian.org dans le répertoire
2578 <file>proposed-updates</file> automatiquement. Si un paquet avec le même numéro
2579 de version ou un numéro plus grand est déjà installé dans l'archive, la mise à
2580 jour de sécurité sera rejetée par le système d'archive. Ainsi, la distribution
2581 <em>stable</em> se retrouvera à la place sans la mise à jour de sécurité de ce
2582 paquet.
2583 <p>
2584 Une fois que vous avez créé et testé le nouveau paquet et qu'il a été approuvé
2585 par l'équipe de sécurité, il doit être envoyé pour être installé dans les
2586 archives. Pour les envois de sécurité, l'adresse d'envoi est
2587 <tt>ftp://security.debian.org/pub/SecurityUploadQueue/</tt>.
2588
2589 <p>
2590 Une fois que l'envoi vers la file d'attente de sécurité a été accepté, le paquet sera
2591 automatiquement recompilé pour toutes les architectures et stocké pour
2592 vérification par l'équipe de sécurité.
2593
2594 <p>
2595 Les envois en attente d'acceptation ou de vérification ne sont accessibles que
2596 par l'équipe de sécurité. C'est nécessaire car il pourrait y avoir des
2597 correctifs pour des problèmes de sécurité qui ne peuvent pas encore être
2598 diffusés.
2599
2600 <p>
2601 Si une personne de l'équipe de sécurité accepte un paquet, il sera installé sur
2602 security.debian.org ainsi que dans le répertoire
2603 <var>distribution</var>-proposed-updates qui convient sur ftp-master ou dans
2604 l'archive non-US.
2605
2606     <sect id="archive-manip">
2607       <heading>Déplacer, effacer, changer le nom, adopter et abandonner des paquets
2608 <p>
2609 Certaines manipulations de l'archive ne sont pas possibles avec le processus
2610       de mise à jour automatisé. Elles sont appliquées manuellement par les
2611       développeurs. Ce chapitre décrit ce qu'il faut faire dans ces situations.
2612
2613       <sect1 id="moving-pkgs">Déplacer des paquets
2614 <p>
2615 Il se peut qu'un paquet puisse changer de section. Une nouvelle version d'un paquet
2616  de la section <tt>non-free</tt> pourrait, par exemple, être distribuée sous
2617  licence GNU GPL&nbsp;; dans ce cas, le paquet doit être déplacé dans la section
2618  <tt>main</tt> ou <tt>contrib</tt><footnote><p>Reportez-vous à la <url
2619  id="&url-debian-policy;" name="charte Debian"> pour savoir dans quelle section
2620  un paquet doit être classé.</footnote>.
2621 <p>
2622 Si vous avez besoin de modifier la section de l'un de vos paquets, modifiez les
2623  informations de contrôle du paquet pour le placer dans la section désirée et
2624  téléchargez à nouveau votre paquet dans l'archive. Reportez-vous à la <url
2625  id="&url-debian-policy;" name="charte Debian"> pour en savoir plus. Si votre
2626  nouvelle section est valide, il sera déplacé automatiquement. Si ce n'est pas
2627  le cas, contactez les responsables ftp pour comprendre ce qui s'est passé.
2628 <p>
2629 Si vous avez besoin de modifier la sous-section de l'un de vos paquets
2630  (<tt>devel</tt> ou <tt>admin</tt> par exemple), la procédure est légèrement
2631  différente. Modifiez la sous-section dans le fichier de contrôle de votre
2632  paquet et téléchargez-le. Il vous faudra ensuite demander la modification du
2633  fichier <em>override</em> comme décrit dans la section <ref
2634  id="override-file">.
2635
2636
2637       <sect1 id="removing-pkgs">Supprimer des paquets
2638 <p>
2639 Si, pour une raison ou une autre, vous avez besoin de supprimer un paquet de
2640  l'archive (disons qu'il s'agit d'une vieille bibliothèque devenue inutile, que
2641  l'on conservait pour des raisons de compatibilité), il vous faudra envoyer un
2642  rapport de bogue concernant le pseudo-paquet <tt>ftp.debian.org</tt> et
2643  demander sa suppression. N'oubliez pas de préciser de quelle distribution le
2644  paquet doit être supprimé. Normalement, vous ne devriez avoir à supprimer que
2645  des paquets d'<em>unstable</em> ou de <em>experimental</em>. Les paquets de
2646  <em>testing</em> ne sont pas supprimés directement. Ils sont plutôt enlevés
2647  automatiquement après que le paquet a été supprimé d'<em>unstable</em> et
2648  si aucun paquet de <em>testing</em> n'en dépend.
2649 <p>
2650 Vous devez également détailler les raisons justifiant cette demande. Ceci a pour
2651  but d'éviter les suppressions non désirées et de garder une trace de la raison
2652  pour laquelle un paquet a été supprimé. Par exemple, vous pouvez fournir le nom
2653  du paquet qui remplace celui à supprimer.
2654 <p>
2655 Vous ne pouvez demander la suppression d'un paquet que si vous en
2656  êtes le responsable. Si vous voulez supprimer un autre paquet, vous devez
2657  obtenir l'accord de son responsable.
2658 <p>
2659 Si vous ne savez pas bien si un paquet peut être supprimé, demandez l'avis des
2660  autres développeurs sur la liste &email-debian-devel;. Le programme
2661  <prgn>apt-cache</prgn> du paquet <package>apt</package> pourra aussi vous être
2662  utile. La commande <tt>apt-cache showpkg <var>paquet</var> </tt> vous
2663  indiquera, entre autres, les paquets qui dépendent de <var>paquet</var>.
2664  Le retrait de paquets orphelins est discuté sur &email-debian-qa;.
2665 <p>
2666 Une fois que le paquet a été supprimé, les bogues du paquet doivent être gérés.
2667  Soit ils sont réattribués à un autre paquet dans le cas où le code actuel a
2668  évolué en un autre paquet (par exemple, <tt>libfoo12</tt> a été supprimé parce
2669  que <tt>libfoo13</tt> le remplace) ou ils sont fermés si le logiciel ne fait
2670  simplement plus partie de Debian.
2671
2672         <sect2>Supprimer des paquets dans <tt>Incoming</tt>
2673 <p>
2674 Par le passé, il était possible de supprimer un paquet de <file>Incoming</file>.
2675    Cependant, ce n'est plus possible depuis la mise en place du nouveau système
2676    de file d'attente. Il vous faudra télécharger une nouvelle version de votre
2677    paquet avec un numéro de version plus élevé que celui que vous voulez
2678    remplacer. Les deux versions seront installées dans l'archive mais seule la
2679    plus récente sera accessible dans <em>unstable</em> car la précédente sera
2680    immédiatement remplacée par la nouvelle. Toutefois, si vous testez
2681    correctement vos paquets, le besoin d'en remplacer un ne devrait pas être
2682    trop fréquent.
2683
2684       <sect1>Remplacer un paquet ou changer son nom
2685 <p>
2686 Si vous vous trompez en nommant un paquet, vous devrez intervenir en deux
2687  étapes pour changer son nom. D'abord, modifiez
2688  votre fichier <file>debian/control</file> pour que votre nouveau paquet
2689  remplace et entre en conflit avec l'ancien paquet que vous voulez remplacer
2690  (reportez-vous à la <url id="&url-debian-policy;" name="charte Debian"> pour
2691  les détails). Une fois que votre paquet est installé dans l'archive, faites un
2692  rapport de bogue concernant le pseudo-paquet <tt>ftp.debian.org</tt> et
2693  demandez la suppression du paquet mal nommé. N'oubliez pas de réattribuer
2694  correctement les bogues du paquet en même temps.
2695 <p>
2696 D'autres fois, vous pouvez commettre une erreur en construisant le paquet et
2697 vous désirez le remplacer. La seule façon de faire est d'incrémenter le numéro de
2698  version et d'envoyer une nouvelle version. L'ancienne version expirera de la
2699  façon habituelle. Notez que ceci s'applique à chaque partie de votre paquet, y
2700  compris les sources&nbsp;: si vous désirez remplacer l'archive source amont de
2701  votre paquet, vous devez l'envoyer avec un numéro de version différent. Une
2702  possibilité simple est de remplacer <file>foo_1.00.orig.tar.gz</file> par
2703  <file>foo_1.00+0.orig.tar.gz</file>. Cette restriction donne à chaque fichier
2704  du site ftp un nom unique, ce qui aide à garantir la consistance dans le réseau
2705  des miroirs.
2706
2707       <sect1 id="orphaning">Abandonner un paquet
2708 <p>
2709 Si vous ne pouvez plus maintenir un paquet, vous devez en informer les autres et
2710  faire le nécessaire pour qu'il soit marqué <em>abandonné</em> (i.e.
2711  <em>orphaned</em>). Vous devriez aussi remplacer votre nom par <tt>Debian QA
2712  Group &orphan-address;</tt> dans le champ <tt>maintainer</tt> du paquet et
2713  faire un rapport de bogue sur le pseudo-paquet <package>wnpp</package>. Le
2714  titre de votre rapport de bogue devrait être
2715  «&nbsp;<tt>O<footnote><p><em>Orphaned</em>&nbsp;: abandonné.</footnote>:
2716  <var>paquet</var> &mdash; <var>courte description</var></tt>&nbsp;» pour
2717  indiquer que le paquet est abandonné. La gravité du bogue sera
2718  <em>normale</em>&nbsp;; si le paquet a une priorité standard ou supérieure,
2719  elle devrait être <em>importante</em>. Si vous le jugez nécessaire, envoyez une copie à
2720  &email-debian-devel; en mettant cette adresse dans le champ X-Debbugs-CC: de
2721  l'en-tête du message. N'utilisez pas le champ CC: car de cette manière le sujet
2722  du message ne contiendra pas le numéro du bogue.
2723 <p>
2724 Si vous avez simplement l'intention de donner le paquet, mais que vous pouvez
2725 conserver sa maintenance pour le moment, vous devriez à la place soumettre un
2726 rapport de bogue sur <package>wnpp</package> et l'intituler <tt>RFA: <var>paquet</var> --
2727 <var>description courte</var></tt>.
2728 <tt>RFA</tt> veut dire <em>Request For Adoption</em> (demande d'adoption).
2729         <p>
2730 Vous pouvez trouver plus d'informations sur les <url id="&url-wnpp;" name="pages
2731               web WNPP"><footnote><p><em>Work-needing and prospective
2732               packages</em>&nbsp;: paquets en souffrance et paquets
2733               souhaités.</footnote>.
2734
2735       <sect1 id="adopting">Adopter un paquet
2736 <p>
2737 Une liste des paquets en attente de nouveau responsable est disponible à la page
2738  <url id="&url-wnpp;" name="paquets en souffrance et paquets souhaités">. Si
2739  vous voulez prendre en charge un paquet de cette liste, reportez-vous à la page
2740  mentionnée ci-dessus pour connaître la procédure à suivre.
2741 <p>
2742 Prendre un paquet parce qu'il vous semble que celui-ci est négligé n'est pas
2743  correct &mdash;&nbsp;ce serait un détournement de paquet. Vous pouvez prendre
2744  contact avec le responsable actuel et lui demander si vous pouvez prendre en
2745  charge ce paquet. Si vous avez le sentiment qu'un responsable est parti sans
2746  prévenir depuis un moment, veuillez vous reporter à <ref id="mia-qa">).
2747 <p>
2748 Généralement, vous ne pouvez pas adopter un paquet sans l'accord du responsable
2749 actuel. Même s'il vous ignore, ce n'est pas une raison pour le faire. Les
2750 plaintes à propos des responsables devraient être portées sur la liste de
2751 diffusion des développeurs. Si la discussion ne se termine pas par une
2752 conclusion positive et que le problème est de nature technique, considérez de
2753 porter le cas à l'attention du comité technique (voir la <url name="page web du
2754 comité technique" id="&url-tech-ctte;"> pour plus d'information).
2755 <p>
2756 Si vous reprenez un vieux paquet, vous voudrez sûrement que le système de suivi
2757  des bogues indique que vous êtes le responsable du paquet. Cela se produira
2758  automatiquement une fois que vous aurez installé une nouvelle version du paquet
2759  dans l'archive avec le champ <tt>Maintainer</tt> à jour. Cela peut prendre
2760  quelques heures après le téléchargement. Si vous pensez ne pas avoir de mise à
2761  jour à faire pour un moment, vous pouvez utiliser le <ref
2762  id="pkg-tracking-system"> pour recevoir les rapports de bogue. Cependant,
2763  assurez-vous que cela ne pose aucun problème à l'ancien responsable de
2764  continuer à recevoir les bogues durant ce temps.
2765
2766     <sect id="porting">Le portage
2767 <p>
2768 Debian accepte un nombre croissant d'architectures. Même si vous n'êtes pas un
2769       porteur et même si vous n'utilisez qu'une architecture, il est de votre
2770       responsabilité de développeur d'être attentif aux questions de
2771       portabilité. C'est pourquoi il est important que vous lisiez ce chapitre
2772       même si vous n'êtes pas un porteur.
2773 <p>
2774 Porter un paquet consiste à faire un paquet binaire pour des architectures
2775       différentes de celle du paquet binaire fait par le responsable du paquet.
2776       C'est une activité remarquable et essentielle. En fait, les porteurs sont
2777       à l'origine de la plupart des compilations de paquets Debian. Pour un
2778       paquet binaire <em>i386</em>, par exemple, il faut compter une
2779       recompilation pour chaque autre architecture, soit un total de
2780       &number-of-arches; recompilations.
2781
2782
2783       <sect1 id="kind-to-porters">Être courtois avec les porteurs
2784 <p>
2785 Les porteurs ont une tâche remarquable et difficile car ils doivent gérer un
2786  grand nombre de paquets. Idéalement, tout paquet source devrait compiler sans
2787  modification. Malheureusement, c'est rarement le cas. Cette section contient
2788  une liste d'erreurs commises régulièrement par les responsables Debian &mdash;
2789  problèmes courants qui bloquent souvent les porteurs et compliquent inutilement
2790  leur travail.
2791 <p>
2792 Ici, la première et la plus importante chose est de répondre rapidement aux rapports de bogues et
2793  remarques soulevées par les porteurs. Traitez-les courtoisement, comme s'ils
2794  étaient co-responsables de vos paquets (ce qu'ils sont d'une certaine manière).
2795  Merci pour votre indulgence envers des rapports de bogue succincts ou peu
2796  clairs&nbsp;; faites de votre mieux pour éliminer le problème.
2797 <p>
2798 Les problèmes les plus couramment rencontrés par les porteurs sont causés par
2799  des erreurs de mise en paquet dans le paquet source. Voici un
2800  pense-bête pour les choses auxquelles vous devez être attentif&nbsp;:
2801 <enumlist>
2802   <item>
2803         Vérifiez que les champs <tt>Build-Depends</tt> et
2804         <tt>Build-Depends-Indep</tt> du fichier <file>debian/control</file> sont
2805         corrects. Le meilleur moyen de le vérifier est d'utiliser le paquet
2806         <package>debootstrap</package> pour créer un environnement
2807         <em>unstable</em> <em>chrooté</em> (voir <ref id="debootstrap">). Dans
2808         cet environnement <em>chrooté</em>, il faudra installer le paquet
2809         <package>build-essential</package> et tous les paquets mentionnés dans
2810         les champs <tt>Build-Depends</tt> et <tt>Build-Depends-Indep</tt>.
2811         Ensuite, vous essayerez de fabriquer votre paquet dans cet
2812         environnement. Ces étapes peuvent être automatisées en utilisant le
2813         programme <prgn>pbuilder</prgn> qui est fourni par le paquet de même
2814         nom (voir <ref id="pbuilder">).
2815         <p>
2816         Si vous n'arrivez pas à installer un environnement <em>chrooté</em>,
2817         <prgn>dpkg-depcheck</prgn> pourra peut-être vous aider (voir <ref
2818         id="dpkg-depcheck">).
2819         <p>
2820         Consultez la <url id="&url-debian-policy;" name="charte Debian"> pour en
2821         savoir plus sur les dépendances de fabrication.
2822   </item>
2823   <item>
2824         Ne choisissez pas d'autres valeurs que <em>all</em> ou <em>any</em> pour
2825         le champ architecture sans avoir de bonnes raisons pour le faire. Trop
2826         souvent, les développeurs ne respectent pas les instructions de la <url
2827         id="&url-debian-policy;" name="charte Debian">. Choisir la valeur
2828         «&nbsp;i386&nbsp;» est la plupart du temps incorrect.
2829   </item>
2830   <item>
2831         Vérifiez que votre paquet source est bon. Faites <tt>dpkg-source -x
2832         <var>paquet</var>.dsc</tt> pour vous assurer que le paquet se
2833         décompresse correctement. En utilisant le résultat de ce test,
2834         construisez votre paquet binaire à l'aide de la commande
2835         <prgn>dpkg-buildpackage</prgn>.
2836   </item>
2837   <item>
2838         Vérifiez que les fichiers <file>debian/files</file> et
2839         <file>debian/substvars</file> ne sont pas dans votre paquet source. Ils
2840         doivent être effacés par la cible <em>clean</em> de
2841         <file>debian/rules</file>.
2842   </item>
2843   <item>
2844         Assurez-vous que vous ne vous appuyez pas sur des éléments de
2845         configuration ou des logiciels installés ou modifiés localement. Par
2846         exemple, vous ne devriez jamais appeler des programmes du répertoire
2847         <file>/usr/local/bin</file> ou de répertoires équivalents. Essayez de ne
2848         pas vous appuyer sur des logiciels configurés de manière spéciale.
2849         Essayez de construire votre paquet sur une autre machine, même s'il
2850         s'agit de la même architecture.
2851   </item>
2852   <item>
2853         Ne vous appuyez pas sur une installation préexistante de votre paquet
2854         (un sous-cas de la remarque précédente).
2855   </item>
2856   <item>
2857         Si possible, ne vous appuyez pas sur une particularité présente dans un
2858         compilateur précis ou dans une certaine version d'un compilateur. Si
2859         vous ne pouvez pas faire autrement, assurez-vous que les dépendances de
2860         fabrication reflètent bien cette restriction. Dans ce cas, vous cherchez
2861         sûrement les problèmes car quelques architectures pourraient choisir un
2862         compilateur différent.
2863   </item>
2864   <item>
2865         Vérifiez que votre fichier <file>debian/rules</file> distingue les
2866         cibles <em>binary-arch</em> et <em>binary-indep</em> comme l'exige la
2867         charte Debian. Vérifiez que ces cibles sont indépendantes l'une de
2868         l'autre, c'est-à-dire, qu'il n'est pas nécessaire d'invoquer l'une de
2869         ces cibles avant d'invoquer l'autre. Pour vérifier cela, essayez
2870         d'exécuter <tt>dpkg-buildpackage -B</tt>.
2871   </item>
2872 </enumlist>
2873
2874
2875       <sect1 id="porter-guidelines">Instructions pour les mises à jour des
2876       porteurs
2877 <p>
2878 Si le paquet se construit tel quel sur l'architecture que vous visez, vous avez
2879  de la chance et votre travail est facile. Cette section s'applique dans ce
2880  cas&nbsp;; elle décrit comment construire et installer correctement votre
2881  paquet binaire dans l'archive Debian. Si vous devez modifier le paquet pour le
2882  rendre compilable sur votre architecture cible vous devez faire une mise à jour
2883  des sources, consultez la section <ref id="nmu-guidelines">.
2884 <p>
2885 Pour un envoi de portage, ne faites pas de changement dans les sources. Vous
2886  n'avez pas besoin de modifier les fichiers du paquet source (cela inclut le
2887  fichier <file>debian/changelog</file>).
2888 <p>
2889 La manière d'invoquer <prgn>dpkg-buildpackage</prgn> est la suivante&nbsp;:
2890  <tt>dpkg-buildpackage -B -m<var>adresse-porteur</var></tt>. Bien sûr, remplacez
2891  <var>adresse-porteur</var> par votre adresse électronique. Cette commande
2892  construira les parties du paquet qui dépendent de l'architecture, en utilisant
2893  la cible <em>binary-arch</em> de <file>debian/rules</file>.
2894 <p>
2895 Si vous travaillez sur une machine Debian pour vos efforts de portage et que
2896 vous devez signer votre envoi localement pour son acceptation dans l'archive,
2897 vous pouvez exécuter <prgn>debsign</prgn> sur votre fichier
2898 <file>.changes</file> pour qu'il soit signé de manière commode ou utilisez le
2899 mode de signature à distance de <prgn>dpkg-sig</prgn>.
2900
2901         <sect2 id="binary-only-nmu">
2902           Mises à jour indépendantes binaires ou recompilations
2903 <p>
2904 Parfois, l'envoi du portage initial pose problème car l'environnement dans lequel
2905  le paquet a été construit n'était pas bon (bibliothèques plus à jour ou
2906  obsolètes, mauvais compilateur, etc.). Il se peut que vous ayez à le recompiler
2907  dans un environnement mis à jour. Cependant, dans ce cas, vous devez changer
2908  le numéro de version pour que les mauvais anciens paquets soient remplacés dans
2909  l'archive Debian (<prgn>katie</prgn> refuse d'installer de nouveaux paquets
2910  s'ils n'ont pas un numéro de version supérieur à celui actuellement
2911  disponible).
2912 <p>
2913 Vous devez vous assurez que votre mise à jour indépendante binaire ne rend pas
2914  le paquet non installable. Cela peut arriver si un paquet source génère des
2915  paquets dépendants et indépendants de l'architecture qui dépendent
2916  les uns des autres <em>via</em> $(Source-Version).
2917
2918 <p>
2919  Malgré les modifications nécessaires du changelog, ce type de mise
2920  à jour reste une mise à jour indépendante binaire &mdash;&nbsp;il n'est pas
2921  nécessaire de reconsidérer le statut des paquets binaires des autres
2922  architectures pour les marquer périmés ou à recompiler.
2923 <p>
2924 Ces recompilations nécessitent des numéros de version «&nbsp;magiques&nbsp;»
2925  pour que le système de maintenance de l'archive comprennent que, bien qu'il y
2926  ait une nouvelle version, il n'y a pas eu de modification des sources. Si vous
2927  ne faites pas cela correctement, les administrateurs de l'archive rejetteront
2928  votre mise à jour (car il n'y aura pas de code source associé).
2929 <p>
2930 Cette «&nbsp;magie&nbsp;» associée à une mise à jour par recompilation est déclenchée en
2931  utilisant un troisième nombre dans la partie debian du numéro de version. Si,
2932  par exemple, la dernière version du paquet que vous recompilez était
2933  «&nbsp;2.9-3&nbsp;», votre mise à jour portera le numéro
2934  «&nbsp;2.9-3.0.1&nbsp;». Si cette version était «&nbsp;3.4-2.1&nbsp;» votre
2935  mise à jour portera le numéro «&nbsp;3.4-2.1.1&nbsp;».
2936 <p>
2937 De manière similaire aux envois du porteur initial, la façon correcte d'invoquer
2938  <prgn>dpkg-buildpackage</prgn> est <tt>dpkg-buildpackage -B</tt> pour ne
2939  construire que les parties dépendant de l'architecture du paquet.
2940
2941
2942         <sect2 id="source-nmu-when-porter">
2943           Quand faire une mise à jour indépendante source pour un portage&nbsp;?
2944 <p>
2945 Les porteurs qui font des mises à jour indépendantes sources suivent
2946    généralement les instructions de la section <ref id="nmu"> tout comme les
2947    non-porteurs. Les délais d'attente sont cependant plus courts car les
2948    porteurs doivent manipuler un grand nombre de paquets. À nouveau, la
2949    situation diffère selon la distribution visée. Elle varie également selon que
2950    l'architecture est candidate pour inclusion dans la prochaine version
2951    stable&nbsp;; les responsables de diffusion décident et annoncent quelles
2952    architectures sont candidates.
2953 <p>
2954 Si vous êtes porteur et faites une mise à jour pour <em>unstable</em>, les
2955    instructions précédentes sont applicables à deux différences près. Tout
2956    d'abord, le temps d'attente raisonnable &mdash;&nbsp;délai entre le moment où vous
2957    envoyez un rapport au système de suivi des bogues et le moment où vous pouvez
2958    faire une mise à jour indépendante <em>(NMU)</em>&nbsp;&mdash; est de sept jours.
2959    Ce délai peut être raccourci si le problème est crucial et met l'effort de
2960    portage en difficulté : c'est à la discrétion de l'équipe de portage.
2961    (Souvenez-vous, il ne s'agit pas d'un règlement, mais de recommandations
2962    communément acceptées). Pour les envois de <em>stable</em> ou
2963    <em>testing</em>, veuillez tout d'abord vous coordonner avec l'équipe de
2964    diffusion appropriée.
2965
2966 <p>
2967 Deuxième différence, les porteurs qui font des mises à jour indépendantes
2968    sources doivent choisir une gravité <em>sérieuse</em> (i.e. <em>serious</em>)
2969    ou supérieure quand ils envoient leur rapport au système de suivi des bogues.
2970    Ceci assure qu'un paquet source unique permet de produire un paquet binaire
2971    pour chaque architecture supportée au moment de la sortie de la distribution.
2972    Il est très important d'avoir un paquet source et un paquet binaire pour
2973    toutes les architectures pour être conforme à plusieurs licences.
2974 <p>
2975 Les porteurs doivent éviter d'implémenter des contournements pour des bogues de
2976    l'environnement de compilation, du noyau ou de la libc. Quelques fois, ces
2977    contournements sont inévitables. Si vous devez faire quelque chose de ce
2978    genre, marquez proprement vos modifications avec des <tt>#ifdef</tt> et
2979    documentez votre contournement pour que l'on sache le retirer une fois que le
2980    problème aura disparu.
2981 <p>
2982 Les porteurs peuvent aussi avoir une adresse où ils publient le résultat de leur
2983    travail pendant le délai d'attente. Ainsi, d'autres personnes peuvent
2984    bénéficier du travail du porteur même pendant ce délai. Bien sûr, ces
2985    adresses n'ont rien d'officiel, alors soyez sur vos gardes si vous les
2986    utilisez.
2987
2988
2989       <sect1 id="porter-automation">
2990           <heading>Infrastructure de portage et automatisation</heading>
2991           <p>
2992 Il existe une infrastructure et plusieurs outils pour faciliter l'automatisation
2993 du portage des paquets. Cette section contient un bref aperçu de cette
2994 automatisation et du portage de ces outils&nbsp;; veuillez vous reporter à la
2995 documentation des paquets ou les références pour une information complète.</p>
2996
2997           <sect2>
2998             <heading>Listes de diffusion et pages web</heading>
2999             <p>
3000 Les pages web contenant l'état de chaque portage peuvent être trouvées à <url
3001 id="&url-debian-ports;">.
3002             <p>
3003 Chaque portage de Debian possède sa propre liste de diffusion. La liste des
3004 listes de diffusion de portage peut être trouvée à <url
3005 id="&url-debian-port-lists;">. Ces listes sont utilisées pour coordonner les
3006 porteurs et pour mettre en relation les utilisateurs d'un portage donné avec les
3007 porteurs.</p>
3008           </sect2>
3009
3010       <sect2>
3011             <heading>Outils pour les porteurs</heading>
3012 <p>
3013 Les descriptions de plusieurs outils de portage peuvent être trouvées dans les
3014 <ref id="tools-porting">.</p>
3015
3016
3017         <sect2 id="buildd">
3018             <heading><package>buildd</package></heading>
3019 <p>
3020 Le système <package>buildd</package> est un système distribué pour la
3021    compilation d'une distribution. Il est habituellement utilisé en conjonction
3022    avec des automates de compilation&nbsp;; ce sont des machines
3023    «&nbsp;esclaves&nbsp;» qui récupèrent des paquets sources et tentent de les
3024    compiler. Il est aussi possible d'interagir par courrier électronique avec ce
3025    système. Cette interface est utilisée par les porteurs pour récupérer un
3026    paquet source (en général, un paquet qui ne peut être compilé
3027    automatiquement) et travailler dessus.
3028 <p>
3029 <package>buildd</package> n'est pas disponible sous forme de paquet&nbsp;;
3030    pourtant, la plupart des équipes de porteurs l'utilisent aujourd'hui ou ont
3031    prévu de l'utiliser bientôt. L'outil de construction automatisé réel est dans
3032    le paquet <package>sbuild</package>, voir la description dans <ref
3033    id="sbuild">. Le système <package>buildd</package> regroupe également un
3034    ensemble de composants très utiles, continuellement utilisés, mais non encore
3035    mis en paquet, tels que <prgn>andrea</prgn> et <prgn>wanna-build</prgn>.
3036 <p>
3037 Une partie des informations produites par <package>buildd</package>
3038    &mdash;&nbsp;utiles pour les porteurs&nbsp;&mdash; est disponible sur la
3039    toile à l'adresse <url id="&url-buildd;">. Ces informations
3040    incluent les résultats produits toutes les nuits par
3041    <prgn>andrea</prgn> (dépendances des sources) et
3042    <prgn>quinn-diff</prgn> (paquets à recompiler).
3043 <p>
3044 Nous sommes très fiers de ce système car il a de nombreux usages potentiels. Des
3045    groupes de développeurs indépendants peuvent utiliser ce système pour créer
3046    différentes saveurs de Debian &mdash;&nbsp;qui peuvent être ou ne pas être
3047    intéressantes pour tous (par exemple, une version de Debian compilée avec des
3048    vérifications relatives à <prgn>gcc</prgn>). Ce système nous permettra aussi
3049    de recompiler rapidement toute une distribution.
3050 </sect2>
3051
3052     <sect id="nmu">Mise à jour indépendante
3053 <p>
3054 Dans certaines circonstances, il est nécessaire qu'une personne autre que le
3055       responsable d'un paquet fasse une mise à jour de ce paquet. Ce type de
3056       mise à jour est désigné en anglais par l'expression <em>non-maintainer
3057       upload (NMU)</em>. Dans le présent document, nous traduisons librement
3058       cette expression par «&nbsp;mise à jour indépendante&nbsp;».
3059 <p>
3060 Cette section ne traite que des mises à jour indépendantes de source, c.-à-d.,
3061       les mises à jour qui envoient une nouvelle version d'un paquet. Pour les
3062       mises à jour indépendantes par des porteurs ou des membres de la QA,
3063       veuillez consulter <ref id="binary-only-nmu">. Si un buildd construit et
3064       envoie un paquet, cela est également à strictement parler une NMU binaire.
3065       Veuillez consulter <ref id="buildd"> pour plus d'informations.
3066 <p>
3067 La raison principale pour laquelle une mise à jour indépendante est réalisée est
3068       quand un développeur a besoin de corriger des paquets d'un autre
3069       développeur pour résoudre des problèmes sérieux ou des bogues paralysants
3070       ou quand le responsable d'un paquet ne peut pas
3071        fournir une correction dans un délai raisonnable.
3072 <p>
3073 Tout d'abord, il est capital que ces mises à jour indépendantes soient aussi peu
3074  intrusives que possible. Ne faites pas de ménage, ne modifiez pas le nom des
3075  modules ou des fichiers, ne déplacez pas les répertoires&nbsp;; plus
3076  généralement, ne corrigez pas ce qui n'est pas cassé. Faites un correctif aussi
3077  petit que possible. Si certaines choses froissent votre sens de l'esthétique,
3078  parlez-en au responsable du paquet, au responsable amont ou soumettez un
3079  rapport de bogue. Quoiqu'il en soit, les changements esthétiques <em>ne doivent
3080  pas</em> être effectués lors d'une mise à jour indépendante.
3081
3082 <p>
3083 Et souvenez-vous du Serment d'Hippocrate&nbsp; «&nbsp;Par dessus tout, ne pas
3084 faire de mal&nbsp;». Il est préférable qu'un paquet ait un bogue ouvert grave
3085 plutôt qu'un correctif non fonctionnel soit appliqué et que le bogue devienne
3086 caché, mais toujours non résolu.
3087
3088       <sect1 id="nmu-guidelines">Comment faire une mise à jour indépendante&nbsp;?
3089         <p>
3090 Les mises à jour indépendantes qui corrigent des bogues de gravité importante,
3091 sérieuse et plus élevée sont encouragées et acceptées. Vous devriez vous
3092 efforcer de contacter le responsable actuel du paquet&nbsp;: il est peut-être
3093 sur le point d'envoyer un correctif pour le problème ou il a peut-être une
3094 meilleure solution.
3095         <p>
3096 Les mises à jour indépendantes doivent être réalisées pour assister un
3097 responsable de paquet à résoudre des bogues. Les responsables devraient être
3098 reconnaissants pour cette aide et les personnes faisant la mise à jour
3099 indépendante devraient respecter les décisions du responsable et tenter
3100 d'aider personnellement le responsable dans son travail.
3101         <p>
3102 Une mise à jour indépendante devrait suivre toutes les conventions décrites dans
3103 cette section. Pour un envoi vers <em>testing</em> ou <em>unstable</em>, l'ordre
3104 suivant des étapes est recommandé&nbsp;:
3105         <p>
3106
3107 <list>
3108 <item>Vérifiez que les bogues du paquet qui devraient être corrigés par la
3109       mise à jour indépendante sont bien référencés dans le système de suivi des
3110       bogues. S'ils n'y sont pas, faites des rapports de bogue
3111       immédiatement.
3112 <item>Attendez la réponse du responsable quelques jours. Si vous n'obtenez
3113       aucune réponse, vous pouvez l'aider en lui envoyant le correctif qui
3114       corrige le bogue. N'oubliez pas de marquer le bogue avec le mot-clé
3115       «&nbsp;patch&nbsp;».
3116 <item>Patientez quelques jours. Si vous n'avez toujours aucune réponse du
3117       responsable, envoyez-lui un courrier annonçant votre intention
3118       d'effectuer une mise à jour indépendante du paquet. Préparez la NMU comme
3119       décrit dans cette section et testez-la soigneusement sur votre
3120       machine (cf. <ref id="sanitycheck">). Re-vérifiez que votre correctif
3121       n'a aucun effet de bord inattendu. Assurez-vous que votre correctif est
3122       aussi minimaliste et non intrusif que possible.
3123 <item>Envoyez votre paquet à incoming dans <file>DELAYED/7-day</file> (cf.
3124       <ref id="delayed-incoming">), envoyez le correctif final au responsable
3125       par le BTS et expliquez-lui qu'il a 7 jours pour réagir s'il veut annuler
3126       la NMU.
3127 <item>Suivez ce qui se passe, vous êtes responsable pour tout bogue que vous
3128       auriez introduit avec votre NMU. Vous devriez probablement utiliser le
3129       <ref id="pkg-tracking-system"> (PTS) pour vous tenir informé de l'état du
3130       paquet après votre NMU.
3131 </list>
3132 <p>
3133 Parfois, le responsable de version ou un groupe organisé de
3134  développeurs peut annoncer une certaine période de temps au cours de laquelle
3135  les règles de mise à jour indépendante seront plus souples. Ceci implique
3136  habituellement une période plus courte d'attente avant d'envoyer des
3137  correctifs et une période de délai plus courte. Il est important de noter que,
3138  même au cours de ces «&nbsp;chasses aux bogues&nbsp;», la personne
3139  désirant faire la mise à jour indépendante doit remplir des bogues et
3140  contacter en premier le développeur, et ensuite seulement passer à
3141  l'action.
3142
3143 Veuillez vous reporter à <ref id="qa-bsp"> pour des détails.
3144 <p>
3145 Pour la distribution <em>testing</em>, les règles peuvent être changées par les
3146 responsables de diffusion. Veuillez porter une attention spéciale au fait que le
3147 moyen habituel pour un paquet d'entrer dans <em>testing</em> est de passer par
3148 <em>unstable</em>.
3149 <p>
3150 Pour la distribution <em>stable</em>, veuillez y apporter une attention
3151 supplémentaire. Bien sûr, les responsables de version peuvent également modifier
3152 les règles ici. Veuillez vérifier avant l'envoi que tous vos changements sont
3153 acceptables pour inclusion dans la prochaine version stable par le responsable
3154 de diffusion.
3155 <p>
3156 Quand un bogue de sécurité est détecté, l'équipe de sécurité peut effectuer une
3157 mise à jour indépendante en utilisant ses propres règles. Veuillez vous référer
3158 à <ref id="bug-security"> pour plus d'informations.
3159 <p>
3160 Pour les différences pour les mises à jour indépendantes par les porteurs,
3161 veuillez voir <ref id="source-nmu-when-porter">.
3162 <p>
3163 Bien sûr, il est toujours possible de s'accorder avec un responsable pour des
3164 règles spéciales (comme quand le responsable demande «&nbsp;merci d'envoyer le
3165 correctif directement pour moi et pas de diff nécessaire&nbsp;»).
3166
3167         <sect1 id="nmu-version">Numéro de version pour les mises à jour
3168         indépendantes
3169 <p>
3170 Chaque fois que vous modifiez un paquet, le numéro de version de ce paquet doit
3171    changer, même pour la plus triviale des modifications. Notre système de
3172    gestion de paquets s'appuie sur ces numéros de version.
3173 <p>
3174 Si vous faites une mise à jour indépendante <em>(NMU)</em>, vous devez ajouter
3175    un numéro de version mineur à la partie <var>révision-debian</var> du numéro
3176    de version (la partie qui suit le dernier trait d'union). Ce numéro
3177    supplémentaire débutera à «&nbsp;1&nbsp;». Prenons pour exemple le paquet
3178    «&nbsp;foo&nbsp;» qui porte le numéro de version 1.1-3. Dans l'archive, le
3179    fichier de contrôle du paquet source serait <file>foo_1.1-3.dsc</file>. La
3180    version amont est «&nbsp;1.1&nbsp;» et la révision Debian est
3181    «&nbsp;3&nbsp;». La mise à jour indépendante suivante ajouterait le numéro de
3182    version mineur «&nbsp;.1&nbsp;» au numéro de révision Debian&nbsp;; le nouveau
3183    fichier de contrôle du paquet source serait alors
3184    <file>foo_1.1-3.1.dsc</file>.
3185 <p>
3186 Le numéro de révision mineur est nécessaire pour éviter de prendre un numéro de
3187    version au responsable officiel du paquet, ce qui pourrait perturber son
3188    travail. Cela a aussi l'avantage de montrer clairement que le paquet n'a pas
3189    été livré par le responsable officiel.
3190 <p>
3191 S'il n'y a pas de partie <var>révision-debian</var> dans le numéro de version du
3192    paquet, il faut en créer une en démarrant à «&nbsp;0.1&nbsp;». S'il est
3193    absolument nécessaire qu'une personne qui n'est pas responsable d'un paquet
3194    fasse une livraison basée sur une nouvelle version amont, cette personne doit
3195    choisir «&nbsp;0.1&nbsp;» comme numéro de révision Debian. Le mainteneur du
3196    paquet doit, lui, démarrer sa numérotation à «&nbsp;1&nbsp;».
3197 <p>
3198 Si vous envoyez un paquet vers <em>testing</em> ou <em>stable</em>, vous devrez
3199    parfois créer une branche («&nbsp;fork&nbsp;») dans l'arbre de numéro des version. Pour cela, vous
3200    pouvez utiliser des numéros de version comme 1.1-3sarge0.1.
3201  
3202
3203         <sect1 id="nmu-changelog">
3204             <heading>Les mises à jour indépendantes sources doivent être
3205             mentionnées dans le fichier changelog</heading>
3206 <p>
3207 Une personne qui fait une mise à jour indépendante source doit ajouter une
3208    entrée dans le fichier <file>changelog</file> qui indique les bogues corrigés
3209    et qui précise pourquoi cette mise à jour était nécessaire. Cette entrée
3210    comportera l'adresse de la personne ayant fait la mise à jour ainsi que la
3211    version livrée.
3212 <p>
3213 Par convention, dans le cas d'une mise à jour indépendante source
3214    <em>(NMU)</em>, l'entrée du fichier changelog débute par la ligne&nbsp;:
3215
3216 <example>
3217   * Non-maintainer upload
3218 </example>
3219
3220
3221         <sect1 id="nmu-patch">Mise à jour indépendante source et système de
3222         suivi des bogues
3223 <p>
3224 Un développeur qui n'est pas responsable d'un paquet doit faire aussi peu de
3225    modifications que possible et doit toujours envoyer ses modifications au
3226    système de suivi des bogues au format diff unifié (<tt>diff -u</tt>).
3227 <p>
3228 Et si vous recompilez simplement le paquet&nbsp;? Si vous avez simplement besoin
3229    de recompiler le paquet pour une seule architecture, vous pouvez faire une
3230    NMU binaire seulement comme décrit dans <ref id="binary-only-nmu"> qui ne
3231    nécessite pas qu'un correctif soit envoyé. Si vous désirez que le paquet soit
3232    recompilé pour toutes les architectures, vous devez alors faire une NMU
3233    source et vous devrez envoyer un correctif.
3234 <p>
3235 Si la mise à jour indépendante source (<em>source NMU</em>) corrige des bogues,
3236    ceux-ci doivent être marqués <em>fixed</em> (corrigé) dans le système de
3237    suivi des bogues plutôt que clos. Par convention, seul le responsable du
3238    paquet et la personne qui a ouvert le rapport de bogue ferment les
3239    rapports. Heureusement, le système d'archivage Debian reconnaît les mises à
3240    jours indépendantes et positionne correctement le statut des bogues à
3241    <em>fixed</em> si la personne qui fait la mise à jour a listé tous les bogues
3242    dans le fichier changelog en utilisant la syntaxe <tt>Closes:
3243    bug#<var>nnnnn</var></tt> (voir <ref id="upload-bugfix"> pour en savoir plus
3244    sur la fermeture de bogue par le fichier <file>changelog</file>). Ce passage
3245    au statut <em>fixed</em> assure que chacun sait que le bogue est corrigé par
3246    une mise à jour indépendante tout en laissant le rapport de bogue ouvert
3247    jusqu'à ce que le responsable du paquet incorpore les modifications de cette
3248    mise à jour dans la version officielle du paquet.
3249 <p>
3250 Après avoir fait une mise à jour indépendante, il vous faudra aussi envoyer
3251    cette information aux bogues existants que vous avez corrigés par votre NMU
3252    en incluant le diff unifié. Sinon, vous pouvez créer un nouveau rapport de
3253    bogue et inclure un correctif comprenant toutes les modifications que vous
3254    avez réalisées. Le responsable officiel
3255    pourra choisir d'appliquer le correctif, il pourra aussi employer une autre
3256    méthode pour régler le problème. Certains bogues sont corrigés dans la
3257    version amont, ce qui est une bonne raison pour annuler les modifications
3258    d'une mise à jour indépendante. Si le responsable choisit de mettre à jour le
3259    paquet plutôt que d'utiliser les correctifs de la mise à jour indépendante,
3260    il devra s'assurer que cette nouvelle version corrige effectivement chacun
3261    des bogues corrigés dans la mise à jour indépendante.
3262 <p>
3263 De plus, le responsable officiel devrait <em>toujours</em> conserver les entrées
3264    documentant une mise à jour indépendante dans le fichier
3265    <file>changelog</file>.
3266
3267
3268         <sect1 id="nmu-build">Fabriquer une mise à jour indépendante source
3269 <p>
3270 Les paquets faisant l'objet d'une mise à jour indépendante source sont
3271    construits comme les autres. Sélectionnez une distribution en utilisant les
3272    règles décrites dans la section <ref id="distribution"> en suivant toutes les
3273    prescriptions de la section <ref id="upload">.
3274 <p>
3275 Vérifiez que vous n'avez pas modifié la valeur du champ <tt>maintainer</tt> dans
3276    le fichier <file>debian/control</file>. Votre nom, mentionné dans l'entrée du
3277    fichier <file>debian/changelog</file> concernant la mise à jour, sera utilisé
3278    pour signer le fichier <file>.changes</file>.
3279
3280       <sect1 id="ack-nmu">Valider une mise à jour indépendante
3281 <p>
3282 Si l'un de vos paquets a subi une mise à jour indépendante, vous devez récupérer
3283  les changements dans votre copie des sources. Ceci est aisé, vous avez
3284  simplement à appliquer le correctif qui vous a été envoyé. Une fois ceci fait,
3285  vous devez fermer les bogues qui ont été marqués comme fixés par la mise à
3286  jour. Le moyen le plus simple est d'utiliser l'option <tt>-v</tt> de
3287  <prgn>dpkg-buildpackage</prgn> car cela vous permet d'inclure tous les
3288  changements depuis votre dernier envoi de responsable. Sinon, vous pouvez soit
3289  les fermer manuellement en envoyant les courriers
3290  nécessaires au BTS soit ajouter les <tt>closes: #nnnn</tt> nécessaires dans
3291  l'entrée du changelog de votre prochain envoi.
3292 <p>
3293 Dans tous les cas, vous ne devriez pas être perturbé par la NMU. Une NMU n'est
3294  pas une attaque personnelle contre le responsable. C'est une preuve que le
3295  paquet est important pour quelqu'un et qu'il est désireux de vous aider dans
3296  votre travail, vous devriez donc lui être reconnaissant. Vous pouvez également
3297  lui demander s'il serait intéressé pour vous aider sur une base plus régulière
3298  comme co-responsable ou responsable de secours (cf. <ref
3299  id="collaborative-maint">).
3300
3301       <sect1 id="nmu-vs-qa">Mise à jour indépendante ou envoi de QA&nbsp;?
3302 <p>
3303 Sauf si vous savez que le responsable est toujours actif, il est sage de
3304 vérifier le paquet pour voir s'il n'a pas été abandonné. La liste actuelle des
3305 paquets orphelins pour lesquels le champ responsable n'a pas été positionné
3306 correctement est disponible à <url id="&url-debian-qa-orphaned;">. Si vous
3307 effectuez une mise à jour indépendante sur un paquet incorrectement orphelin,
3308 veuillez positionner le responsable à «&nbsp;Debian QA Group
3309 &lt;packages@qa.debian.org&gt;&nbsp;». Dans ce cas, les bogues du paquet sont
3310 fermés et pas simplement marqués comme corrigés.
3311
3312       <sect1 id="nmu-who">Qui peut faire une mise à jour indépendante&nbsp;?
3313 <p>
3314 Seuls les responsables Debian officiels peuvent faire des mises à jour
3315  indépendantes binaire ou source. Un responsable officiel est une personne dont la clé est dans le
3316  porte-clés Debian. Tout autre personne est toutefois invitée à télécharger les paquets sources
3317  pour corriger des bogues&nbsp;; au lieu de faire des mises à jour
3318  indépendantes, ils pourront soumettre les correctifs qui le méritent au système
3319  de suivi des bogues. Les responsables apprécient presque toujours les
3320  correctifs et les rapports de bogue soignés.
3321
3322       <sect1 id="nmu-terms">Terminologie
3323 <p>
3324 Deux nouvelles expressions sont introduites dans cette section&nbsp;:
3325  «&nbsp;mise à jour indépendante source&nbsp;» et «&nbsp;mise à jour
3326  indépendante binaire&nbsp;». Ces deux expressions ont une signification
3327  technique précise dans ce document. Elles correspondent toutes deux au même type d'activité&nbsp;;
3328  elles impliquent toutes deux qu'une personne fait une mise à jour d'un paquet
3329  alors qu'elle n'est pas officiellement responsable de ce paquet. C'est pourquoi
3330  nous qualifions ces mises à jours
3331  d'<em>indépendantes</em><footnote>Contrairement à ce que pourrait laisser
3332  entendre cette traduction de <em>non-maintainer upload</em>, il n'est pas
3333  question d'agir sans prévenir le responsable au préalable (voir <ref
3334  id="nmu-guidelines">).</footnote>.
3335 <p>
3336 Une mise à jour indépendante source est une livraison de paquet faite par une
3337  personne qui n'est pas le responsable officiel de ce paquet avec pour objectif
3338  de corriger un bogue dans le paquet. Une mise à jour indépendante source
3339  implique toujours une modification des sources du paquet, même s'il ne s'agit
3340  que d'un changement dans le fichier <file>debian/changelog</file>. Ce
3341  changement peut tout aussi bien concerner la partie amont du source que la
3342  partie spécifique à Debian. Une mise à jour indépendante source peut aussi
3343  inclure des paquets spécifiques à une architecture tout comme un fichier
3344  <em>diff</em> modifié.
3345 <p>
3346 Une mise à jour indépendante binaire est constitué par la recompilation et
3347  l'archivage d'un paquet pour une architecture donnée. Il s'agit souvent du
3348  résultat d'un effort de portage. Une mise à jour indépendante binaire est la
3349  livraison d'un paquet compilé (souvent pour une autre architecture) à condition
3350  que cette compilation n'ait pas nécessité de modifications des sources. Dans de
3351  nombreux cas, les porteurs sont obligés de modifier les sources pour les rendre
3352  compilables sur leur architecture cible&nbsp;; il s'agira alors d'une mise à
3353  jour indépendante source et non d'une mise à jour indépendante binaire. Comme
3354  vous pouvez le remarquer, nous ne faisons pas de distinction entre les mises à
3355  jour indépendantes faites par des porteurs et les autres mises à jour
3356  indépendantes.
3357 <p>
3358 Les mises à jour indépendantes sources et binaires sont toutes deux couvertes
3359  par l'expression «&nbsp;mise à jour indépendante&nbsp;»
3360  (NMU<footnote><p>Non-maintainer upload</footnote>). Pourtant, cela conduit
3361  souvent à des confusions car beaucoup associent «&nbsp;mise à jour
3362  indépendante&nbsp;» et «&nbsp;mise à jour indépendante source&nbsp;». Il faut
3363  donc rester vigilant&nbsp;: utilisez toujours «&nbsp;mise à jour
3364  indépendante binaire&nbsp;» ou «NMU binaire&nbsp;» pour les mises à jour
3365  indépendantes de binaires seuls.
3366
3367
3368     <sect id="collaborative-maint">
3369        <heading>Maintenance collective</heading>
3370 <p>
3371 «&nbsp;Maintenance collective&nbsp;» est un terme décrivant le partage des
3372  devoirs de la maintenance d'un paquet Debian par plusieurs personnes. Cette
3373  collaboration est presque toujours une bonne idée car il en résulte
3374  généralement une meilleure qualité et un temps de correction de bogues plus
3375  petit. Il est fortement recommandé que les paquets de priorité
3376  <tt>Standard</tt> ou qui font partie de la base aient des co-responsables.
3377 <p>
3378 Habituellement, il y a un responsable principal et un ou plusieurs
3379  co-responsables. Le responsable principal est la personne dont le nom est indiqué
3380  dans le champ <tt>Maintainer</tt> du fichier <file>debian/control</file>. Les
3381  co-responsables sont tous les autres responsables.
3382 <p>
3383 Dans sa forme la plus simple, ajouter un nouveau co-responsable est assez
3384  simple&nbsp;:
3385 <list>
3386 <item><p> Donner au co-responsable un accès aux sources à partir desquelles vous
3387       construisez le paquet. Habituellement, cela implique que vous utilisiez un
3388       système de contrôle de version comme <prgn>CVS</prgn> ou
3389       <prgn>Subversion</prgn>.
3390 </item>
3391 <item><p> Ajouter les nom et adresse correctes du co-responsable au champ
3392       <tt>Uploaders</tt> dans la partie globale du fichier
3393       <file>debian/control</file>.
3394 <example>
3395 Uploaders: John Buzz &lt;jbuzz@debian.org&gt;, Adam Rex &lt;arex@debian.org&gt;
3396 </example>
3397 </item>
3398 <item><p>
3399       En utilisant le PTS (<ref id="pkg-tracking-system">), les
3400       co-responsables devraient s'inscrire eux-mêmes aux paquets sources
3401       appropriés.
3402 </item>
3403 </list>
3404 <p>
3405 La maintenance collective peut souvent être facilitée par l'utilisation
3406 d'outils sur Alioth (voir <ref id="alioth">).
3407       </sect>
3408
3409     <sect id="testing">
3410         <heading>La distribution <em>testing</em></heading>
3411         <p>
3412         <sect1 id="testing-basics">
3413         <heading>Bases</heading>
3414         <p>
3415 Les paquets sont habituellement installés dans la distribution <em>testing</em>
3416 après avoir atteint un certain degré de test dans <em>unstable</em>.
3417         <p>
3418 Ils doivent être en synchronisation pour toutes les architectures et ne doivent
3419 pas avoir de dépendances qui les rendraient ininstallables&nbsp;; ils doivent
3420 également n'avoir aucun bogue bloquant l'inclusion du paquet dans une version
3421 stable («&nbsp;release-critical&nbsp;») au moment où ils sont installés dans
3422 <em>testing</em>. Ainsi, <em>testing</em> devrait toujours être prête pour être
3423 une version candidate stable. Veuillez voir ci-dessous pour les détails.
3424
3425         <sect1 id="testing-unstable">
3426         <heading>Mises à jour depuis <em>unstable</em></heading>
3427         <p>
3428 Les scripts qui mettent à jour la distribution <em>testing</em> sont exécutés
3429  chaque jour après l'installation des paquets mis à jour. Ils fabriquent les
3430  fichiers <file>Packages</file> pour la distribution <em>testing</em>, mais ils
3431  le font d'une manière intelligente pour éviter toute incohérence et essayer de
3432  n'utiliser que des paquets sans bogue.
3433         <p>
3434 L'inclusion d'un paquet d'<em>unstable</em> est soumise aux conditions
3435 suivantes&nbsp;:
3436 <list>
3437     <item>
3438 Le paquet doit avoir été disponible dans <em>unstable</em> depuis 2, 5 ou
3439 10&nbsp;jours selon le champ d'urgence de l'envoi (élevée, moyenne ou basse).
3440 Veuillez noter que cette urgence est «&nbsp;collante&nbsp;» («&nbsp;sticky&nbsp;»), ce qui
3441 veut dire que l'envoi avec l'urgence la plus élevée depuis la précédente
3442 transition dans <em>testing</em> est prise en compte. Ces délais peuvent être
3443 doublés lors d'un gel de distribution, ou les transitions dans <em>testing</em>
3444 peuvent être complètement désactivées&nbsp;;
3445     <item>
3446 Il doit avoir moins de bogues empêchant l'intégration dans la distribution que la
3447 version actuellement disponible dans <em>testing</em>&nbsp;;
3448     <item>
3449 Il doit être disponible pour toutes les architectures pour lesquelles
3450 il a été auparavant construit. <ref id="madison"> peut être
3451 intéressant pour vérifier cette information&nbsp;;
3452     <item>
3453 Il ne doit pas casser les dépendances d'un paquet qui est déjà
3454 disponible dans <em>testing</em>&nbsp;;
3455     <item>
3456 Les paquets dont il dépend doivent soit être déjà disponibles dans
3457 <em>testing</em> soit être acceptés dans <em>testing</em> au
3458 même moment (et ils doivent remplire tous les critères nécessaires).
3459 </list>
3460         <p>
3461 Pour savoir si un paquet a progressé ou non dans <em>testing</em>, veuillez voir la
3462 sortie du script de <em>testing</em> sur la <url name="page web de la distribution testing"
3463 id="&url-testing-maint;"> ou utilisez le programme <prgn>grep-excuses</prgn>
3464 inclus dans le paquet <package>devscripts</package>. Si vous voulez rester 
3465 informé de la progression de vos paquets dans <em>testing</em>, vous pouvez
3466 facilement le mettre dans la <manref section="5" name="crontab">.
3467         <p>
3468 Le fichier <file>update_excuses</file> ne donne pas toujours la raison précise
3469  pour laquelle un paquet est refusé&nbsp;; on peut avoir à la chercher soi-même en
3470  regardant ce qui serait cassé avec l'inclusion du paquet. La <url
3471  id="&url-testing-maint;" name="page web de la distribution testing"> donne plus
3472  d'informations à propos des problèmes courants qui peuvent occasionner cela.
3473         <p>
3474 Parfois, certains paquets n'entrent jamais dans <em>testing</em> parce que le
3475  jeu des inter-relations est trop compliqué et ne peut être résolu par le
3476  script. Voir ci-dessous pour des détails.
3477         <p>
3478 Des analyses de dépendances plus avancées sont présentées sur
3479 <url id="http://bjorn.haxx.se/debian/"> &mdash; mais, attention, cette page affiche
3480 également les dépendances de construction qui ne sont pas considérées par
3481 britney.
3482
3483         <sect2 id="outdated">
3484         <heading>Désynchronisation</heading>
3485         <p>
3486 <!-- FIXME: better rename this file than document rampant professionalism? -->
3487 Pour le script de migration dans <em>testing</em>, «&nbsp;désynchronisé&nbsp;»
3488 (<em>outdated</em> veut dire ceci&nbsp;: il y a différentes versions dans
3489 <em>unstable</em> pour les architectures de version (à l'exception des
3490 architectures dans fuckedarches&nbsp;; fuckedarches est une liste des
3491 architectures qui ne suivent pas le rythme (dans update_out.py), mais
3492 actuellement cette liste est vide). «&nbsp;Désynchronisé&nbsp;» n'a rien à voir
3493 avec les architectures que le paquet fournit pour <em>testing</em>.
3494         <p>
3495 Considérons cet exemple&nbsp;:
3496         <p>
3497         <example>
3498 foo      | alpha | arm 
3499 ---------+-------+----
3500 testing  |   1   |  -
3501 unstable |   1   |  2
3502 </example>
3503         <p>
3504 Le paquet est désynchronisé pour alpha dans <em>unstable</em> et n'entrera pas
3505 dans <em>testing</em>. Supprimer foo de <em>testing</em> n'aiderait en rien, le
3506 paquet serait toujours désynchronisé pour alpha et ne se propagerait pas dans
3507 <em>testing</em>.
3508         <p>
3509 Cependant, si ftp-master supprime un paquet d'<em>unstable</em> (ici pour arm)&nbsp;:
3510         <p>
3511         <example>
3512 foo      | alpha | arm | hurd-i386
3513 ---------+-------+-----+----------
3514 testing  |   1   |  1  |    -
3515 unstable |   2   |  -  |    1
3516         </example>
3517         <p>
3518 Dans ce cas, le paquet est synchronisé pour toutes les architectures de version
3519 dans <em>unstable</em> (et l'architecture supplémentaire hurd-i386 ne compte pas
3520 car ce n'est pas une architecture de version).
3521         <p>
3522 Quelquefois, la question est soulevée pour savoir s'il est possible de permettre
3523 à des paquets de passer dans <em>testing</em> qui ne sont pas encore construits
3524 pour toutes les architectures&nbsp;: non. Simplement non. (Excepté si vous êtes
3525 responsable de glibc ou équivalent).
3526
3527         <sect2 id="removals">
3528             <heading>Suppressions de <em>testing</em></heading>
3529         <p>
3530 Parfois, un paquet est supprimé pour permettre l'inclusion d'un autre
3531 paquet&nbsp;: ceci ne se produit que pour permettre à un <em>autre</em> paquet
3532 d'entrer, ce dernier doit être prêt pour tous les autres critères.
3533 Considérons, par exemple, qu'un paquet <em>a</em> est en conflit avec la nouvelle version
3534 de <em>b</em>&nbsp; alors <em>a</em> peut être supprimé pour permettre l'entrée de <em>b</em>.
3535         <p>
3536 Bien sûr, il existe une autre raison pour supprimer un paquet de
3537 <em>testing</em>&nbsp;: le paquet est trop bogué (et avoir un seul bogue RC est
3538 suffisant pour être dans cet état).
3539
3540         <sect2 id="circular">
3541         <heading>Dépendances circulaires</heading>
3542         <p>
3543 Une situation qui n'est pas très bien gérée par britney est si un paquet <em>a</em>
3544 dépend de la nouvelle version d'un paquet <em>b</em> et vice versa.
3545         <p>
3546 Voici un exemple&nbsp;:
3547         <p>
3548         <example>
3549   | testing         |  unstable
3550 --+-----------------+------------
3551 a | 1; dépend: b=1 |  2; dépend: b=2
3552 b | 1; dépend: a=1 |  2; dépend: a=2
3553         </example>
3554         <p>
3555 Aucun des paquets <em>a</em> et <em>b</em> ne sera considéré pour mise à jour.
3556         <p>
3557 Actuellement, ceci nécessite un coup de pouce manuel de l'équipe de
3558 diffusion. Veuillez les contacter en envoyant un courrier électronique à
3559 debian-release@lists.debian.org si cela se produit pour l'un de vos paquets.
3560
3561
3562         <sect2>
3563             <heading>Influence de paquet dans <em>testing</em></heading>
3564         <p>
3565 Généralement, l'état d'un paquet dans <em>testing</em> ne change rien pour la
3566 transition de la prochaine version d'<em>unstable</em> vers <em>testing</em>,
3567 avec deux exceptions&nbsp;: si le nombre de bogues RC du paquet est réduit, le
3568 paquet peut migrer même s'il a encore des bogues RC. La seconde exception est
3569 que si la version du paquet dans <em>testing</em> est désynchronisée entre les
3570 différentes architectures, alors toute architecture peut être mise à jour vers
3571 la version du paquet source&nbsp;; cependant, cela ne peut se produire que si le
3572 paquet a été précédemment forcé, si l'architecture est dans fuckedarches ou s'il
3573 n'y avait pas du tout de paquet binaire de cette architecture présent dans
3574 <em>unstable</em> lors de la migration dans <em>testing</em>.
3575         <p>
3576 En résumé, cela veut dire&nbsp;: la seule influence qu'un paquet de
3577 <em>testing</em> a sur la nouvelle version du même paquet est que la nouvelle
3578 version peut rentrer plus facilement.
3579
3580         <sect2 id="details">
3581         <heading>Détails</heading>
3582         <p>
3583 Si vous êtes intéressé par les détails, voici comment fonctionne britney&nbsp;:
3584         <p>
3585 Les paquets sont examinés pour savoir si ce sont des candidats valides. Cela
3586 donne le fichier «&nbsp;update excuses&nbsp;». Les raisons les plus communes
3587 pour lesquelles un paquet n'est pas considéré sont la jeunesse du paquet, le
3588 nombre de bogues RC et la désynchronisation pour certaines architectures. Pour
3589 cette partie, les responsables de version ont des marteaux de toute taille pour
3590 forcer britney à considérer un paquet. (Le gel de la base est également codé
3591 dans cette partie de britney.) (Il y a une chose semblable pour les mises à jour
3592 binaires pures, mais cela n'est pas décrit ici. Si vous êtes intéressé par cela,
3593 veuillez étudier attentivement le code.)
3594         <p>
3595 Maintenant, la partie la plus complexe se produit&nbsp;: britney tente de mettre
3596 à jour <em>testing</em> avec des candidats valides&nbsp;; en premier, chaque
3597 paquet individuellement, puis des groupes de plus en plus larges de paquets
3598 ensemble. Chaque tentative est acceptée si <em>unstable</em> n'est pas moins
3599 ininstallable après la mise à jour qu'avant celle-ci. (Avant et après cette
3600 partie, certains coups de pouce sont traités&nbsp;; mais, comme seuls les
3601 responsables de version peuvent positionner des coups de pouce, cela n'est
3602 probablement pas très important pour vous.)
3603         <p>
3604 Si vous voulez voir plus de détails, vous pouvez le voir dans
3605 merkel:/org/ftp.debian.org/testing/update_out/ (ou dans
3606 ~aba/testing/update_out pour voir une configuration avec un fichier de paquets
3607 plus petit). Par le web, c'est à <url
3608 id="http://ftp-master.debian.org/testing/update_out_code/">.
3609         <p>
3610 Les coups de pouce sont visibles sur <url
3611 id="http://ftp-master.debian.org/testing/hints/">.
3612
3613
3614         <sect1 id="t-p-u">
3615           <heading>Mises à jour directes dans <em>testing</em></heading>
3616           <p>
3617 La distribution <em>testing</em> est peuplée avec des paquets en provenance
3618 d'<em>unstable</em> selon des règles expliquées ci-dessus. Cependant, dans
3619 certains cas, il est nécessaire d'envoyer des paquets construits seulement pour
3620 <em>testing</em>. Pour cela, vous pouvez envoyer vos paquets vers
3621 <em>testing-proposed-updates</em>.
3622           <p>
3623 Souvenez-vous que les paquets envoyés là ne sont pas traités automatiquement,
3624 ils doivent passer entre les mains du responsable de distribution. Vous devez
3625 donc avoir une bonne raison pour les y envoyer. Pour savoir ce que
3626 représente une bonne raison aux yeux des responsables de distribution, vous
3627 devriez lire les instructions données qu'ils envoient régulièrement sur
3628 &email-debian-devel-announce;.
3629           <p>
3630 Vous ne devriez pas envoyer un paquet à <em>testing-proposed-updates</em> quand
3631 vous pouvez le mettre à jour par <em>unstable</em>. Si vous ne pouvez faire
3632 autrement (par exemple, parce que vous avez une nouvelle version de
3633 développement dans <em>unstable</em>), vous pouvez utiliser cette facilité, mais il est
3634 recommandé de demander l'autorisation du responsable de distribution auparavant.
3635 Même si un paquet est gelé, des mises à jour par <em>unstable</em> sont possibles
3636 si l'envoi dans <em>unstable</em> ne tire pas de nouvelles dépendances.
3637           <p>
3638 Les numéros de version sont habituellement choisis en ajoutant le nom de
3639 code de la distribution <em>testing</em> et un numéro incrémenté, comme
3640 1.2sarge1 pour le premier envoi dans <em>testing-proposed-updates</em> du paquet
3641 en version&nbsp;1.2.
3642         <p>
3643 Veuillez vous assurer que vous n'oubliez aucun des éléments suivants lors de
3644 votre envoi&nbsp;:
3645 <list>
3646 <item> vérifiez que votre paquet doit vraiment aller dans
3647 <em>testing-proposed-updates</em> et ne peut pas passer par
3648 <em>unstable</em>&nbsp;;
3649 <item> vérifiez que vous n'incluez que le minimum de changements&nbsp;;
3650 <item> vérifiez que vous incluez une explication appropriée dans le
3651 changelog&nbsp;;
3652 <item> vérifiez que vous avez bien indiqué <em>testing</em> ou
3653 <em>testing-proposed-updates</em> comme votre distribution cible&nbsp;;
3654 <item> vérifiez que vous avez construit et testé votre paquet dans
3655 <em>testing</em> et non dans <em>unstable</em>&nbsp;;
3656 <item> vérifiez que votre numéro de version est plus élevé que les versions de
3657 <em>testing</em> et de <em>testing-proposed-updates</em> et moins élevé que
3658 celle de <em>unstable</em>&nbsp;;
3659 <item> après l'envoi et la construction réussie sur toutes les plates-formes,
3660 contactez l'équipe de diffusion à &email-debian-release; et demandez-leur
3661 d'approuver votre envoi.
3662 </list>
3663
3664
3665         <sect1 id="faq">
3666         <heading>Questions fréquemment posées</heading>
3667           <p>
3668
3669         <sect2 id="rc">
3670         <heading>Qu'est-ce que sont les bogues bloquant l'intégration dans la
3671         version stable et comment sont-ils comptés&nbsp;?</heading>
3672           <p>
3673 Tous les bogues de gravité assez élevée sont par défaut considérés
3674 comme bloquant l'intégration du paquet dans la version stable&nbsp;;
3675 actuellement, ce sont les bogues critiques, graves et sérieux.
3676           <p>
3677 Certains bogues sont supposés avoir un impact sur les chances que le paquet a
3678 d'être diffusé dans la version stable de Debian&nbsp;: en général, si un paquet
3679 a des bogues bloquants, il n'ira pas dans <em>testing</em> et par conséquent,
3680 ne pourra pas être diffusé dans <em>stable</em>.
3681           <p>
3682 Le compte des bogues d'<em>unstable</em> est effectué avec tous les bogues
3683 bloquants sans étiquette de version (comme <em>potato</em>, <em>woody</em>) ou
3684 avec une étiquette <em>sid</em> et également s'ils ne sont ni corrigés ou
3685 marqués avec <em>sarge-ignore</em>.
3686 Le compte des bogues de <em>testing</em> pour un paquet est condiséré comme à
3687 peu près le nombre de bogues d'<em>unstable</em> lors du dernier pointage quand
3688 la version <em>testing</em> a été égale à la version <em>unstable</em>.
3689         <p>
3690 Cela changera après la sortie de <em>Sarge</em> dès que nous aurons des versions
3691 dans le système de suivi des bogues.
3692
3693         <sect2>
3694             <heading>Comment est-ce que l'installation d'un paquet dans
3695             <em>testing</em> peut casser d'autres paquets&nbsp;?</heading>
3696           <p>
3697 La structure des archives de la distribution est faite de telle façon qu'elles
3698 ne peuvent contenir qu'une version d'un paquet&nbsp;; un paquet est défini par
3699 son nom. Donc, quand le paquet source acmefoo est installé dans
3700 <em>testing</em> avec ses paquets binaires acme-foo-bin, acme-bar-bin,
3701 libacme-foo1 et libacme-foo-dev, l'ancienne version est supprimée.
3702           <p>
3703
3704 Cependant, l'ancienne version pouvait fournir à un paquet binaire un vieux
3705 soname d'une bibliothèque, comme libacme-foo0. Supprimer l'ancien acmefoo va
3706 supprimer libacme-foo0, ce qui va casser tout paquet qui en dépend.
3707           <p>
3708 Évidemment, cela touche principalement des paquets qui fournissent des jeux
3709 changeants de paquets binaires dans différentes version (par suite,
3710 principalement des bibliothèques). Cependant, cela va aussi toucher des paquets
3711 sur lesquels une dépendance versionnée a été déclarée du type ==, <= ou <<.
3712           <p>
3713 Quand le jeu de paquets binaires fournis par un paquet source change de cette
3714 façon, tous les paquets qui dépendent des anciens binaires doivent être mis à
3715 jour pour dépendre de la nouvelle version à la place. Comme l'installation d'un
3716 tel paquet source dans <em>testing</em> casse tous les paquets qui en dépendent
3717 dans <em>testing</em>, une certaine attention doit y être portée&nbsp;: tous les
3718 paquets en dépendant doivent être mis à jour et prêts à être installés eux-même
3719 pour qu'ils ne cassent pas et, une fois que tout est prêt, une intervention
3720 manuelle du responsable de version ou d'un de ses assistants est normalement
3721 requise.
3722           <p>
3723 Si vous avez des problèmes avec des groupes compliqués de paquets comme ceci,
3724 contactez debian-devel ou debian-release en demandant de l'aide.
3725       </sect>
3726
3727
3728   <chapt id="best-pkging-practices">
3729     <heading>Les meilleurs pratiques pour la construction des paquets
3730 <p>
3731 La qualité de Debian est principalement due à la <url id="&url-debian-policy;"
3732 name="charte Debian"> qui définit explicitement les obligations que tous les
3733 paquets doivent suivre. Mais c'est également grâce à une histoire partagée
3734 d'expériences qui va au-delà de la charte Debian, une accumulation d'années
3735 d'expérience pour la construction des paquets&nbsp;; des développeurs de grand
3736 talent ont créé de bons outils qui vous aideront, vous, responsable Debian, à
3737 créer et maintenir d'excellents paquets.
3738
3739 <p>
3740 Ce chapitre fournit les meilleurs pratiques pour les développeurs Debian. Ce ne
3741 sont que des recommandations, non pas des obligations ou des règles. Ce sont
3742 seulement des astuces et conseils subjectifs et des liens collectés pour les
3743 développeurs Debian. Prenez et choisissez ce qui vous convient le mieux.
3744
3745     <sect id="bpp-debian-rules">
3746         <heading>Les meilleures pratiques pour le fichier <file>debian/rules</file></heading>
3747         <p>
3748 Les recommandations suivantes s'appliquent au fichier <file>debian/rules</file>.
3749 Comme ce fichier contrôle le processus de compilation et qu'il sélectionne les
3750 fichiers inclus dans le paquet (directement ou indirectement), il s'agit
3751 habituellement du fichier sur lequel les responsables passent le plus de temps.
3752
3753
3754         <sect1 id="helper-scripts">Scripts d'aide
3755 <p>
3756 La raison sous-jacente à l'utilisation des scripts d'aide dans le fichier
3757 <file>debian/rules</file> est que cela permet aux responsables d'utiliser et de
3758 partager une logique commune pour un grand nombre de paquets. Prenez, par
3759 exemple, l'installation des entrées de menu&nbsp;: vous avez besoin de
3760 placer un fichier dans <file>/usr/lib/menu</file> et d'ajouter des commandes aux
3761 scripts de maintenance pour enregistrer et désenregistrer ces entrées de menu.
3762 Comme il s'agit d'une chose très commune, pourquoi chaque
3763 responsable devrait-il écrire sa propre version, parfois avec des bogues&nbsp;?
3764 Supposons également que le répertoire de menu soit modifié, chaque paquet
3765 devrait être modifié.
3766 <p>
3767 Les scripts d'aide peuvent résoudre ces problèmes. En supposant que vous vous
3768 conformiez aux conventions attendues par le script d'aide, celui-ci prend soin
3769 de tous les détails. Les changements dans la charte peuvent alors être faits
3770 dans le script d'aide&nbsp;; les paquets ont alors simplement besoin d'être
3771 reconstruits avec la nouvelle version du script et sans aucun changement
3772 supplémentaire.
3773 <p>
3774 L'<ref id="tools"> contient plusieurs systèmes d'aide. Le plus
3775 courant et le meilleur (à notre avis) système est <package>debhelper</package>.
3776 Les précédents systèmes d'aide comme <package>debmake</package> étaient
3777 «&nbsp;monolithiques&nbsp;»&nbsp;: vous ne pouviez pas choisir quelles parties
3778 intéressantes vous pouviez utiliser, mais vous étiez obligé de choisir le
3779 système pour tout faire. <package>debhelper</package>, à l'inverse, consiste en
3780 un certain nombre de petits programmes <prgn>dh_*</prgn>. Par exemple,
3781 <prgn>dh_installman</prgn> installe et compacte les pages de manuel,
3782 <prgn>dh_installmenu</prgn> installe les fichiers de menu et ainsi de suite.
3783 Ainsi, il offre une flexibilité suffisante pour pouvoir utiliser les scripts
3784 d'aide quand ils sont utiles, en complément de commandes définies manuellement
3785 dans le fichier <file>debian/rules</file>.
3786 <p>
3787 Vous pouvez débuter avec <package>debhelper</package> en lisant <manref
3788 name="debhelper" section="1"> et en regardant les exemples fournis avec le
3789 paquet. <prgn>dh_make</prgn> du paquet <package>dh-make</package> (voir <ref
3790 id="dh-make">) peut être utilisé pour convertir un paquet source
3791 «&nbsp;vierge&nbsp;» en une version utilisant <package>debhelper</package>. Ce
3792 raccourci ne devrait cependant pas vous faire croire que vous n'avez pas besoin
3793 de comprendre les scripts individuels <prgn>dh_*</prgn>. Si vous comptez
3794 utiliser un système d'aide, vous devez prendre le temps d'apprendre à utiliser
3795 ce système pour savoir ce que vous pouvez en attendre ainsi que son
3796 comportement.
3797 <p>
3798 Plusieurs personnes pensent que des fichiers <file>debian/rules</file> vierges
3799 sont préférables car vous n'avez pas à apprendre les détails internes d'un
3800 quelconque système d'aide. La décision vous appartient complètement. Utilisez ce
3801 qui vous convient. Plusieurs exemples de fichiers <file>debian/rules</file> sont
3802 disponibles à <url id="&url-rules-files;">.
3803
3804         <sect1 id="multiple-patches">
3805           <heading>Séparer vos correctifs en plusieurs fichiers</heading>
3806 <p>
3807 Les gros paquets peuvent avoir plusieurs bogues que vous devez gérer. Si
3808  vous corrigez sans faire attention les bogues dans les sources, vous ne
3809  pourrez pas différencier facilement les nombreux correctifs que vous aurez
3810  appliqués. Cela peut devenir très compliqué de mettre à jour le paquet avec
3811  une nouvelle version amont qui intègre certains correctifs (mais pas tous).
3812  Vous ne pouvez pas prendre l'ensemble des correctifs (par exemple, dans les
3813  fichiers <file>.diff.gz</file>) et décider quels correctifs il vous faut
3814  enlever parce que les bogues ont été corrigés en amont.
3815 <p>
3816 Malheureusement, le système de création des paquets tel qu'il est actuellement
3817 ne fournit pas de moyen de séparer les correctifs en plusieurs fichiers.
3818 Cependant, il existe des moyens de séparer les correctifs&nbsp;: les fichiers
3819 correctifs sont livrés dans le fichier correctif Debian
3820 (<file>.diff.gz</file>), habituellement dans le répertoire <file>debian/</file>.
3821 La seule différence est qu'ils ne sont pas appliqués immédiatement par
3822 dpkg-source, mais par la règle <tt>build</tt> du fichier
3823 <file>debian/rules</file>. Inversement, ils sont annulés par la règle
3824 <tt>clean</tt>.
3825 <p>
3826 <prgn>dbs</prgn> est l'une des approches les plus populaires pour cela. Il fait
3827 ce qui est décrit ci-dessus et fournit la possibilité de créer de nouveaux
3828 correctifs et de mettre à jour d'anciens correctifs. Veuillez vous reporter au
3829 paquet <package>dbs</package> pour plus d'informations et au paquet
3830 <package>hello-dbs</package> pour un exemple.
3831 <p>
3832 <prgn>dpatch</prgn> fournit également ces fonctions, mais il est prévu pour être
3833 encore plus facile d'utilisation. Veuillez voir le paquet
3834 <package>dpatch</package> pour la documentation et des exemples (dans
3835 <file>/usr/share/doc/dpatch</file>).
3836 <p>
3837
3838         <sect1 id="multiple-binary">Paquets binaires multiples
3839 <p>
3840 Un simple paquet source va souvent permettre de construire plusieurs paquets
3841  binaires différents, que ce soit pour fournir plusieurs saveurs du même
3842  paquet (par exemple, le paquet source <package>vim</package>) ou pour créer
3843  plusieurs petits paquets au lieu d'un seul gros (par exemple, si
3844  l'utilisateur peut n'installer que la partie dont il a besoin et ainsi
3845  économiser de l'espace disque).
3846 <p>
3847 Le second cas peut facilement être géré dans le fichier
3848  <file>debian/rules</file>. Vous avez simplement besoin de déplacer les fichiers
3849  appropriés du répertoire de construction dans les arborescence temporaires du
3850  paquet. Vous pouvez le faire en utilisant <prgn>install</prgn>
3851  ou <prgn>dh_install</prgn> du paquet <package>debhelper</package>.
3852  Assurez-vous de vérifier les différentes permutations de paquets, en
3853  garantissant que vous avez bien défini les dépendances entre les paquets dans
3854  le fichier <file>debian/control</file>.
3855 <p>
3856 Le premier cas est un peu plus difficile car il implique de multiples
3857  recompilations du même logiciel, mais avec différentes options de
3858  configuration. Le paquet source <package>vim</package> est un exemple de la
3859  façon de gérer cela avec un fichier <file>rules</file> écrit à la main.
3860
3861 <!-- &FIXME; Find a good debhelper example with multiple configure/make cycles
3862      -->
3863 </sect1>
3864
3865
3866     <sect id="bpp-debian-control">
3867         <heading>Les meilleures pratiques pour le fichier
3868         <file>debian/control</file></heading>
3869         <p>
3870 Les pratiques suivantes sont relatives au fichier <file>debian/control</file>.
3871 Elles viennent en complément des <url
3872 id="&url-debian-policy;ch-binary.html#s-descriptions" name="règles pour
3873 les descriptions des paquets">.
3874 <p>
3875 La description du paquet, telle qu'elle est définie par le champ correspondant
3876 dans le fichier <file>control</file>, contient à la fois le résumé du paquet et
3877 la description longue pour le paquet. <ref id="bpp-desc-basics"> décrit des
3878 lignes générales pour les deux parties de la description. Ensuite, <ref
3879 id="bpp-pkg-synopsis"> fournit des principes spécifiques pour le résumé et <ref
3880 id="bpp-pkg-desc"> contient des principes spécifiques pour la description
3881 longue.
3882
3883         <sect1 id="bpp-desc-basics">
3884           <heading>Les règles générales pour les descriptions des paquets</heading>
3885 <p>
3886 La description du paquet devrait être écrite pour l'utilisateur moyen,
3887 l'utilisateur qui va utiliser et bénéficier du paquet. Par exemple, les paquets
3888 de développement sont pour les développeurs et leur description peut utiliser un
3889 langage technique. Pour les applications à but plus général comme un éditeur, la
3890 description devrait être écrite pour un non-spécialiste.
3891 <p>
3892 Notre critique des descriptions des paquets nous amène à conclure que la plupart
3893 des descriptions des paquets sont techniques, c'est-à-dire, qu'elles ne sont pas
3894 écrites pour être comprises par les non-spécialistes. À moins que
3895 votre paquet ne soit que pour les techniciens, c'est un problème.
3896 <p>
3897 Comment écrire pour les non-spécialistes&nbsp;? Évitez le jargon.
3898 Évitez de vous référer à d'autres applications et cadres de travail avec
3899 lesquels l'utilisateur n'est pas forcément familier &mdash;&nbsp;«&nbsp;GNOME&nbsp;»
3900 ou «&nbsp;KDE&nbsp;» sont corrects car les utilisateurs sont probablement
3901 familiers avec ces termes, mais «&nbsp;GTK+&nbsp;» ne l'est probablement pas.
3902 Ne supposez aucune connaissance. Si vous devez utiliser des termes techniques,
3903 introduisez-les.
3904 <p>
3905 Soyez objectif. Les descriptions de paquet ne sont pas un endroit pour
3906 promouvoir votre paquet, quel que soit l'amour que vous lui portez.
3907 Rappelez-vous que le lecteur n'a pas forcément les mêmes priorités que vous.
3908 <p>
3909 Des références aux noms de tout autre paquet de logiciels, noms de protocoles,
3910 standards ou spécifications devraient utiliser leurs formes canoniques si elles
3911 existent. Par exemple, utilisez «&nbsp;X Window System&nbsp;», «&nbsp;X11&nbsp;»
3912 ou «&nbsp;X&nbsp;» et non «&nbsp;X Windows&nbsp;», «&nbsp;X-Windows&nbsp;» ou
3913 «&nbsp;X Window&nbsp;». Utilisez «&nbsp;GTK+&nbsp;» et non «&nbsp;GTK&nbsp;» ou
3914 «&nbsp;gtk&nbsp;». Utilisez «&nbsp;GNOME&nbsp;» et non «&nbsp;Gnome&nbsp;».
3915 Utilisez «&nbsp;PostScript&nbsp;» et non «&nbsp;Postscript&nbsp;» ou
3916 «&nbsp;postscript&nbsp;».
3917 <p>
3918 Si vous avez des problèmes pour écrire votre description, vous pouvez l'envoyer à
3919 &email-debian-l10n-english; et demander un retour d'informations.
3920
3921         </sect1>
3922
3923 <sect1 id="bpp-pkg-synopsis">
3924           <heading>Le résumé du paquet ou description courte</heading>
3925 <p>
3926 La ligne de résumé (la description courte) devrait être concise. Elle ne doit
3927 pas répéter le nom du paquet (c'est une règle).
3928 <p>
3929 C'est une bonne idée de penser au résumé comme à une clause apposée et non une
3930 phrase complète. Une clause apposée est définie dans WordNet comme une relation
3931 grammaticale entre un mot et une phrase pronominale qui la suit, par exemple
3932 «&nbsp;Rudolph, le renne au nez rouge&nbsp;». La clause apposée ici est
3933 «&nbsp;le renne au nez rouge&nbsp;». Comme le résumé est une clause et non une
3934 phrase complète, nous recommandons de ne pas la commencer par une majuscule et
3935 de ne pas la finir par un point. Il ne doit pas non plus commencer avec un
3936 article, défini («&nbsp;le&nbsp;») ou indéfini («&nbsp;un&nbsp;»).
3937 <p>
3938 Cela peut vous aider d'imaginer le résumé combiné avec le nom du paquet de
3939 la façon suivante&nbsp;:
3940
3941 <example><var>nom-paquet</var> est un <var>résumé</var>.</example>
3942
3943 Sinon, il peut être plus compréhensible de le voir comme
3944
3945 <example><var>nom-paquet</var> est <var>résumé</var>.</example>
3946
3947 ou, si le nom du paquet est lui-même un pluriel (comme
3948 «&nbsp;developer-tools&nbsp;»)
3949
3950 <example><var>nom-paquet</var> sont <var>résumé</var>.</example>
3951
3952 Cette façon de former une phrase à partir du nom du paquet et du résumé devrait
3953 être considérée comme une heuristique et non comme une règle stricte. Il y a
3954 certains cas où cela n'a aucun sens de former une phrase.
3955
3956         </sect1>
3957
3958         <sect1 id="bpp-pkg-desc">
3959             <heading>La description longue</heading>
3960 <p>
3961 La description longue du paquet est la première information dont dispose
3962 l'utilisateur avant d'installer un paquet. Aussi, elle devrait fournir toutes
3963 les informations nécessaires pour le laisser décider de l'installation du
3964 paquet. Vous pouvez supposer que l'utilisateur a déjà lu le résumé du paquet.
3965 <p>
3966 La description longue devrait toujours être constituée de phrases complètes.
3967 <p>
3968 Le premier paragraphe de la description longue devrait répondre aux questions
3969 suivantes&nbsp;: qu'est-ce que fait le paquet&nbsp;? Quelle tâche aide-t-il
3970 l'utilisateur à accomplir&nbsp;? Il est important de décrire ceci d'une manière
3971 non technique, à moins que le paquet ne s'adresse qu'à un auditoire de techniciens.
3972 <p>
3973 Les paragraphes suivants devraient répondre aux questions suivantes&nbsp;:
3974 Pourquoi, en tant qu'utilisateur, ai-je besoin de ce paquet&nbsp;? Quelles
3975 sont les autres fonctionnalités dont dispose le paquet&nbsp;? Quelles
3976 sont les fonctionnalités marquantes et les déficiences de ce paquet comparé à
3977 d'autres paquets (par exemple, «&nbsp;si vous avez besoin de X, utilisez Y à la
3978 place&nbsp;»)&nbsp;? Est-ce que le paquet est lié à d'autres paquets d'une
3979 certaine façon qui n'est pas gérée par le gestionnaire de paquet (par exemple,
3980 «&nbsp;il s'agit d'un client pour le serveur foo&nbsp;»)&nbsp;?
3981 <p>
3982 Soyez attentif à éviter les fautes d'orthographe et de grammaire. N'oubliez
3983 pas votre vérificateur orthographique. <prgn>ispell</prgn> possède une option
3984 spéciale (<tt>-g</tt>) pour cela&nbsp;:
3985
3986 <example>ispell -d american -g debian/control</example>
3987
3988             <p>
3989 Les utilisateurs s'attendent habituellement à ce que les réponses aux questions
3990 suivantes soient présentes dans la description du paquet&nbsp;:
3991         <list>
3992         <item>
3993 Qu'est-ce que fait le paquet&nbsp;? Si c'est un ajout d'un autre paquet, la
3994 description courte du paquet dont c'est un ajout devrait le spécifier.
3995         <item>
3996 Pourquoi est-ce qu'il voudrait installer ce paquet&nbsp;? Ceci est lié à ce qui
3997 est ci-dessus, mais pas tout à fait (c'est un client de messagerie&nbsp;; il
3998 est cool, rapide, s'interface avec PGP, LDAP et IMAP, a les fonctionnalités
3999 X, Y et Z).
4000         <item>
4001 Si ce paquet ne devrait pas être installé directement, mais être tiré par un
4002 autre paquet, cela devrait être mentionné.
4003         <item>
4004 Si le paquet est expérimental, ou s'il y a d'autres raisons pour lesquelles il
4005 ne devrait pas être utilisé, si un autre paquet devrait être utilisé à la place,
4006 cela devrait également être présent.
4007         <item>
4008 En quoi le paquet est différent des paquets concurrents&nbsp;? Est-ce que c'est
4009 une meilleure implémentation&nbsp;? A-t-il plus de fonctionnalités, des
4010 fonctionnalités différentes&nbsp;? Pourquoi devrait-il choisir ce paquet&nbsp;?
4011 <!-- FIXME: what's this?
4012 +(the second questions is about the class of packages, and
4013  this about this particular package, if you have information related to both).
4014 +-->
4015         </list>
4016
4017         </sect1>
4018
4019         <sect1 id="bpp-upstream-info">
4020           <heading>Page d'accueil amont</heading>
4021           <p>
4022 Nous vous recommandons d'ajouter l'adresse de la page d'accueil du paquet à la
4023 description du paquet dans le fichier <file>debian/control</file>. Cette
4024 information devrait être ajoutée à la fin de la description en utilisant le
4025 format suivant&nbsp;:
4026
4027 <example> .
4028   Homepage: http://some-project.some-place.org/</example>
4029
4030 Veuillez noter les espaces au début de la ligne, ils servent à séparer les
4031 lignes correctement. Pour voir un exemple de ce que cela affiche, veuillez vous
4032 reporter à <url id="&url-eg-desc-upstream-info;">.
4033           <p>
4034 Ne mettez rien s'il n'existe pas de page pour le logiciel.
4035
4036           <p>
4037 Veuillez noter que nous espérons que ce champ sera remplacé par un
4038 vrai champ de <file>debian/control</file> que comprendraient <prgn>dpkg</prgn>
4039 et <tt>&packages-host;</tt>. Si vous ne voulez pas vous embêter à déplacer la
4040 page d'accueil depuis la description vers ce nouveau champ, vous devriez
4041 probablement attendre qu'il soit disponible.</p>
4042         </sect1>
4043       </sect>
4044
4045
4046     <sect id="bpp-debian-changelog">
4047         <heading>Les meilleures pratiques pour le fichier <file>debian/changelog</file></heading>
4048         <p>
4049 Les pratiques suivantes viennent en complément de la <url name="directive sur
4050 les fichiers changelog" id="&url-debian-policy;ch-docs.html#s-changelogs">.</p>
4051
4052         <sect1 id="bpp-changelog-do">
4053             <heading>Écrire des entrées de changelog utiles</heading>
4054         <p>
4055 L'entrée de changelog pour une révision de paquet documente les changements dans
4056 cette révision et seulement ceux-ci. Concentrez-vous sur la description des
4057 changements significatifs et visibles de l'utilisateur qui ont été effectués
4058 depuis la dernière version.
4059         <p>
4060 Ciblez <em>ce</em> qui a été changé &mdash;&nbsp;qui, comment et quand cela a été fait
4061 est généralement de moindre importance. Ceci dit, rappelez-vous de nommer
4062 poliment les personnes qui ont fourni une aide notable pour réaliser le
4063 paquet (par exemple, ceux qui ont envoyé des correctifs).
4064         <p>
4065 Vous n'avez pas besoin de détailler les changements triviaux et évidents. Vous
4066 pouvez également regrouper plusieurs de ces changements dans une seule entrée.
4067 D'un autre côté, ne soyez pas trop concis si vous avez entrepris un changement
4068 majeur. Soyez tout spécialement clair s'il y a des changements qui modifient le
4069 comportement du programme. Pour plus d'explications, utilisez le fichier
4070 <file>README.Debian</file>.
4071         <p>
4072 Utilisez un langage anglais commun pour que la majorité des lecteur puissent le
4073 comprendre. Évitez les abréviations, le parler technique et le jargon quand
4074 vous expliquez des changements fermant un bogue, spécialement pour les rapports
4075 de bogue créés par des utilisateurs qui ne vous paraissent pas particulièrement
4076 à l'aise techniquement. Vous devez être poli et ne pas jurer.
4077         <p>
4078 Il est parfois désirable de préfixer les entrées de changelog avec le nom des
4079 fichiers qui ont été modifiés. Cependant, il n'est pas besoin de lister
4080 explicitement tous les fichiers modifiés, particulièrement si la modification
4081 est petite ou répétitive. Vous pouvez utiliser les caractères génériques.
4082         <p>
4083 Quand vous faites référence aux bogues, ne supposez rien a priori. Dites ce
4084 qu'était le problème, comment il a été résolu et ajoutez la chaîne de caractères
4085 «&nbsp;closes: #nnnnn&nbsp;». Veuillez voir <ref id="upload-bugfix"> pour plus
4086 d'informations.
4087
4088         <sect1 id="bpp-changelog-misconceptions">
4089             <heading>idées fausses communes sur les entrées de changelog</heading>
4090         <p>
4091 Les entrées de changelog <strong>ne devraient pas</strong> documenter des
4092 problèmes génériques d'empaquetage («&nbsp;Hé, si vous cherchez foo.conf, il
4093 est dans /etc/blah/.&nbsp;») car les administrateurs et utilisateurs sont
4094 supposés être au moins vaguement rompus à la façon dont les choses sont
4095 arrangées sur un système Debian. Mentionnez cependant tout changement
4096 d'emplacement d'un fichier de configuration.
4097         <p>
4098 Les seuls bogues fermés par une entrée de changelog devraient être ceux qui sont
4099 vraiment corrigés dans la même révision du paquet. Fermer des bogues non liés
4100 par le fichier changelog est considéré comme une très mauvaise pratique.
4101 Veuillez voir <ref id="upload-bugfix">.
4102         <p>
4103 Les entrées de changelog <strong>ne devraient pas</strong> être le lieu de
4104 discussions avec les émetteurs de bogues («&nbsp;Je ne vois pas de segfaults
4105 lors du lancement de foo avec l'option bar&nbsp;; envoyez-moi plus
4106 d'informations.&nbsp;»), ni celui de phrases génériques sur la vie, l'univers et
4107 tout le reste («&nbsp;Désolé, cet envoi m'a pris du temps, mais j'avais attrapé
4108 la grippe&nbsp;») ou celui de demandes d'aide («&nbsp;La liste des bogues sur
4109 ce paquet est énorme, donnez-moi un coup de main&nbsp;»). Ceci ne sera
4110 généralement pas remarqué par les personnes ciblées, mais peut ennuyer les
4111 personnes qui désirent lire des informations sur les changements réels du
4112 paquet. Veuillez vous reporter à <ref id="bug-answering"> pour plus
4113 d'informations sur la façon d'utiliser le système de suivi des bogues.
4114         <p>
4115 C'est une vieille tradition de valider les bogues fixés par une mise à jour
4116 indépendante dans la première entrée du changelog de l'envoi du vrai
4117 responsable, par exemple, dans une entrée de changelog comme ceci&nbsp:
4118 <example>
4119   * Maintainer upload, closes: #42345, #44484, #42444.
4120 </example>
4121 Ceci fermera les bogues NMU marqués comme corrigé («&nbsp;fixed&nbsp;») quand le
4122 paquet arrivera dans l'archive. Le bogue pour le fait qu'une NMU a été faite
4123 peut être fermé de la même façon. Bien sûr, il est également parfaitement
4124 acceptable de fermer les bogues corrigés par NMU par d'autres moyens&nbsp;; voir
4125 <ref id="bug-answering">.
4126 </sect1>
4127
4128         <sect1 id="bpp-changelog-errors">
4129             <heading>Erreurs communes dans les entrées de changelogs</heading>
4130 <p>
4131 Les exemples suivants montrent des erreurs communes ou des exemples de mauvais
4132 style dans les entrées de changelog<footnote>NdT&nbsp;: Les entrées de
4133 changelog sont ici affichées en français pour faciliter la compréhension, mais
4134 vos entrées devront naturellement être rédigées en anglais.</footnote>.
4135
4136 <p>
4137 <example>
4138   * Corrige tous les bogues restants.
4139 </example>
4140 <p>
4141 Ceci n'indique visiblement rien d'utile au lecteur.
4142 <p>
4143 <example>
4144   * Correctif de Jane Random appliqué.
4145 </example>
4146 Sur quoi portait le correctif&nbsp;?
4147
4148 <p>
4149 <example>
4150   * Révision de cible d'installation la nuit dernière.
4151 </example>
4152 Qu'a accompli la révision&nbsp;? Est-ce que la mention de la nuit dernière
4153 est supposée nous rappeler que nous ne devons pas faire confiance à ce
4154 code&nbsp;?
4155
4156 <p>
4157 <example>
4158   * Corrige MRD vsync av. anciens CRTs.
4159 </example>
4160 Trop d'acronymes et il n'est pas très clair de ce qu'était vraiment cette...
4161  euh... merde (oups, un mot interdit&nbsp;!) ou comment cela a été corrigé.
4162
4163 <p>
4164 <example>
4165   * Ceci n'est pas un bogue. Closes: #nnnnnn.
4166 </example>
4167 Premièrement, il n'y a absolument pas besoin d'envoyer un paquet pour
4168 communiquer cette information&nbsp;; à la place, utilisez le système de suivi des
4169 bogues. Deuxièmement, il n'y a aucune explication concernant la raison
4170 pour laquelle le rapport n'était pas un bogue.
4171
4172 <p>
4173 <example>
4174   * A été fixé il y a longtemps, mais j'ai oublié de le fermer. Closes: #54321.
4175 </example>
4176 Si, pour toute raison, vous n'aviez pas indiqué le numéro du bogue dans une
4177 précédente entrée de changelog, ceci n'est pas un problème, fermez simplement le
4178 bogue normalement dans le BTS. Il n'y a pas besoin de modifier le fichier
4179 changelog, en supposant que la description de la correction est déjà intégrée
4180 (ceci s'applique aux correctifs par les auteurs/responsables amont également,
4181 vous n'avez pas à suivre les bogues qui ont été corrigés il y a longtemps dans
4182 votre changelog).
4183
4184 <p>
4185 <example>
4186   * Closes: #12345, #12346, #15432.
4187 </example>
4188 Où est la description&nbsp;?! Si vous n'arrivez pas à trouver un message
4189 descriptif, commencez par insérer le titre de chacun des différents bogues.
4190 <p>
4191 </sect1>
4192         
4193         <sect1 id="bpp-news-debian">
4194           <heading>Compléter les changelogs avec les fichiers NEWS.Debian</heading>
4195           <p>
4196 Les nouvelles importantes à propos des changements dans un paquet peuvent
4197 également être placées dans les fichiers NEWS.Debian. Ces nouvelles seront
4198 affichées par des outils comme apt-listchanges, avant le reste des changelogs.
4199 Ceci est le moyen préféré pour informer les utilisateurs des changements
4200 significatifs dans un paquet. Il est préférable d'utiliser ce fichier plutôt que
4201 d'utiliser des notes debconf car c'est moins ennuyeux et l'utilisateur peut y
4202 revenir et se référer au fichier NEWS.Debian après l'installation. Et c'est
4203 mieux que de lister les changements principaux dans README.Debian car
4204 l'utilisateur peut facilement rater de telles notes.
4205           <p>
4206 Le format du fichier est le même que pour un fichier de changelog Debian, mais
4207 il n'utilise pas d'astérisques et décrit chaque élément de nouvelle dans un
4208 paragraphe complet si nécessaire plutôt que les résumés concis qui iraient dans un
4209 changelog. C'est une bonne idée de passer votre fichier par dpkg-parsechangelog
4210 pour vérifier son formatage car il n'est pas vérifié automatiquement pendant la
4211 construction comme le changelog. Voici un exemple d'un vrai fichier NEWS.Debian&nbsp;:
4212 <example>
4213 cron (3.0pl1-74) unstable; urgency=low
4214
4215     The checksecurity script is no longer included with the cron package:
4216     it now has its own package, "checksecurity". If you liked the
4217     functionality provided with that script, please install the new
4218     package.
4219
4220  -- Steve Greenland &lt;stevegr@debian.org&gt;  Sat,  6 Sep 2003 17:15:03 -0500
4221 </example>
4222           <p>
4223 Le fichier NEWS.Debian est installé comme
4224 /usr/share/doc/&lt;package&gt;/NEWS.Debian.gz. Il est compressé et a toujours ce
4225 nom même dans les paquets natifs Debian. Si vous utilisez debhelper,
4226 dh_installchangelogs installera les fichiers debian/NEWS pour vous.
4227           <p>
4228 À la différence des fichiers changelog, vous n'avez pas besoin de mettre à jour
4229 les fichiers NEWS.Debian à chaque nouvelle version. Ne les mettez à jour que si
4230 vous avez quelque chose de particulièrement important que l'utilisateur a
4231 besoin de savoir. Si vous n'avez pas de nouvelles du tout, il n'est pas
4232 nécessaire de fournir de fichier NEWS.Debian dans votre paquet. Pas de
4233 nouvelles, bonne nouvelle&nbsp;!
4234
4235 </sect>
4236
4237 <!-- <sect1 id="pkg-mgmt-cvs">Managing a package with CVS
4238         <p>
4239         &FIXME; presentation of cvs-buildpackage, updating sources
4240         via CVS (debian/rules refresh).
4241       <url id="http://www.debian.org/devel/cvs_packages">
4242 -->
4243
4244     <sect id="bpp-debian-maint-scripts">
4245         <heading>Les meilleures pratiques pour les scripts de
4246         maintenance</heading>
4247         <p>
4248 Les scripts de maintenance incluent les fichiers <file>debian/postinst</file>,
4249 <file>debian/preinst</file>, <file>debian/prerm</file> et
4250 <file>debian/postrm</file>. Ces scripts prennent soin de la configuration
4251 d'installation ou de désinstallation des paquets, ce qui n'est pas simplement créer ou 
4252 supprimer des fichiers et des répertoires. Les instructions suivantes
4253 complètent la <url id="&url-debian-policy;" name="charte Debian">.
4254         <p>
4255 Les scripts de maintenance doivent être idempotents. Cela veut dire que vous
4256 devez vous assurer que rien de grave ne se produit si un script est appelé deux
4257 fois là où il ne devrait habituellement être appelé qu'une fois.
4258         <p>
4259 Les entrée et sortie standard peuvent être redirigées (par exemple, dans des
4260 tubes<footnote><p>pipes</p></footnote>) pour des besoins d'enregistrement
4261 d'activité, donc vous ne devez pas supposer que ce sont des tty.
4262         <p>
4263 Tous les affichages et les configurations interactives devraient être
4264 minimisées. Quand cela est nécessaire, vous devriez utiliser le paquet
4265 <package>debconf</package> pour l'interface. Rappelez-vous que, dans tous les
4266 cas, l'affichage ne doit se faire que dans l'étape de configuration,
4267 <tt>configure</tt> du script de post-installation, <file>postinst</file>.
4268         <p>
4269 Gardez les scripts de maintenance aussi simples que possible. Nous vous
4270 suggérons d'utiliser des scripts shell POSIX purs. Rappelez-vous, que si vous
4271 avez besoin d'une fonctionnalité de Bash, le script de maintenance doit
4272 préciser bash dans sa première ligne. Un shell POSIX ou Bash sont préférés à
4273 Perl car ils permettent à <package>debhelper</package> d'ajouter facilement des
4274 parties aux scripts.
4275         <p>
4276 Si vous modifiez les scripts de maintenance, assurez-vous de tester la
4277 suppression du paquet, la double installation et la purge complète. Assurez-vous
4278 qu'il ne reste rien d'un paquet purgé, c'est-à-dire, que la purge doit enlever
4279 tout fichier créé, directement ou indirectement, par les scripts de
4280 maintenance.
4281         <p>
4282 Si vous avez besoin de vérifier l'existence d'une commande, vous devriez
4283 utiliser quelque chose comme&nbsp;:
4284 <example>if [ -x /usr/sbin/install-docs ]; then ...</example>
4285
4286 Si vous ne désirez pas mettre en dur le chemin d'une commande dans le script de
4287 maintenance, la fonction de shell suivante conforme à POSIX peut vous
4288 aider&nbsp;:
4289
4290 &example-pathfind;
4291
4292 Vous pouvez utiliser cette fonction pour rechercher le <tt>$PATH</tt> pour un
4293 nom de commande passé en argument. Il renvoie vrai (zéro) si la commande a été
4294 trouvée et faux sinon. Il s'agit réellement de la façon la plus portable de faire
4295 car <tt>command -v</tt>, <prgn>type</prgn> et <prgn>which</prgn> ne sont pas
4296 POSIX.
4297 <p>
4298 Bien que <prgn>which</prgn> soit une alternative acceptable car il est
4299 présent dans le paquet classé <em>required</em> <package>debianutils</package>, il n'est pas
4300 présent dans la partition racine. Autrement dit, il est placé dans
4301 <file>/usr/bin</file> au lieu de <file>/bin</file>, il n'est donc pas possible
4302 de l'utiliser dans les scripts qui sont exécutés avant que la partition
4303 <file>/usr</file> soit montée. Cependant, la plupart des scripts n'auront pas ce
4304 problème.
4305       </sect>
4306
4307       <sect id="bpp-config-mgmt">
4308         <heading>Gestion de la configuration avec <package>debconf</package></heading>
4309         
4310         <p>
4311 <p>
4312 <package>Debconf</package> est un système de gestion de configuration qui
4313  peut être utilisé par les divers scripts de maintenance (principalement
4314  en post-installation dans le fichier <file>postinst</file>) pour demander à
4315 l'utilisateur des informations concernant la configuration du paquet. Il 
4316 faut maintenant éviter les interactions directes avec l'utilisateur et 
4317 préférer les interactions utilisant <package>debconf</package>. Ceci permettra
4318  à l'avenir des installations non interactives.
4319         <p>
4320 Debconf est un bon outil, mais il est souvent mal utilisé. Plusieurs erreurs
4321  communes sont référencées dans la page de manuel <manref section="7"
4322  name="debconf-devel">. Vous devriez vraiment lire cette page si vous décidez
4323  d'utiliser debconf. Nous documentons également plusieurs des meilleures
4324  pratiques ici.
4325         <p>
4326 Ces lignes directives incluent plusieurs recommandations de style d'écriture et
4327 de typographie, des considérations générales à propos de l'utilisation de
4328 debconf ainsi que des recommandations plus spécifiques pour certaines parties de
4329 la distribution (par exemple, le système d'installation).
4330
4331         <sect1>N'abusez pas de debconf
4332         <p>
4333 Depuis que debconf est apparu dans Debian, il a été largement abusé et plusieurs
4334 critiques reçues par la distribution Debian proviennent d'utilisation abusive de
4335 debconf avec la nécessité de répondre à un grand nombre de questions avant
4336 d'avoir n'importe quel petit logiciel d'installé.
4337         <p>
4338 Garder les notes d'utilisation à leur place&nbsp;: le fichier NEWS.Debian ou le
4339 fichier README.Debian. N'utilisez des notes que pour des notes importantes
4340 qui peuvent directement concerner l'utilisation du paquet. Rappelez-vous que les
4341 notes bloqueront toujours l'installation avant leur confirmation ou qu'elles
4342 embêtent l'utilisateur par un courriel.
4343         <p>
4344 Choisissez avec soin les priorités des questions dans les scripts de
4345 responsable. Reportez-vous à <manref name="debconf-devel" section="7"> pour plus
4346 de détails sur les priorités. La plupart des questions devraient utiliser un
4347 priorité moyenne ou basse.
4348
4349         <sect1>Recommandations générales pour les auteurs et traducteurs
4350         <p>
4351         <sect2>Écrivez un anglais correct
4352         <p>
4353 La plupart des responsables de paquets Debian n'ont pas l'anglais comme langue
4354 maternelle. Écrire des modèles correctement rédigés peut donc ne pas être facile
4355 pour eux.
4356         <p>
4357 Veuillez utiliser (et abuser de) la liste de discussions
4358 debian-l10n-english@lists.debian.org. Faites relire vos questionnaires.
4359         <p>
4360 Des questionnaires écrits incorrectement donne une pauvre image de votre paquet,
4361 de votre travail... ou même de Debian elle-même.
4362         <p>
4363 Évitez le jargon technique autant que possible. Si certains termes vous semble
4364 courants, ils peuvent être impossibles à expliquer à d'autres personnes. Si vous
4365 ne pouvez pas les éviter, essayez de les expliquer (en utilisant la description
4366 étendue). Quand vous faites cela, essayez d'équilibrer la verbosité et la
4367 simplicité.
4368
4369         <sect2>Être courtois avec les traducteurs
4370         <p>
4371 Les questionnaires debconf peuvent être traduits. Debconf, avec son paquet-frêre
4372 po-debconf, offre un cadre de travail simple pour obtenir des questionnaires
4373 traduits par les équipes de traduction ou même par des individus isolés.
4374         <p>
4375 Veuillez utiliser les questionnaires basés sur gettext. Installez po-debconf sur
4376 votre système de développement et lisez sa documentation («&nbsp;man
4377 po-debconf&nbsp;» est un bon début).
4378         <p>
4379 Évitez de changer vos questionnaires trop souvent. Modifier le texte des
4380 questionnaires entraîne plus de travail pour les traducteurs dont les
4381 traductions seront rendues «&nbsp;floues&nbsp;» («&nbsp;fuzzy&nbsp;»). Si vous
4382 prévoyez des modifications dans vos questionnaires d'origine, veuillez contacter
4383 les traducteurs. La plupart des traducteurs actifs sont très réactifs et obtenir
4384 leur travail inclus avec vos questionnaires modifiés vous économisera des envois
4385 supplémentaires. Si vous utilisez des modèles basés sur gettext, le nom et
4386 l'adresse électronique du traducteur sont mentionnés dans les en-têtes des
4387 fichiers PO.
4388         <p>
4389 En cas de doutes, vous pouvez également contacter l'équipe de traduction pour
4390 une langue donnée (debian-l10n-xxxxx@lists.debian.org) ou la liste de discussions
4391 debian-i18n@lists.debian.org.
4392
4393         <sect2>Ne faites pas de suppositions à propos des interfaces
4394         <p>
4395 Le texte des modèles ne doit pas faire référence aux composants appartenant à
4396 l'une des interfaces debconf. Des phrases comme «&nbsp;If you answer
4397 Yes...&nbsp;» n'a aucun sens pour les utilisateurs d'interfaces graphiques qui
4398 utilisent des cases à cocher pour les questions booléennes.
4399         <p>
4400 Plus généralement, essayez d'éviter de vous référer à toute action de
4401 l'utilisation. Donnez simplement des faits.
4402
4403         <sect2>N'utilisez pas la première personne
4404         <p>
4405 Vous devriez éviter d'utiliser la première personne («&nbsp;I will do
4406 this...&nbsp;» ou «&nbsp;We recommend...&nbsp;»). L'ordinateur n'est pas une
4407 personne et les qustionnaires debconf ne parlent pas pour les développeurs
4408 Debian. Vous devriez utiliser une construction neutre et souvent une forme
4409 passive. Pour ceux d'entre vous qui écrivent déjà des publications
4410 scientifiques, écrivez simplement vos questionnaires comme vous écriveriez un
4411 papier scientifique.
4412
4413         <sect2>Soyez neutre dans le genre
4414         <p>
4415 Le monde est fait d'hommes et de femmes. Veuillez utiliser des constructions
4416 neutres dans le genre dans votre texte. Ce n'est pas du politiquement correct,
4417 c'est simplement montrer du respect pour toute l'humanité.
4418
4419
4420         <sect1>Définition des champs de questionnaires
4421         <p>
4422 Cette partie donne plusieurs informations qui sont principalement extraites de
4423 la page de manuel <manref name="debconf-devel" section="7">.
4424
4425         <sect2>Type
4426         <p>
4427
4428         <sect3>string: (chaîne de caractères)
4429         <p>
4430 Résulte en un champ d'entrée libre dans lequel l'utilisateur peut écrire toute chaîne.
4431
4432         <sect3>password: (mot de passe)
4433         <p>
4434 Demande un mot de passe à l'utilisateur. Veuillez utiliser ce champ avec
4435 précaution&nbsp;; soyez conscient que le mot de passe que l'utilisateur entre
4436 sera écrit dans la base de données debconf. Vous devriez probablement enlever
4437 cette valeur de la base de données dès que possible.
4438
4439         <sect3>boolean: (booléen)
4440         <p>
4441 Un choix vrai/faux. Rappelez-vous&nbsp;: vrai/faux, PAS OUI/NON...
4442
4443         <sect3>select: (sélection)
4444         <p>
4445 Un choix parmi un certain nombre de valeurs. Les choix doivent être spécifiés
4446 dans un champ nommé «&nbsp;Choices&nbsp;». Séparez les valeurs possibles par des
4447 virgules et des espaces ainsi&nbsp;: Choices: yes, no, maybe
4448
4449         <sect3>multiselect: (sélection multiple)
4450         <p>
4451 Comme le type de données select, excepté que l'utilisateur peut choisir un
4452 nombre quelconque d'éléments dans la liste de choix (ou aucun d'entre eux).
4453
4454         <sect3>note: (note)
4455         <p>
4456 Plutôt que d'être une question en tant que telle, ce type de donnée indiqué une
4457 note qui peut être affichée à l'utilisateur. Il ne devrait être utilisé que
4458 pour des données importantes que l'utilisateur doit réellement voir, car debconf
4459 fera tout ce qu'il peut pour s'assurer que l'utilisateur le voit&nbsp;; il
4460 stoppera l'installation en attendant que l'utilisateur appuie sur une touche ou
4461 il leur enverra même la note par courrier dans certains cas.
4462
4463         <sect3>text: (texte)
4464         <p>
4465 Ce type est maintenant considéré comme obsolète&nbsp;: ne l'utilisez pas.
4466
4467         <sect3>error: (erreur)
4468         <p>
4469 <strong>CE TYPE DE MODÈLE N'EST PAS ENCORE GÉRÉ PAR DEBCONF.</strong>
4470         <p>
4471 Il a été ajouté à cdebconf, la version C de debconf, utilisé en premier dans
4472 l'installateur Debian.
4473         <p>
4474 Veuillez ne pas l'utiliser à moins que debconf ne le prennent en charge.
4475         <p>
4476 Ce type est conçu pour gérer des messages d'erreur. Il est presque semblable au
4477 type «&nbsp;note&nbsp;». Des interfaces peuvent le présenter différemment (par
4478 exemple, l'interface dialog de cdebconf affiche un écran rouge au lieu de
4479 l'écran bleu habituel).
4480
4481
4482         <sect2>Description: description courte et étendue
4483         <p>
4484 Les descriptions des modèles sont composées de deux parties&nbsp;: une courte et
4485 une étendu. La description courte est dans la ligne «&nbsp;Description:&nbsp;»
4486 du questionnaire.
4487         <p>
4488 La description courte devrait être gardée courte (50&nbsp;caractères ou moins)
4489 poru qu'elle puissent être ajustée par la plupart des interfaces debconf. La
4490 garder courte aide également les traducteurs, car les traductions ont tendance à
4491 être plus longue que l'originale.
4492         <p>
4493 La description courte devrait se suffire à elle-même. Certaines interfaces
4494 n'affichent pas la description longue par défaut ou seulement si l'utilisateur
4495 la demande explicitement ou même ne l'affichent pas du tout. Évitez des choses
4496 comme «&nbsp;What do you want to do&nbsp;?&nbsp;».
4497         <p>
4498 Il n'est pas nécessaire que la description courte soit une phrase complète. Cela
4499 fait partie de la recommandation «&nbsp;gardez-la courte et efficace&nbsp;».
4500         <p>
4501 La description étendu ne devrait pas répétée la description courte mot pour mot.
4502 Si vous ne trouvez pas de description longue, commencez par à y réfléchir plus.
4503 Envoyez un message sur debian-devel. Demandez de l'aide. Suivez un cours
4504 d'écriture&nbsp;! La description étendue est imprtante. Si, après tout cela,
4505 vous ne trouvez toujours rien, laissez-la vide.
4506         <p>
4507 La description étendue devrait utiliser des phrases complètes. Des paragraphes
4508 devraient être gardés court pour améliorer la lisibilité. Ne mélangez pas deux
4509 idées dans le même paragrpahe, mais utilisez plutôt un autre paragraphe.
4510         <p>
4511 Ne soyez pas trop verbeux. Certaines interfaces debconf ne gèrent pas très bien
4512 les descriptions de plus de 20&nbsp;lignes, essayez donc de les conserver sous
4513 cette limite.
4514         <p>
4515 Pour des règles spécifiques selon le type de questionnaire (chaîne de
4516 caractères, booléen, etc.), veuillez lire ci-dessous.
4517
4518         <sect2>Choices (choix)
4519         <p>
4520 Ce champ devrait utilisé pour des types Select et Multiselect. Il contient les
4521 choix possibles qui seront présentés aux utilisateurs. Ces choix devraient être
4522 séparés par des virgules.
4523
4524
4525         <sect2>Default (valeur par défaut)
4526         <p>
4527 Ce champ est facultatif. Il contient la réponse par défaut pour les modèles
4528 chaîne de caractères, sélection et multi-sélection. Pour des questionnaires
4529 multi-sélection, il peut contenir une liste de choix séparés par des virgules.
4530
4531         <sect1>Guide de style spécifique par champ de questionnaires
4532         <p>
4533
4534         <sect2>Champ Type
4535         <p>
4536 Aucun indication spécifique excepté&nbsp;: utilisez le type approprié en vous
4537 référant à la section précédente.
4538
4539         <sect2>Champ Description
4540         <p>
4541 Voici ci-dessous des instructions spécifiques pour écrire correctement la
4542 description (courte et étendue) selon le type de questionnaire.
4543
4544         <sect3>questionnaire chaîne de caractères/mot de passe
4545         <p>
4546 <list>
4547 <item> La description courte est une invite et NON un titre. Évitez des invites
4548     de style question («&nbsp;IP Address?&nbsp;») en faveur d'invites
4549     «&nbsp;ouvertes&nbsp;»à («&nbsp;IP address:&nbsp;»). L'utilisation des
4550     deux-points est recommandée.
4551
4552 <item> La description étendue est un complément à la description courte. Dans la
4553     partie étendue, expliquez ce qui est demandé, plutpot que de poser la même
4554     question à nouveau en utilisant des mots plus longs. Utilisez des phrases
4555     complètes. Un style d'écriture trop concis est fortement découragé.
4556 </list>
4557
4558         <sect3>modèles booléens
4559         <p>
4560 <list>
4561 <item> La description courte devrait être rédigée sous la forme d'une question
4562     qui devrait être gardée courte et devrait généralement se termier par un
4563     point d'interrogation. Un style d'écriture concis est permis et même
4564     encouragé si la question est plutôt longue (rappelez-vous que les
4565     traductions sont souvent plus longue que les versions d'origine)
4566
4567 <item> La description étendu ne devrait PAS inclure de question.
4568
4569 <item> À nouveau, veuillez éviter de vous référer à des composants d'interface
4570     spécifiques. Une erreur courante pour de telles questionnaires est les
4571     constructions du type «&nbsp;if you answer Yes&nbsp;».
4572 </list>
4573
4574         <sect3>sélection/multi-sélection
4575         <p>
4576 <list>
4577 <item> La description courte est une invite et NON un titre. N'utilisez PAS des
4578     constructions inutiles du type «&nbsp;Please choose...&nbsp;». Les
4579     utilisateurs sont assez intelligents pour réaliser qu'ils doivent choisir
4580     quelque chose...:)
4581
4582 <item> La description étendu devra compléter la description courte. Elle peut se
4583     référer aux choix disponibles. Elle peut également mentionner que
4584     l'utilisateur peut choisir plus d'un des choix disponibles si le
4585     questionnaire est du type sélection multiple (bien que l'interface rende
4586     soivent cela clair).
4587 </list>
4588
4589         <sect3>Notes
4590         <p>
4591 <list>
4592 <item> La description courte devrait être considéré comme un *titre*. 
4593
4594 <item> La description étendue est ce qui sera affiché comme une description plus
4595     détaillée de la note. Faites de phrases, n'utilisez pas un style d'écriture
4596     trop concis.
4597
4598 <item> N'ABUSEZ PAS DE DEBCONF. Les notes sont le moyen le plus courant d'abus
4599     de debconf. Comme il est écrit dans la page de manuel de
4600     debconf-devel&nbsp;: il est préférable de ne les utiliser que pour des
4601     avertissements à propos de problèmes très sérieux. Les fichiers NEWS.Debian
4602     ou README.Debian sont les endroits appropriés pour un grand nombre de notes.
4603     Si, en lisant ceci, vous envisagez de convertir vos modèles de type note en
4604     entrées dans NEWS/Debian ou README.Debian, veuillez considérer de conserver
4605     les traductions existantes pour une utilisation future.
4606 </list>
4607
4608
4609         <sect2>Champ de choix
4610         <p>
4611 S'il est probable que les choix changent souvent, veuillez considérer
4612 l'utilisation de l'astuce «&nbsp;__Choices&nbsp;». Cela séparera chaque choix
4613 individuel en une chaîne de caractères seule, ce qui aidera considérablement les
4614 traducteurs à faire leur travail.
4615
4616         <sect2>Champ par défaut
4617         <p>
4618 S'il est probable que la valeur par défaut d'un modèle «&nbsp;select&nbsp;»
4619 change selon la langue de l'utilisateur (par exemple, s'il s'agit d'un choix de
4620 langue), veuillez utiliser l'astuce «&nbsp;_DefaultChoice&nbsp;».
4621         <p>
4622 Ce champ spécial permet aux traducteurs de positionner le choix le plus
4623 approprié selon leur propre langue. Cela deviendra le choix par défaut quand
4624 leur langue sera sélectionné alors votre choix par défaut sera utilisé pour
4625 l'anglais.
4626         <p>
4627 Un exemple tiré des modèles du paquet geneweb&nbsp;:
4628 <example>
4629 Template: geneweb/lang
4630 Type: select
4631 __Choices: Afrikaans (af), Bulgarian (bg), Catalan (ca), Chinese (zh), Czech (cs), Danish (da), Dutch (nl), English (en), Esperanto (eo), Estonian (et), Finnish (fi), French (fr), German (de), Hebrew (he), Icelandic (is), Italian (it), Latvian (lv), Norwegian (no), Polish (pl), Portuguese (pt), Romanian (ro), Russian (ru), Spanish (es), Swedish (sv)
4632 # This is the default choice. Translators may put their own language here
4633 # instead of the default.
4634 # WARNING : you MUST use the ENGLISH FORM of your language
4635 # For instance, the french translator will need to put "French (fr)" here.
4636 _DefaultChoice: English (en)[ translators, please see comment in PO files]
4637 _Description: Geneweb default language:
4638 </example>
4639         <p>
4640 Notez l'utilisation de crochets qui permettent des commentaires internes dans
4641 les champs debconf. Notez également l'utilisation de commentaires qui
4642 apparaîtront dans les fichiers sur lesquels travailleront les traducteurs.
4643         <p>
4644 Les commentaires sont nécessaires car l'astuce DefaultChoice est un peu
4645 déroutante&nbsp;: les traducteurs peuvent y placer leur propre choix.
4646
4647         <sect2>Champ par défau
4648         <p>
4649 N'utilisez PAS de champ par défaut vide. Si vous ne voulez pas utiliser de
4650 valeurs par défaut, n'utilisez pas simplement pas du tout Default.
4651         <p>
4652 Si vous utilisez po-debconf (et vous DEVRIEZ le faire, voir 2.2), veuillez
4653 considérer de rendre ce champ traduisible, si vous pensez qu'il peut être
4654 traduit.
4655         <p>
4656 Si la valeur par défaut peut varier selon la langue ou le pays (par exemple, la
4657 valeur par défaut pour un choix de langue), veuillez considérer l'utilisation du
4658 type spécial «&nbsp_DefaultChoice&nbsp;» documenté dans <manref
4659                 name="po-debconf" section="7">).
4660        </sect>
4661
4662
4663       <sect id="bpp-i18n">
4664         <heading>Internationalisation</heading>
4665
4666
4667
4668         <sect1 id="bpp-i18n-debconf">Gestion des traductions de
4669         debconf
4670 <p>
4671 Comme les porteurs, les traducteurs ont une tâche difficile. Ils travaillent sur
4672  un grand nombre de paquets et doivent donc collaborer avec plusieurs
4673  responsables différents. De plus, la plupart du temps, l'anglais n'est pas leur
4674  langue maternelle, il se peut que vous deviez être particulièrement patient
4675  avec eux.
4676 <p>
4677 Le but de <package>debconf</package> était de faciliter la configuration des
4678 paquets aux responsables et aux utilisateurs. À l'origine, les
4679 traductions des questionnaires debconf étaient gérées avec
4680 <prgn>debconf-mergetemplate</prgn>. Cependant, cette technique est maintenant
4681 déconseillée&nbsp;; la meilleure façon pour l'internationalisation de
4682 <package>debconf</package> est d'utiliser le paquet
4683 <package>po-debconf</package>. Cette méthode est plus facile et pour le
4684 responsable et pour les traducteurs&nbsp;; des scripts de transition sont
4685 fournis.
4686 <p>
4687 Lors de l'utilisation de <package>po-debconf</package>, la traduction est
4688 stockée dans des fichiers <file>po</file> (à l'instar des techniques de
4689 traduction de <prgn>gettext</prgn>). Des fichiers modèles contiennent les
4690 messages d'origine et indiquent quels sont les champs traduisibles. Quand vous
4691 modifiez l'état d'un champ traduisible en appelant
4692 <prgn>debconf-updatepo</prgn>, la traduction est marquée comme ayant besoin de
4693 l'attention des traducteurs. Puis, lors de la construction du paquet, le
4694 programme <prgn>dh_installdebconf</prgn> prendra soin de toute la magie
4695 nécessaire à l'ajout du modèle avec les traductions à jour dans les paquets
4696 binaires. Veuillez vous reporter à la page de manuel <manref name="po-debconf"
4697 section="7"> pour les détails.
4698         </sect1>
4699
4700         <sect1 id="bpp-i18n-docs">
4701           <heading>Documentation traduite</heading>
4702           <p>
4703 La traduction de la documentation est cruciale pour les utilisateurs, mais elle
4704 représente un important travail. Il n'existe aucun moyen d'éliminer ce travail,
4705 mais vous pouvez faciliter les choses pour les traducteurs.
4706           <p>
4707 Si vous êtes responsable d'une documentation quelle que soit sa taille, il est
4708 plus facile pour les traducteurs d'avoir accès à un système de contrôle de
4709 source. Ceci permet aux traducteurs de voir les différences entre deux versions
4710 de la documentation, pour, par exemple, qu'ils puissent voir ce qui a besoin
4711 d'être retraduit. Il est recommandé que le document traduit inclue une note à
4712 propos de la révision de contrôle du source sur laquelle la traduction est
4713 basée. Un système intéressant est fourni par <url id="&url-i18n-doc-check;"
4714 name="doc-check"> dans le paquet <package>boot-floppies</package> qui donne un
4715 aperçu de l'état de la traduction pour une langue donnée, en utilisant les
4716 commentaires structurés pour une révision donnée du fichier à traduire et, pour
4717 un fichier traduit, la révision du fichier d'origine sur laquelle la traduction
4718 est basée. Vous pouvez vouloir adapter et fournir ceci dans votre référentiel CVS.
4719           <p>
4720 Si vous maintenez de la documentation au format XML ou SGML, nous vous suggérons
4721 d'isoler les informations indépendantes de la langue et de les définir
4722 comme des entités dans un fichier séparé qui sera inclus par les différentes
4723 traductions. Ceci aide, par exemple, à garder à jour les adresses pour
4724 plusieurs fichiers.
4725         </sect1>
4726       </sect>
4727
4728
4729     <sect id="bpp-common-situations">
4730         <heading>Pratiques communes d'empaquetage</heading>
4731
4732 <!--
4733         <sect1 id="bpp-kernel">Kernel modules/patches
4734 <p>
4735
4736         &FIXME; Heavy use of kernel-package. provide files in
4737         /etc/modutils/ for module configuration.
4738 -->
4739
4740         <sect1 id="bpp-autotools">
4741           <heading>Paquets utilisant <prgn>autoconf</prgn>/<prgn>automake</prgn>
4742 <p>
4743 Conserver à jour les fichiers d'<prgn>autoconf</prgn>, <file>config.sub</file>
4744 et <file>config.guess</file>, est critique pour les porteurs, spécialement pour
4745 les architectures plus changeantes. De très bonnes pratiques d'empaquetage
4746 utilisant <prgn>autoconf</prgn> et/ou <prgn>automake</prgn> ont été regroupées
4747 dans &file-bpp-autotools; du paquet <package>autotools-dev</package>. Vous êtes
4748 vivement encouragé à lire ce fichier et à suivre les recommandations indiquées.
4749
4750
4751         <sect1 id="bpp-libraries">Bibliothèques
4752 <p>
4753 Pour diverses raisons, il a toujours été difficile d'empaqueter les 
4754 bibliothèques. La charte impose plusieurs contraintes pour faciliter la maintenance
4755  et pour garantir que les mises à jour sont aussi simples que possible quand une
4756  nouvelle version amont est disponible. Une erreur dans une bibliothèque peut
4757  rendre défectueux une douzaine de paquets qui en dépendent.
4758 <p>
4759 Les bonnes pratiques d'empaquetage des bibliothèques ont été regroupées dans
4760  <url id="&url-libpkg-guide;" name="le guide d'empaquetage des
4761  bibliothèques">.
4762
4763         <sect1 id="bpp-docs">Documentation
4764            <p>
4765 Assurez-vous de suivre les <url id="&url-debian-policy;ch-docs.html"
4766 name="règles sur la documentation">.</p>
4767           <p>
4768 Si votre paquet contient de la documentation construite à partir de XML ou SGML,
4769 nous vous recommandons de ne pas fournir le source XML ou SGML dans le(s)
4770 paquet(s) binaire(s). Si les utilisateurs désirent avoir le source de la
4771 documentation, ils peuvent récupérer le paquet source.</p>
4772           <p>
4773 La charte spécifie que la documentation doit être fournie au format HTML.
4774 Nous vous recommandons également de la fournir au format PDF et texte simple si
4775 c'est adapté et qu'une sortie de qualité est possible. Cependant, il n'est
4776 généralement pas approprié de fournir des versions en texte simple pour la
4777 documentation dont le format source est du HTML.</p>
4778           <p>
4779 Les principaux manuels fournis devraient être enregistrés par le paquet
4780 <package>doc-base</package> à l'installation. Reportez-vous à la documentation
4781 du paquet <package>doc-base</package> pour plus d'information.</p>
4782
4783
4784         
4785         <sect1 id="bpp-other">Types spécifiques de paquets
4786 <p>
4787 Plusieurs types spécifiques de paquets ont des sous-chartes spéciales et des
4788  règles et pratiques d'empaquetage correspondantes&nbsp;:
4789 <list>
4790 <item>
4791       Les paquets liés à Perl ont leur <url id="&url-perl-policy;" name="charte
4792       Perl">, quelques exemples de paquets qui suivent cette charte sont
4793       <package>libdbd-pg-perl</package> (module perl binaire) ou
4794       <package>libmldbm-perl</package> (module perl indépendant de
4795       l'architecture).
4796 </item>
4797 <item>
4798       Les paquets liés à Python ont leur charte Python&nbsp;; voir
4799       &file-python-policy; dans le paquet <package>python</package>.
4800 </item>
4801 <item>
4802       Les paquets liés à Emacs ont leur <url id="&url-emacs-policy;"
4803       name="charte Emacs">.
4804 </item>
4805 <item>
4806       Les paquets liés à Java ont leur <url id="&url-java-policy;" name="charte
4807       Java">.
4808 </item>
4809 <item>
4810       Les paquets liés à Ocaml ont leur propre charte que l'on trouve dans
4811       &file-ocaml-policy; du paquet <package>ocaml</package>. Un bon exemple est
4812       le paquet source <package>camlzip</package>.
4813 </item>
4814 <item>
4815       Les paquets fournissant des DTDs XML ou SGML devraient se conformer aux
4816       recommandations que l'on peut trouver dans le paquet
4817       <package>sgml-base-doc</package>
4818 <item>
4819       Les paquets Lisp devraient s'enregistrer avec le paquet
4820       <package>common-lisp-controller</package> pour lequel vous pouvez vous
4821       reporter au fichier &file-lisp-controller;.
4822 <!-- TODO: mozilla extension policy, once that becomes available -->
4823 </list>
4824
4825   </sect1>
4826
4827         <sect1 id="bpp-archindepdata">Données indépendantes de l'architecture
4828         <p>
4829         Il n'est pas rare d'avoir une grande quantité de données indépendantes de
4830         l'architecture fournie avec un programme. Par exemple, des fichiers
4831         audio, une collection d'icônes, des motifs de papiers peints ou autres
4832         fichiers graphiques. Si la taille des données est négligeable par
4833         rapport à la taille du reste du paquet, il est probablement mieux de
4834         tout garder dans le même paquet.
4835
4836         <p>
4837         Cependant, si la taille des données est considérable, vous devez
4838         envisager de les partager dans un paquet séparé et indépendant de
4839         l'architecture («&nbsp;_all.deb&nbsp;»). Ainsi, en faisant cela, vous
4840         évitez une duplication inutile des mêmes données dans onze fichiers
4841         .debs pour chaque architecture. Bien que ceci ajoute une surcharge
4842         supplémentaire aux fichiers <file>Packages</file>, ceci sauve beaucoup
4843         d'espace disque sur les miroirs Debian. Séparer les données
4844         indépendantes de l'architecture réduit également le temps de traitement
4845         de <prgn>lintian</prgn> ou de <prgn>linda</prgn> (voir <ref
4846         id="tools-lint">) quand ils sont exécutés sur l'ensemble de l'archive
4847         Debian.
4848         </sect1>
4849
4850         <sect1 id="bpp-locale">
4851           <heading>Avoir besoin d'une certaine locale pendant la construction</heading>
4852           <p>
4853 Si vous avez besoin d'une certaine locale pendant la construction, vous pouvez
4854 créer un fichier temporaire par cette astuce&nbsp;:
4855         <p>
4856 Si vous positionnez LOCPATH à l'équivalent de /usr/lib/locale, et LC_ALL au nom
4857 de la locale que vous générez, vous devriez obtenir ce que vous voulez sans être
4858 root. Quelque chose comme ceci&nbsp;:
4859
4860 <example>
4861 LOCALE_PATH=debian/tmpdir/usr/lib/locale
4862 LOCALE_NAME=en_IN
4863 LOCALE_CHARSET=UTF-8
4864
4865 mkdir -p $LOCALE_PATH
4866 localedef -i "$LOCALE_NAME.$LOCALE_CHARSET" -f "$LOCALE_CHARSET" "$LOCALE_PATH/$LOCALE_NAME.$LOCALE_CHARSET"
4867
4868 # Using the locale
4869 LOCPATH=$LOCALE_PATH LC_ALL=$LOCALE_NAME.$LOCALE_CHARSET date
4870 </example>
4871         </sect1>
4872
4873         <sect1 id="bpp-transition">
4874           <heading>Rendre les paquets de transition conformes avec deborphan</heading>
4875           <p>
4876 Deborphan est un programme pour aider les utilisateurs à détecter quels paquets
4877 peuvent être enlevés sans problème du système, i.e. ceux dont aucun paquet ne
4878 dépend. L'opération par défaut est de chercher seulement parmi les sections libs
4879 et oldlibs pour débusquer les bibliothèques inutilisées. Mais si l'on passe le
4880 bon argument, il tente d'attraper d'autres paquets inutiles. 
4881           <p>
4882 Par exemple, avec --guess-dummy, deborphan cherche tous les paquets de transition qui
4883 étaient nécessaires pour une mise à jour, mais qui peuvent sans problème être
4884 supprimés. Pour cela, il recherche la chaîne de caractères «&nbsp;dummy&nbsp;»
4885 ou «&nbsp;transitional&nbsp;» dans la description courte.
4886           <p>
4887 Ainsi, quand vous créez un tel paquet, assurez-vous d'ajouter ce texte dans la
4888 description courte. Si vous cherchez des exemples, exécutez simplement&nbsp;: 
4889   <example>apt-cache search .|grep dummy</example> or
4890   <example>apt-cache search .|grep transitional</example>.
4891         </sect1>
4892
4893   </sect>
4894
4895 </chapt>
4896
4897   <chapt id="beyond-pkging">
4898     <heading>Au-delà de l'empaquetage
4899 <p>
4900 Debian, c'est beaucoup plus que de l'empaquetage de logiciels et de
4901     la maintenance de paquets. Ce chapitre contient des informations sur les
4902     façons, souvent vraiment importantes, de contribuer à Debian au-delà de la
4903     simple création et maintenance de paquets.
4904 <p>
4905 En tant qu'organisation de volontaires, Debian repose sur la liberté de 
4906     choisir ce sur quoi l'on désire travailler et de choisir la
4907     partie la plus importante à laquelle on veut consacrer son temps.
4908
4909     <sect id="submit-bug">
4910         <heading>Rapporter des bogues
4911 <p>
4912 Nous vous encourageons à remplir des rapports de bogue quand vous trouvez des
4913  bogues dans les paquets Debian. En fait, les développeurs Debian sont souvent
4914  les testeurs de première ligne. Trouver et rapporter les bogues dans les
4915  paquets d'autres développeurs améliore la qualité de Debian.
4916 <p>
4917 Lisez les <url name="instructions pour créer un rapport de bogue"
4918 id="&url-bts-report;"> dans le <url name="système de suivi des bogues"
4919 id="&url-bts;"> Debian.
4920 <p>
4921 Essayez de soumettre le bogue à partir d'un compte utilisateur normal sur lequel
4922  vous pouvez recevoir des courriers, pour que les personnes puissent vous
4923  joindre s'ils ont besoin de plus d'informations à propos du bogue. Ne soumettez
4924  pas de bogues en tant que root.
4925 <p>
4926 Vous pouvez utiliser un outil comme <manref name="reportbug" section="1"> pour
4927 soumettre des bogues. Il peut automatiser et dans l'ensemble faciliter le
4928 processus.
4929 <p>
4930 Assurez-vous que le bogue n'a pas déjà été rapporté. Chaque paquet dispose d'une
4931 liste de bogues facilement accessible à
4932 <tt>http://&bugs-host;/<var>nom_paquet</var></tt>. Des outils comme <manref
4933 name="querybts" section="1"> peuvent également vous fournir ces informations (et
4934 <prgn>reportbug</prgn> invoquera également habituellement <prgn>querybts</prgn>
4935 avant l'envoi).
4936 <p>
4937 Essayez d'envoyer vos bogues au bon emplacement. Quand, par exemple, votre bogue
4938 concerne un paquet qui réécrit des fichiers d'un autre paquet, vérifiez les
4939 listes des bogues pour les <em>deux</em> paquets pour éviter de créer des
4940 rapports de bogues dupliqués.
4941 <p>
4942 Vous pouvez également parcourir les bogues d'autres paquets, en les regroupant
4943  s'ils sont indiqués plus d'une fois, ou en les marquant avec
4944  «&nbsp;fixed&nbsp;» quand ils ont déjà été corrigés. Notez cependant que si
4945  vous n'êtes ni le rapporteur du bogue, ni le responsable du paquet, vous ne
4946  devriez pas fermer réellement le bogue (à moins que vous n'ayez obtenu la
4947  permission du responsable).
4948 <p>
4949 De temps en temps, vous pourrez vouloir vérifier ce qui s'est passé à propos des
4950  bogues que vous avez rapportés. Saisissez cette occasion pour fermer les bogues
4951  que vous ne pouvez plus reproduire. Pour trouver tous les bogues que vous avez
4952  rapportés, vous avez simplement besoin d'aller à
4953  <tt>http://&bugs-host;/from:<var>&lt;votre-adresse-de-courrier&gt;</var></tt>.
4954
4955       <sect1 id="submit-many-bugs">Ouvrir un grand nombre de rapports d'un seul
4956       coup
4957 <p>
4958 Ouvrir un grand nombre de rapports pour le même problème sur un grand nombre de
4959  paquets &mdash;&nbsp;plus de dix&nbsp;&mdash; est une pratique que nous déconseillons.
4960  Prenez toutes les mesures possibles pour éviter cette situation. Si le problème
4961  peut être détecté automatiquement par exemple, ajoutez un nouveau test dans le
4962  paquet <package>lintian</package> pour générer une erreur ou un avertissement.
4963 <p>
4964 Si vous ouvrez plus de dix rapports sur le même sujet, il est préférable
4965  d'indiquer votre intention sur la liste &email-debian-devel;. Cela donnera à
4966  d'autres développeurs la possibilité de vérifier que le problème existe
4967  vraiment. De plus, cela permet d'éviter que plusieurs responsables ne rédigent
4968  les mêmes rapports de bogue simultanément.
4969 <p>
4970 Quand vous envoyez un grand nombre de rapports sur le même sujet, vous devriez
4971  les envoyer à <email>maintonly@&bugs-host;</email> pour qu'ils ne soient
4972  pas redirigés vers les listes de diffusion.
4973
4974
4975       <sect id="qa-effort">Effort d'assurance qualité
4976         
4977         <sect1 id="qa-daily-work">Travail journalier
4978 <p>
4979 Bien qu'il y ait un groupe de personnes dédiées à l'assurance qualité, les
4980  devoirs de QA ne leur sont pas exclusivement réservés. Vous pouvez participer à
4981  cet effort en conservant vos paquets aussi exempts de bogues que possible et
4982  aussi corrects que possible selon <prgn>lintian</prgn> (reportez-vous à <ref
4983  id="lintian">). Si cela vous paraît impossible, vous devriez alors envisager
4984  d'abandonner certains de vos paquets (reportez-vous à <ref id="orphaning">).
4985  Sinon, vous pouvez demander de l'aide à d'autres personnes pour qu'elles
4986  puissent rattraper votre retard dans la correction des bogues (vous pouvez
4987  demander de l'aide sur &email-debian-qa; ou &email-debian-devel;). En même
4988  temps, vous pouvez rechercher des co-responsables (reportez-vous à <ref
4989  id="collaborative-maint">).
4990         
4991         <sect1 id="qa-bsp">Les chasses aux bogues
4992 <p>
4993 De temps en temps, le groupe d'assurance qualité organise des chasses aux
4994  bogues<footnote><em>Bug Squashing Party</em></footnote> pour essayer de
4995  supprimer le plus de problèmes possible. Elles sont annoncées sur
4996  &email-debian-devel-announce; et l'annonce explique quel domaine sera visé
4997  pendant la chasse&nbsp;: habituellement, il s'agit des bogues empêchant
4998  l'intégration du paquet dans la distribution («&nbsp;Release Critical&nbsp;»),
4999  mais il peut arriver qu'ils décident d'aider à finir une transition majeure
5000  (comme une nouvelle version de Perl qui demande la recompilation de tous les
5001  modules binaires).
5002 <p>
5003 Les règles pour les mises à jour indépendantes sont différentes au cours de la
5004  chasse parce que l'annonce de la chasse est considérée comme une annonce
5005  préalable pour les mises à jour indépendantes. Si vous avez des paquets qui
5006  peuvent être affectées par la chasse (parce qu'ils ont des bogues critiques par
5007  exemple), vous devriez envoyer une mise à jour pour chaque bogue correspondant
5008  pour expliquer leur état actuel et ce que vous attendez de la chasse. Si vous
5009  ne voulez pas d'une mise à jour indépendante ou si vous n'êtes intéressé que
5010  par un correctif ou si vous voulez gérer vous-même le bogue, veuillez l'expliquer
5011  dans le BTS.
5012 <p>
5013 Les personnes qui participent à la chasse ont des règles spécifiques pour les
5014  mises à jour indépendantes, ils peuvent en faire une sans avertissement
5015  préalable s'ils envoient leur paquet avec un délai d'au moins 3 jours dans
5016  DELAYED/3-day. Toutes les autres règles de mise à jour indépendante
5017  s'appliquent comme d'habitude&nbsp;; ils devraient envoyer le correctif de la
5018  mise à jour dans le BTS (pour l'un des bogues ouverts corrigé par la mise à
5019  jour ou pour un nouveau bogue marqué comme fixé). Ils devraient également
5020  respecter tout souhait du responsable s'il en a exprimé.
5021 <p>
5022 Si vous ne vous sentez pas à l'aise avec une mise à jour indépendante, envoyez
5023  simplement un correctif au BTS. C'est de loin meilleur qu'une mise à jour
5024  défectueuse.
5025
5026     <sect id="contacting-maintainers">Contacter d'autres responsables
5027 <p>
5028 Pendant vos activités dans Debian, vous aurez à contacter d'autres responsables
5029       pour différentes raisons. Vous pourrez vouloir discuter d'une nouvelle
5030       façon de coopérer au sein d'un ensemble de paquets liés, ou vous pouvez
5031       simplement rappeler à quelqu'un qu'une nouvelle version est disponible et
5032       que vous en avez besoin.
5033 <p>
5034 Chercher l'adresse d'un responsable d'un paquet peut être fastidieux.
5035       Heureusement, il existe un alias de courrier simple,
5036       <tt>&lt;paquet&gt;@&packages-host;</tt>, qui fournit un moyen d'envoyer
5037       un courrier à un responsable, quelle que soit son adresse (ou ses
5038       adresses). Remplacez <tt>&lt;paquet&gt;</tt> par le nom du paquet source
5039       ou binaire.
5040 <p>
5041 Vous pouvez également vouloir contacter les personnes qui sont inscrites à un
5042       paquet de source donné par le <ref id="pkg-tracking-system">. Vous pouvez le
5043       faire en utilisant l'adresse <tt>&lt;nom-paquet&gt;@&pts-host;</tt>.
5044
5045 <!-- FIXME: moo@packages.d.o is easily confused with moo@packages.qa.d.o -->
5046
5047     <sect id="mia-qa">Gérer les responsables non joignables
5048 <p>
5049 Si vous remarquez qu'un paquet manque de maintenance, vous devriez vous assurer
5050       que le responsable est toujours actif et qu'il continue à travailler sur
5051       ses paquets. Il est possible qu'il ne soit plus actif, mais qu'il ne se
5052       soit pas désenregistré du système. D'un autre côté, il est possible qu'il
5053       ait simplement besoin d'un rappel.
5054 <p>
5055 Il y a un système simple (la base de données MIA) dans laquelle les informations
5056 sur les responsables supposés Absents En Exercice («&nbsp;Missing In Action) sont enregistrées. Quand un
5057 membre du groupe QA contacte un responsable inactif ou trouve plus d'informations
5058 sur celui-ci, c'est enregistré dans la base de données MIA. Ce système
5059 est disponible dans /org/qa.debian.org/mia sur l'hôte qa.debian.org et peut être
5060 interrogé avec un outil de nom <prgn>mia-history</prgn>. Par défaut,
5061 <prgn>mia-history</prgn> affiche des informations sur toutes les personnes qu'il
5062 connaît, mais il accepte des expressions rationnelles comme paramètre qu'il
5063 utilise comme correspondance de noms d'utilisateur. <example>mia-history
5064 --help</example> affiche quels paramètres sont acceptés. Si vous déterminez
5065 qu'aucune information n'a encore été enregistrée pour un responsable inactif ou
5066 que vous voulez ajouter plus d'informations, vous deviez utiliser la procédure
5067 suivante.
5068 <p>
5069 La première étape est de contacter poliment le responsable et d'attendre une
5070 réponse pendant un temps raisonnable. Il est assez difficile de définir le
5071 «&nbsp;temps raisonnable&nbsp;», mais il est important de prendre en compte que
5072 la vraie vie est parfois assez mouvementée. Une façon de gérer cela pourrait
5073 être d'envoyer un rappel après deux semaines.
5074 <p>
5075 Si le responsable ne répond pas après quatre semaines (un mois), on peut
5076 supposer qu'il n'y aura probablement pas de réponse. Si ceci se produit, vous
5077 devriez poursuivre vos investigations et essayer de réunir toutes les
5078 informations utiles sur ce responsable. Ceci inclut&nbsp;:
5079       <p>
5080       <list>
5081         <item>Les informations «&nbsp;echelon&nbsp;» disponibles dans la <url
5082               id="&url-debian-db;" name="base de données LDAP des
5083               développeurs">, qui indiquent quand le développeur a envoyé un
5084               message pour la dernière fois sur une liste de diffusion Debian
5085               (cela inclut les envois via les listes debian-*-changes).
5086               Rappelez-vous également de vérifier si le responsable est indiqué
5087               comme en vacances dans la base de données.
5088
5089         <item>Le nombre de paquets de ce responsable et les conditions de ces
5090               paquets. En particulier, restent-ils des bogues empêchant
5091               l'intégration du paquet dans la distribution qui sont ouverts
5092               depuis des lustres&nbsp;? De plus, combien de bogues y a-t-il en
5093               général&nbsp;? Un autre point d'information important est si les
5094               paquets ont subi des mises à jour indépendantes et si oui, par
5095               qui.
5096
5097         <item>Est-ce que le responsable est actif en dehors de Debian&nbsp;? Par
5098               exemple, il peut avoir envoyé des messages récemment à des
5099               listes de diffusion non-Debian ou des groupes de discussion.
5100       </list>
5101       <p>
5102 Un gros problème est représenté par les paquets parrainés &mdash;&nbsp;le responsable
5103 n'est pas un développeur Debian officiel. Les informations «&nbsp;echelon&nbsp;»
5104 ne sont pas disponibles pour les personnes parrainés, par exemple, vous devez
5105 donc trouver et contacter le responsable Debian qui a réellement envoyé le
5106 paquet. Étant donné qu'il a signé le paquet, il est responsable de l'envoi de
5107 toute façon et il devrait savoir ce qui s'est passé avec la personne qu'il
5108 parraine.
5109 <p>
5110 Il est également permis d'envoyer une demande à &email-debian-devel; demandant
5111 si quelqu'un est au courant d'information sur le responsable manquant.
5112 <p>
5113 Une fois que vous avez réuni toutes ces informations, vous pouvez contacter
5114 &email-debian-qa;. Les personnes de cet alias utiliseront les informations que
5115 vous aurez fournies pour décider comment procéder. Par exemple, ils peuvent
5116 abandonner un ou tous les paquets du responsable. Si un paquet a subi une mise à
5117 jour indépendante, ils peuvent préférer contacter le responsable ayant fait cette
5118 mise à jour &mdash;&nbsp;il est peut-être intéressé par le paquet.
5119 <p>
5120 Un dernier mot&nbsp;: veuillez vous souvenir d'être poli. Nous sommes tous des
5121 volontaires et nous ne pouvons dédier l'intégralité de notre temps à Debian.
5122 Vous n'êtes pas non plus au courant des circonstances de la personne impliquée.
5123 Elle est peut-être sérieusement malade ou pourrait même nous avoir quitté
5124 &mdash;&nbsp;vous ne savez pas qui recevra vos courriers. Imaginez comme un
5125 proche se sentira s'il lit un courrier pour la personne décédée et trouve un
5126 message très impoli, en colère et accusateur&nbsp;!)
5127 <p>
5128 D'un autre côté, bien que nous soyons tous volontaires, nous avons une
5129 responsabilité. Vous pouvez donc insister sur l'importance du plus grand intérêt
5130 &mdash;&nbsp;si un responsable n'a plus le temps ou l'envie, il devrait
5131 «&nbsp;laisser filer&nbsp;» et donner le paquet à quelqu'un ayant plus de temps.
5132
5133     <sect id="newmaint">
5134       <heading>Interagir avec de futurs développeurs Debian
5135 <p>
5136 Le succès de Debian dépend de sa capacité à attirer et retenir de nouveaux et
5137       talentueux volontaires. Si vous êtes un développeur expérimenté, nous vous
5138       recommandons de vous impliquer dans le processus d'apport des nouveaux
5139       responsables. Cette section décrit comment aider les futurs développeurs.
5140
5141
5142       <sect1 id="sponsoring">Parrainer des paquets
5143 <p>
5144 Parrainer un paquet veut dire envoyer un paquet pour un responsable qui n'est
5145  pas encore autorisé à le faire lui-même, un candidat nouveau responsable.
5146  Parrainer un paquet veut aussi dire que vous en acceptez la responsabilité.
5147 <p>
5148 Si vous désirez être volontaire pour être parrain, vous pouvez vous inscrire à
5149  <url id="&url-sponsors;">.
5150 <p>
5151 Les nouveaux responsables ont habituellement certaines difficultés à créer des
5152  paquets Debian &mdash;&nbsp;ceci est bien compréhensible. C'est pourquoi le parrain
5153  est là pour vérifier que le paquet parrainé est assez bon pour être inclus
5154  dans Debian. (Notez que si le paquet parrainé est nouveau, les ftpmasters
5155  devront également l'inspecter avant de l'intégrer)
5156 <p>
5157 Effectuer un parrainage en signant simplement l'envoi ou en recompilant le
5158  paquet <strong>n'est définitivement pas recommandé</strong>. Vous devez
5159  construire le paquet source comme si vous vouliez construire l'un de vos
5160  paquets. Rappelez-vous que cela ne change rien si vous avez laissé le nom du
5161  candidat développeur dans le changelog et dans le fichier de
5162  contrôle, il est toujours possible de savoir que c'est vous qui avez fait l'envoi.
5163 <p>
5164 Si vous êtes un gestionnaire de candidature pour un futur développeur, vous
5165  pouvez également être son parrain. Ainsi, vous pourrez vérifier comment le
5166  candidat gère la partie «&nbsp;Tâches et Capacités&nbsp;»<footnote>Tasks and
5167  Skills</footnote> de sa candidature.
5168
5169       <sect1>Gérer les paquets parrainés
5170 <p>
5171 En envoyant un paquet sponsorisé vers Debian, vous certifiez que le paquet
5172  atteint les standards minimum de Debian. Ceci implique que vous devez
5173  construire et tester le paquet sur votre propre système avant l'envoi.
5174 <p>
5175 Vous ne pouvez pas simplement envoyer un fichier <file>.deb</file> binaire d'un
5176  filleul. En théorie, vous devriez seulement demander le fichier diff et
5177  l'emplacement de l'archive source d'origine et ensuite vous devriez récupérer
5178  le source et appliquer le diff vous-même. En pratique, vous pouvez vouloir
5179  utiliser le paquet source construit par votre filleul. Dans ce cas, vous devez
5180  vérifier qu'il n'a pas modifié les fichiers sources du fichier
5181  <file>.orig.tar.gz</file> qu'il fournit.
5182 <p>
5183 N'ayez pas peur de répondre au filleul et de lui indiquer les changements qu'il
5184  doit faire. Cela prend souvent plusieurs échanges de courriers avant que le
5185  paquet ne soit dans un état acceptable. Être un parrain veut dire être un
5186  mentor.
5187 <p>
5188 Une fois que le paquet a atteint les standards Debian, construisez et signez le
5189 paquet avec
5190 <example>
5191 dpkg-buildpackage -k<var>KEY-ID</var>
5192 </example>
5193  avant de l'envoyer dans le répertoire incoming. Bien sûr, vous pouvez également
5194 utiliser toute partie de votre <var>KEY-ID</var>, tant qu'elle est unique dans
5195 votre porte-clés secret.
5196 <p>
5197 Le champ Maintainer du fichier <file>control</file> et le fichier
5198  <file>changelog</file> devraient afficher la personne qui a fait l'empaquetage,
5199  c'est-à-dire, le filleul. Celui-ci recevra donc tous les courriers du système
5200  de suivi des bogues (BTS) à propos de son paquet.
5201 <p>
5202 Si vous préférez laisser une trace plus visible de votre travail de parrainage,
5203   vous pouvez ajouter une ligne l'indiquant dans la plus récente entrée du
5204   changelog.
5205 <p>
5206 Vous êtes encouragé à garder un &oelig;il sur le suivi des paquets que vous parrainez
5207   en utilisant le <ref id="pkg-tracking-system">.
5208
5209       <sect1>Recommander un nouveau développeur
5210 <p>
5211 Reportez-vous à la page sur les <url id="&url-newmaint-advocate;"
5212  name="recommandations pour un développeur prospectif"> sur le site web Debian.
5213
5214       <sect1>Gérer les candidatures des nouveaux candidats
5215 <p>
5216 Veuillez vous reporter à la <url id="&url-newmaint-amchecklist;" name="liste à
5217  vérifier pour les responsables de candidatures"> sur le site web Debian.
5218
5219     <chapt id="l10n">Internationalisation, traduction, être internationalisé et
5220     être traduit
5221       <p>
5222 Debian prend en charge un nombre toujours croissant de langues naturelles. Même
5223 si l'anglais est votre langue maternelle et que vous ne parlez pas d'autre
5224 langue, il est de votre devoir de responsable d'être conscient des problèmes
5225 d'internationalisation (abrégé en i18n à cause des 18&nbsp;lettres entre le i et
5226 le n dans internationalisation). C'est pourquoi, même si des programmes
5227 seulement en anglais vous suffisent, vous devriez lire la plupart de ce chapitre.
5228       <p>
5229 Selon l'<url id="http://www.debian.org/doc/manuals/intro-i18n/"
5230 name="introduction à l'i18n"> de Tomohiro KUBOTA, «&nbsp;I18N
5231 (internationalisation) veut dire la modification d'un logiciel ou de
5232 technologies liées pour qu'un logiciel puisse potentiellement gérer des langues
5233 multiples, des conventions multiples et ainsi de suite dans le monde
5234 entier&nbsp;» alors que «&nbsp;L10N (localisation) veut dire l'implémentation dans
5235 une langue spécifique pour un logiciel déjà internationalisé&nbsp;».
5236       <p>
5237 La l10n et l'i18n sont interconnectées, mais les difficultés liées à chacune sont très
5238 différentes. Il n'est pas vraiment difficile de permettre à un programme de
5239 changer la langue dans laquelle sont affichés les textes selon les paramètres de
5240 l'utilisateur, mais il est très coûteux en temps de traduire réellement ces
5241 messages. D'un autre côté, définir le codage des caractères est trivial, mais
5242 adapter le code pour utiliser des codages de caractères différents est un
5243 problème vraiment difficile.
5244       <p>
5245 En laissant de côté les problèmes d'i18n pour lesquels il n'existe pas de règle
5246 générale, il n'y a pas actuellement d'infrastructure centralisée pour la l10n
5247 dans Debian qui puisse être comparée au mécanisme dbuild pour le portage. Le
5248 plus gros du travail doit donc être réalisé manuellement.
5249
5250
5251         <sect id="l10n-handling">Comment sont gérées les traductions au sein de Debian
5252           <p>
5253 La gestion des traductions des textes contenus dans un paquet est encore une
5254 tâche manuelle et le processus dépend du type de texte que vous désirez voir traduit.
5255           <p>
5256 Pour les messages des programmes, l'infrastructure gettext est utilisée pour la
5257 plupart d'entre eux. La plupart du temps, la traduction est gérée en amont dans
5258 des projets comme le
5259 <url id="http://www.iro.umontreal.ca/contrib/po/HTML/" name="projet de trduction
5260             libre">, le <url id="http://developer.gnome.org/projects/gtp/"
5261             name="projet de traduction de Gnome"> ou <url
5262             id="http://i18n.kde.org/" name="celui de KDE">.
5263 La seule ressource centralisée dans Debian est les <url
5264 id="http://www.debian.org/intl/l10n/" name="statistiques de traduction Debian
5265             centralisées"> où vous pouvez trouver des statistiques sur les
5266 fichiers de traduction trouvés dans les paquets, mais il n'y a aucune
5267 infrastructure pour faciliter le processus de traduction.
5268           <p>
5269 Un effort pour traduire les descriptions de paquet a démarré il y a longtemps,
5270 même si les outils fournissent très peu de prise en charge pour les utiliser
5271 vraiment (i.e., seul APT peut les utiliser quand il est configuré
5272 convenablement). Les responsables n'ont rien à faire de particulier pour gérer
5273 les traductions des descriptions de paquets&nbsp;; les traducteurs devraient
5274 utiliser le <url id="http://ddtp.debian.org/" name="DDTP">.
5275           <p>
5276 Pour les questionnaires debconf, les responsable devraient utiliser le paquet
5277 po-debconf pour faciliter le travail des traducteurs, qui peuvent utiliser le
5278 DDTP pour faire leur travail (mais les équipes française et brésilienne ne le
5279 font pas). On peut trouver certaines statistiques à la fois sur le site du
5280 DDTP (à propos de ce qui est vraiment traduit) et sur le site des <url
5281 id="http://www.debian.org/intl/l10n/" name="statistiques de traduction
5282             Debian centralisées"> (à propos de ce qui est intégré dans les paquets).
5283           <p>
5284 Pour les pages web, chaque équipe l10n a accès au CVS correspondant et les
5285 statistiques sont disponibles sur le site des statistiques de traduction Debian
5286 centralisées.
5287           <p>
5288 Pour la documentation générale à propos de Debian, le processus est plus ou
5289 moins le même que pour les pages web (les traducteurs ont accès au CVS), mais
5290 il n'y a pas de page de statistiques.
5291           <p>
5292 Pour la documentation spécifique aux paquets (pages de manuel, documents info,
5293 autres formats), presque tout est encore à faire.
5294           <p>
5295 Le plus notablement, le projet KDE gère la traduction de ses documentations de la
5296 même façon que ses messages de programme.
5297           <p>
5298 Il existe un effort pour gérer les pages de manuel spécifiques Debian au sein
5299 d'un <url id="http://cvs.debian.org/manpages/?cvsroot=debian-doc" name="dépôt
5300             CVS spécifique">.
5301
5302         <sect id="l10n-faqm">FAQ I18N &amp; L10N pour les responsables
5303           <p>
5304 Voici une liste des problèmes que les responsables peuvent rencontrer concernant
5305 l'i18n et la l10n. Lorsque vous lirez cela, gardez à l'esprit qu'il n'y a pas de
5306 consensus sur ces points au sein de Debian et que ce ne sont que des conseils.
5307 Si vous avez une meilleure idée pour un problème donné ou si vous êtes en
5308 désaccord avec certains points, vous êtes libre de fournir vos impressions pour
5309 que ce document puisse être amélioré.
5310
5311           <sect1 id="l10n-faqm-tr">Comment faire en sorte qu'un texte soit traduit
5312             <p>
5313 Pour traduire des descriptions de paquet ou des questionnaires debconf, vous n'avez
5314 rien à faire, l'infrastructure du DDTP répartira le matériel à traduire aux
5315 volontaires sans besoin d'interaction de votre part.
5316             <p>
5317 Pour tous les autres matériels (fichiers gettext, pages de manuel ou autre
5318 documentation), la meilleure solution est de placer votre texte quelque part sur
5319 l'Internet et de demander sur debian-i18n la traduction dans différentes
5320 langues. Certains membres des équipes de traduction sont abonnés à cette liste
5321 et ils prendront soin de la traduction et du processus de relecture. Une fois
5322 qu'ils ont fini, vous recevrez de leur part votre document traduit dans votre
5323 boîte aux lettres.
5324
5325           <sect1 id="l10n-faqm-rev">Comment faire en sorte qu'une traduction
5326           donnée soit relue
5327             <p>
5328 De temps en temps, des personnes indépendantes traduiront certains textes
5329 inclus dans votre paquet et vous demanderont d'inclure la traduction dans le paquet.
5330 Cela peut devenir problématique si vous n'êtes pas familier avec la langue
5331 donnée. C'est une bonne idée d'envoyer le document à la liste de diffusion l10n
5332 correspondante en demandant une relecture. Une fois celle-ci faite, vous devriez
5333 avoir plus confiance dans la qualité de la traduction et l'inclure sans crainte
5334 dans votre paquet.
5335
5336           <sect1 id="l10n-faqm-update">Comment faire en sorte qu'une traduction
5337           donnée soit mise à jour
5338             <p>
5339 Si vous avez certaines traductions d'un texte donné qui traînent, chaque fois
5340 que vous mettez à jour l'original, vous devriez demander au précédent
5341 traducteur de mettre à jour sa traduction avec vos nouveaux changements. Gardez à
5342 l'esprit que cette tâche demande du temps&nbsp;; au moins une semaine pour
5343 obtenir une mise à jour relue.
5344             <p>
5345 Si votre traducteur ne répond pas, vous pouvez demander de l'aide sur la liste de
5346 diffusion correspondante. Si tout échoue, n'oubliez pas de mettre un
5347 avertissement dans le document traduit, indiquant que la traduction est un peu
5348 obsolète et que le lecteur devrait se référer au document d'origine si possible.
5349             <p>
5350 Évitez de supprimer complètement une traduction à cause de son obsolescence. Un
5351 vieux document est souvent mieux que pas de documentation du tout pour les
5352 personnes non anglophones.
5353
5354           <sect1 id="l10n-faqm-bug">Comment gérer un rapport de bogue concernant
5355           une traduction
5356             <p>
5357 La meilleure solution peut être de marquer le bogue comme «&nbsp;suivi au développeur
5358 amont&nbsp;» (<em>forwarded to upstream</em>) et de faire suivre le bogue à la
5359 fois au précédent traducteur et à son équipe (en utilisant la liste de diffusion
5360 debian-l10n-XXX correspondante).
5361 <!-- TODO: add the i18n tag to the bug? -->
5362
5363         <sect id="l10n-faqtr">FAQ I18N &amp; L10N pour les traducteurs
5364           <p>
5365 Lorsque vous lirez cela, gardez à l'esprit qu'il n'y a pas de
5366 procédure générale dans Debian concernant ces points et que, dans tous les cas,
5367 vous devriez collaborer avec votre équipe et les responsables des paquets.
5368
5369           <sect1 id="l10n-faqtr-help">Comment aider l'effort de traduction
5370             <p>
5371 Choisissez ce que vous désirez traduire, assurez-vous que personne ne travaille
5372 déjà dessus (en utilisant votre liste de diffusion debian-l10n-XXX),
5373 traduisez-le, faites-le relire par d'autres personnes dont c'est également la
5374 langue maternelle sur votre liste de diffusion l10n et fournissez-le au
5375 responsable du paquet (voir le point suivant).
5376
5377           <sect1 id="l10n-faqtr-inc">Comment fournir une traduction pour
5378           inclusion dans un paquet
5379             <p>
5380 Assurez-vous que votre traduction est correcte (en demandant une relecture sur
5381 votre liste de discussion l10n) avant de la fournir pour inclusion. Cela
5382 gagnera du temps à tout le monde et évitera le chaos qui résulterait d'avoir
5383 plusieurs versions du même document dans les rapports de bogue.
5384             <p>
5385 La meilleure solution est de remplir un bogue standard contenant la traduction
5386 sur le paquet. Assurez-vous d'utiliser l'étiquette «&nbsp;patch&nbsp;» et
5387 n'utilisez pas une gravité supérieure à «&nbsp;wishlist&nbsp;» car l'absence de
5388 traduction n'empêche jamais un programme de fonctionner.
5389
5390         <sect id="l10n-best">Meilleures pratiques actuelles concernant la l10n
5391           <p>
5392 <list>
5393     <item>
5394 En tant que responsable, ne modifiez jamais les traductions en aucune façon (même
5395 pour reformater l'affichage) sans demander à la liste de diffusion l10n
5396 correspondante. Vous risquez, par exemple, de casser le codage du fichier en
5397 agissant ainsi. De plus, ce que vous considérez comme une erreur peut être
5398 correct (ou même nécessaire) pour une langue donnée.
5399     <item>
5400 En tant que traducteur, si vous trouvez une erreur dans le texte d'origine,
5401 assurez-vous de l'indiquer. Les traducteurs sont souvent les lecteurs les plus
5402 attentifs d'un texte donné et s'ils ne rendent pas compte des erreurs qu'ils
5403 trouvent, personne ne le fera.
5404     <item>
5405 Dans tous les cas, rappelez-vous que le problème principal avec la l10n est
5406 qu'elle demande la coopération de plusieurs personnes et qu'il est très facile
5407 de démarrer une guerre incendiaire à propos de petits problèmes dûs à des
5408 incompréhensions. Donc, si vous avez des problèmes avec votre interlocuteur,
5409 demandez de l'aide sur la liste de diffusion l10n correspondante, sur
5410 debian-i18n ou même sur debian-devel (attention, cependant, les discussions sur
5411 la l10n tournent très souvent à l'incendie sur cette liste :)
5412     <item>
5413 Dans tous les cas, la coopération ne peut être atteinte qu'avec un
5414 <strong>respect mutuel</strong>.
5415 </list>
5416
5417
5418     <appendix id="tools">Aperçu des outils du responsable Debian
5419 <p>
5420 Cette section contient un aperçu rapide des outils dont dispose le responsable.
5421       Cette liste n'est ni complète, ni définitive, il s'agit juste d'un guide
5422       des outils les plus utilisés.
5423 <p>
5424 Les outils du responsable Debian sont destinés à aider les
5425       responsables et libérer leur temps pour des tâches plus cruciales. Comme le dit
5426       Larry Wall, il y a plus d'une manière de le faire.
5427 <p>
5428 Certaines personnes préfèrent utiliser des outils de haut niveau, d'autres pas.
5429       Debian n'a pas de position officielle sur la question&nbsp;; tout outil
5430       conviendra du moment qu'il fait le boulot. C'est pourquoi cette section
5431       n'a pas été conçue pour indiquer à chacun quel outil il doit utiliser ou
5432       comment il devrait faire pour gérer sa charge de responsable Debian. Elle
5433       n'est pas non plus destinée à favoriser l'utilisation d'un outil aux
5434       dépens d'un autre.
5435 <p>
5436 La plupart des descriptions de ces outils proviennent des descriptions de leurs
5437       paquets. Vous trouverez plus d'informations dans les documentations de ces
5438       paquets. Vous pouvez aussi obtenir plus d'informations avec la commande
5439       <tt>apt-cache show &lt;nom_paquet&gt;</tt>.</p>
5440
5441
5442       <sect id="tools-core">
5443         <heading>Outils de base</heading>
5444         <p>
5445 Les outils suivants sont pratiquement nécessaires à tout responsable.</p>
5446
5447
5448       <sect1 id="dpkg-dev">
5449           <heading><package>dpkg-dev</package></heading>
5450 <p>
5451 Le paquet <package>dpkg-dev</package> contient les outils (y compris
5452  <prgn>dpkg-source</prgn>) nécessaires pour déballer, fabriquer et livrer des
5453  paquets Debian source. Ces utilitaires fournissent les fonctionnalités de bas
5454  niveau indispensables pour créer et manipuler les paquets&nbsp;; en tant que
5455  tels, ils sont essentiels à tout responsable Debian.
5456
5457       <sect1 id="debconf">
5458           <heading><package>debconf</package></heading>
5459 <p>
5460 Le paquet <package>debconf</package> fournit une interface unifiée pour
5461  configurer les paquets interactivement. Il est indépendant de l'interface et
5462  permet une configuration en mode texte, par une interface HTML ou par boîtes de
5463  dialogue. D'autres types d'interface peuvent être ajoutés sous forme de
5464  modules.
5465 <p>
5466 Vous trouverez la documentation de ce paquet dans le paquet
5467  <package>debconf-doc</package>.
5468 <p>
5469 Beaucoup pensent que ce système devrait être utilisé pour tout paquet
5470  nécessitant une configuration interactive&nbsp;; reportez-vous à la <ref
5471  id="bpp-config-mgmt">. <package>debconf</package> n'est pas requis par la
5472  <em>charte Debian</em> pour le moment&nbsp;; cependant, cela pourra changer.
5473 </sect1>
5474
5475       <sect1 id="fakeroot">
5476         <package>fakeroot</package>
5477 <p>
5478 <package>fakeroot</package> simule les privilèges <em>root</em>. Cela permet de
5479  fabriquer un paquet sans être root (en général, les paquets installent des
5480  fichiers appartenant à <em>root</em>). Si vous avez installé
5481  <package>fakeroot</package>, vous pouvez construire un paquet en tant que
5482  simple utilisateur avec&nbsp;: <tt>dpkg-buildpackage -rfakeroot</tt>.
5483
5484
5485       <sect id="tools-lint">
5486         <heading>Outils du paquet lint</heading>
5487         <p>
5488 Selon le «&nbsp;Free On-line Dictionary of Computing&nbsp;» (FOLDOC),
5489 «&nbsp;lint&nbsp;» est «&nbsp;un outil de traitement de langage C qui contient
5490 beaucoup plus de tests complets sur le code que n'en font habituellement les
5491 compilateurs C.&nbsp;». Les outils du paquet lint aide les responsables de
5492 paquet à trouver automatiquement des problèmes habituels et des violations de
5493 charte dans leurs paquets</p>
5494
5495       <sect1 id="lintian">
5496           <heading><package>lintian</package></heading>
5497 <p>
5498 <package>lintian</package> dissèque les paquets pour y repérer des bogues et des
5499  manquements aux règles de développement. Il contient des tests automatisés pour
5500  vérifier de nombreuses règles et quelques erreurs courantes.
5501 <p>
5502 Vous devriez récupérer la dernière version de <package>lintian</package> depuis
5503  <em>unstable</em> régulièrement et vérifier tous vos paquets. Notez que
5504  l'option <tt>-i</tt> donne des explications détaillées sur la signification de
5505  chaque erreur, la partie concernée dans la charte et le moyen habituel de
5506  régler le problème.
5507 <p>
5508 Veuillez vous reporter à <ref id="sanitycheck"> pour plus d'informations sur
5509 comment et quand utiliser Lintian.
5510 <p>
5511  Vous pouvez aussi obtenir un résumé de tous les problèmes reportés par Lintian
5512  sur vos paquets à <url id="&url-lintian;">. Ces rapports contiennent la sortie
5513  de la dernière version de <prgn>lintian</prgn> pour l'ensemble de la
5514  distribution de développement (<em>unstable</em>).
5515 </sect1>
5516
5517         <sect1 id="linda">
5518           <heading><package>linda</package></heading>
5519           <p>
5520 <package>linda</package> est un autre vérificateur de paquet. Il est semblable à
5521 <package>lintian</package>, mais il a un ensemble de tests différents. Il est écrit
5522 en Python plutôt qu'en Perl.</p>
5523         </sect1>
5524
5525
5526         <sect1 id="debdiff">
5527           <heading><package>debdiff</package></heading>
5528           <p>
5529 <prgn>debdiff</prgn> (du paquet <package>devscripts</package>, <ref
5530 id="devscripts">) compare des listes de fichiers et des fichiers de contrôle de
5531 deux paquets. C'est un simple test de régression qui peut vous aider à remarquer
5532 si le nombre de paquets binaires à changer depuis le dernier envoi ou si autre
5533 chose a changé dans le fichier de contrôle. Bien sûr, certains des changements
5534 qu'il indique sont normaux, mais il peut aider à empêcher différents accidents.
5535           <p>
5536 Vous pouvez l'exécuter sur un couple de paquets binaires&nbsp;:
5537 <example>
5538 debdiff package_1-1_arch.deb package_2-1_arch.deb
5539 </example>
5540           <p>
5541 Ou même sur un couple de fichiers de changements&nbsp;:
5542 <example>
5543 debdiff package_1-1_arch.changes package_2-1_arch.changes
5544 </example>
5545           <p>
5546 Pour plus d'informations, veuillez voir <manref name="debdiff" section="1">.
5547         </sect1>
5548
5549
5550       </sect>
5551
5552       <sect id="tools-helpers">
5553         <heading>Aides pour le fichier <file>debian/rules</file></heading>
5554         <p>
5555 Des outils de construction de paquets rendent le processus d'écriture du fichier
5556 <file>debian/rules</file> plus facile. Veuillez voir les <ref
5557 id="helper-scripts"> pour plus d'informations sur les raisons pour lesquelles
5558 ils peuvent être désirables ou non.
5559
5560       <sect1 id="debhelper">
5561         <heading><package>debhelper</package></heading>
5562 <p>
5563 Le paquet <package>debhelper</package> regroupe un ensemble de programmes qui
5564  peuvent être utilisés dans <file>debian/rules</file> pour automatiser les
5565  tâches courantes relatives à la fabrication des paquets Debian binaires.
5566  <package>debhelper</package> inclut des programmes pour installer différents
5567  fichiers, les compresser, ajuster leurs droits et intégrer votre paquet dans le
5568  système de menu Debian.
5569 <p>
5570 À la différence d'autres approches, <package>debhelper</package> est divisé en
5571  plusieurs petits utilitaires simples qui agissent de manière cohérente. Ce découpage
5572  permet un contrôle des opérations plus fin que certains des autres «&nbsp;<em>outils
5573  debian/rules</em>&nbsp;».
5574 <p>
5575 Il existe aussi un certain nombre de petites extensions
5576  <package>debhelper</package> trop éphémères pour être documentées. Vous en
5577  listerez la plupart en faisant <tt>apt-cache search ^dh-</tt>.
5578 </sect1>
5579
5580
5581       <sect1 id="debmake">
5582           <heading><package>debmake</package></heading>
5583 <p>
5584 <package>debmake</package> &mdash; un précurseur de <package>debhelper</package>
5585  &mdash; est un assistant moins modulaire pour manipuler le fichier
5586  <file>debian/rules</file>. Il inclut deux programmes principaux&nbsp;:
5587  <prgn>deb-make</prgn>, utile au développeur Debian pour convertir un paquet
5588  source normal (non-Debian) en paquet source Debian, et <prgn>debstd</prgn> qui
5589  regroupe le type de fonction que l'on trouve dans <package>debhelper</package>.
5590 <p>
5591 Le consensus actuel est que l'usage de <package>debmake</package> est
5592  déconseillé au profit de <package>debhelper</package>, mais ce n'est pas une
5593  erreur d'utiliser <package>debmake</package>.
5594 </sect1>
5595
5596         <sect1 id="dh-make">
5597           <heading><package>dh-make</package>
5598         <p>
5599 Le paquet <package/dh-make/ contient <prgn/dh_make/, un programme qui crée un
5600 squelette de fichiers nécessaires à la construction d'un paquet Debian à partir
5601 d'une arborescence source. Comme le nom le suggère, <prgn/dh_make/ est une
5602 réécriture de <package/debmake/ et ses fichiers modèles utilisent les
5603 programmes dh_* de <package/debhelper/.
5604         <p>
5605 Quoique les fichiers de règles fabriqués par <prgn/dh_make/ constituent en général
5606 une base suffisante pour un paquet fonctionnel, ce ne sont que les
5607 fondations&nbsp;: la charge incombe toujours au responsable d'affiner 
5608 les fichiers générés et de rendre le paquet complètement fonctionnel et
5609 en conformité avec la charte.
5610         </sect1>
5611
5612       <sect1 id="yada">
5613           <heading><package>yada</package></heading>
5614 <p>
5615 Le paquet <package>yada</package> est un autre assistant pour la création de
5616  paquets. Il utilise un fichier <file>debian/packages</file> pour générer
5617  <file>debian/rules</file> et d'autres fichiers nécessaires dans le
5618  sous-répertoire <file>debian/</file>. Le fichier <file>debian/packages</file>
5619  contient des instructions pour construire les paquets et il n'y a pas besoin de
5620  créer de fichiers
5621 <file>Makefile</file>. Il existe la possibilité d'utiliser un moteur de macros
5622  semblable à celui utilisé dans les fichiers SPECS des paquets source RPM.</p>
5623         <p>
5624 Pour plus d'informations, voir le
5625 <tt><url id="http://yada.alioth.debian.org/" name="site de YADA"></tt>.</p>
5626 </sect1>
5627
5628
5629       <sect1 id="equivs">
5630           <heading><package>equivs</package></heading>
5631 <p>
5632 <package>equivs</package> est un autre paquet pour faire des paquets. Il est
5633  souvent conseillé pour un usage local, si vous avez besoin de faire un paquet
5634  pour satisfaire des dépendances. Il est aussi parfois utilisé pour faire des
5635  «&nbsp;méta-paquets&nbsp;» qui sont des paquets dont l'unique objet est de
5636  dépendre d'autres paquets.</p>
5637  </sect1>
5638 </sect>
5639
5640
5641       <sect id="tools-builders">
5642         <heading>Constructeurs de paquets</heading>
5643         <p>
5644 Les paquets suivants aident le processus de construction des paquets, en général
5645 en contrôlant <prgn>dpkg-buildpackage</prgn> ainsi que la gestion du support de
5646 tâches.
5647
5648       <sect1 id="cvs-buildpackage">
5649           <heading><package>cvs-buildpackage</package></heading>
5650 <p>
5651 Le paquet <package>cvs-buildpackage</package> permet de mettre à jour ou de
5652  récupérer des paquets sources dans un référentiel CVS, il permet de fabriquer
5653  un paquet Debian depuis le référentiel CVS et il assiste le développeur lors de
5654  l'intégration de modifications amont dans le référentiel.
5655 <p>
5656 Ce paquet fournit l'infrastructure facilitant l'utilisation de CVS pour le
5657  responsable Debian. Il permet de conserver des branches CVS distinctes pour les
5658  distributions <em>stable</em>, <em>unstable</em> et probablement
5659  <em>experimental</em> et de bénéficier des avantages d'un système de contrôle
5660  de version.
5661  </sect1>
5662
5663       <sect1 id="debootstrap">
5664           <heading><package>debootstrap</package></heading>
5665 <p>
5666 Le paquet <package>debootstrap</package> vous permet d'amorcer un système Debian
5667  de base à n'importe quel endroit dans votre système de fichiers. Par
5668  «&nbsp;système de base&nbsp;», nous entendons le strict minimum nécessaire pour
5669  fonctionner et installer le reste du système.
5670 <p>
5671 Avoir un système comme celui-ci peut vous servir de différentes manières. Vous
5672  pouvez, par exemple, déplacer votre racine dans ce système avec
5673  <prgn>chroot</prgn> pour tester vos dépendances de construction. Vous pouvez
5674  aussi l'utiliser pour voir comment se comporte votre paquet quand il est
5675  installé dans un environnement minimum.
5676         </sect1>
5677
5678       <sect1 id="pbuilder">
5679           <heading><package>pbuilder</package></heading>
5680 <p>
5681 <package>pbuilder</package> construit un système «&nbsp;chrooté&nbsp;» et
5682  compile des paquets dans ce système. Ceci est très utile pour vérifier que les
5683  dépendances de compilation de votre paquet sont correctes et pour vous assurer
5684  qu'aucune dépendance de construction inutile ou incorrecte n'existe dans le
5685  paquet résultant.
5686 <p>
5687 Un paquet lié est <package>pbuilder-uml</package>, qui va même plus loin en
5688 réalisant la construction au sein d'un environnement «&nbsp;User Mode Linux&nbsp;».</p>
5689         </sect1>
5690
5691       <sect1 id="sbuild">
5692           <heading><package>sbuild</package></heading>
5693 <p>
5694 <package>sbuild</package> est un autre compilateur automatique. Il peut aussi
5695  être utilisé dans un environnement «&nbsp;chrooté&nbsp;». Il peut être utilisé
5696  seul ou comme partie d'un environnement de compilation distribué en réseau.
5697  Comme le précédent, c'est une partie du système utilisé par les porteurs pour
5698  construire des paquets binaires pour toutes les architectures disponibles.
5699  Veuillez vous reporter à <ref id="buildd"> pour plus d'informations et à <url
5700  id="&url-buildd;"> pour voir le système en fonctionnement.</p>
5701         </sect1>
5702       </sect>
5703
5704       <sect id="uploaders">
5705         <heading>Téléchargeurs de paquets</heading>
5706         <p>
5707 Les paquets suivants aident à automatiser ou à simplifier le processus d'envoi
5708 de paquets dans l'archive officielle.</p>
5709
5710       <sect1 id="dupload">
5711           <heading><package>dupload</package></heading>
5712 <p>
5713 Le paquet <package>dupload</package> contient un script du même nom pour mettre
5714  à jour des paquets dans l'archive Debian, tracer les mises à jour et les
5715  annoncer par courrier électronique automatiquement. Vous pouvez le configurer
5716  pour faire des mises à jour à d'autres endroits et avec d'autres méthodes.
5717         </sect1>
5718
5719       <sect1 id="dput">
5720           <heading><package>dput</package></heading>
5721 <p>
5722 Le script <package>dput</package> fait à peu près la même chose que
5723  <package>dupload</package>, mais il le fait différemment. Il a aussi quelques
5724  fonctions supplémentaires telles que la possibilité de vérifier la signature
5725  GnuPG et les sommes de contrôles avant le téléchargement et la possibilité de
5726  démarrer <prgn>dinstall</prgn> en mode simulation (<em>dry-run</em>) après le
5727  téléchargement.
5728         </sect1>
5729         <sect1 id="dcut">
5730           <heading><package>dcut</package></heading>
5731           <p>
5732 Le script <package>dcut</package> (faisant partie du paquet <ref id="dput">)
5733 aide à la suppression de fichiers du répertoire d'envoi ftp.
5734         </sect1>
5735       </sect>
5736
5737
5738       <sect id="tools-maint-automate">
5739         <heading>Automatisation de la maintenance</heading>
5740         <p>
5741 Les outils suivants aident à automatiser les différentes tâches de maintenance
5742 par l'ajout des entrées de changelog ou de lignes de signatures, par la
5743 recherche de bogues à partir d'Emacs et par l'utilisation du fichier officiel
5744 <file>config.sub</file> le plus récent.</p>
5745
5746
5747         <sect1 id="devscripts">
5748           <heading><package>devscripts</package></heading>
5749 <p>
5750 Le paquet <package>devscripts</package> contient des scripts et outils qui sont
5751  très utiles pour maintenir vos paquets Debian. Parmi ces scripts, vous
5752  trouverez <prgn>debchange</prgn> et <prgn>dch</prgn> qui manipulent votre
5753  fichier <file>debian/changelog</file> depuis la ligne de commande et
5754  <prgn>debuild</prgn> qui est construit au-dessus de
5755  <prgn>dpkg-buildpackage</prgn>. L'outil <prgn>bts</prgn> est également très
5756  utile pour mettre à jour l'état des rapports de bogue depuis la ligne de
5757  commande. Le programme <prgn>uscan</prgn> peut être utilisé pour suivre les
5758  nouvelles versions amont de vos paquets. Le programme <prgn>debrsign</prgn>
5759  peut être utilisé pour signer à distance un paquet avant de l'envoyer, ce qui
5760  est agréable quand la machine sur laquelle vous construisez le paquet est
5761  différente de celle où résident vos clés GPG.</p>
5762 <p>
5763 Vérifiez la page de manuel <manref section="1" name="devscripts"> pour une liste
5764  complète des scripts disponibles.
5765
5766         <sect1 id="autotools-dev">
5767           <heading><package>autotools-dev</package></heading>
5768           <p>
5769 <package>autotools-dev</package> contient les meilleurs pratiques pour des personnes assurant la maintenance de
5770 paquets qui utilisent <prgn>autoconf</prgn> et/ou <prgn>automake</prgn>.
5771 Contient également des fichiers canoniques <file>config.sub</file> et
5772 <file>config.guess</file> qui sont connus pour fonctionner avec tous les
5773 portages Debian.</p>
5774         </sect1>
5775
5776         <sect1 id="dpkg-repack">
5777           <heading><package>dpkg-repack</package></heading>
5778           <p>
5779 <prgn>dpkg-repack</prgn> crée un paquet Debian à partir d'un paquet qui
5780 a déjà été installé. Si des changements ont été effectués sur le paquet quand il
5781 a été décompacté (par exemple, des fichiers dans <file>/etc</file> ont été
5782 modifiés), le nouveau paquet héritera de ces changements.</p>
5783           <p>
5784 Cet utilitaire peut faciliter la copie de paquet d'un ordinateur vers un autre
5785 ou la re-création de paquets installés sur un système, mais qui ne sont plus
5786 disponibles ailleurs ou pour sauvegarder l'état actuel d'un paquet avant de le
5787 mettre à jour.</p>
5788         </sect1>
5789
5790         <sect1 id="alien">
5791           <heading><package>alien</package></heading>
5792           <p>
5793 <prgn>alien</prgn> convertit des paquets binaires entre différents formats de
5794 paquets, y compris des paquets Debian, RPM (RedHat), LSB (Linux Standard Base),
5795 Solaris et Slackware.</p>
5796         </sect1>
5797
5798         <sect1 id="debsums">
5799           <heading><package>debsums</package></heading>
5800           <p>
5801 <prgn>debsums</prgn> vérifie des paquets installés par rapport à leur somme de
5802 hachage MD5. Veuillez noter que tous les paquets n'ont pas de sommes MD5 car
5803 elles ne sont pas requises par la charte.</p>
5804         </sect1>
5805
5806       <sect1 id="dpkg-dev-el">
5807           <heading><package>dpkg-dev-el</package></heading>
5808 <p>
5809 <package>dpkg-dev-el</package> fournit des macros Emacs Lisp qui apportent une
5810  aide lors de l'édition des fichiers du répertoire <file>debian</file> de votre
5811  paquet. Par exemple, il y a des fonctions pratiques pour lister les bogues
5812  actuels d'un paquet et pour finaliser la dernière entrée d'un fichier
5813 <file>debian/changelog</file> file.
5814 </sect1>
5815
5816
5817         <sect1 id="dpkg-depcheck">
5818           <heading><package>dpkg-depcheck</package></heading>
5819           <p>
5820 <prgn>dpkg-depcheck</prgn> (du paquet <package>devscripts</package>, <ref
5821 id="devscripts">) exécute une commande sous <prgn>strace</prgn> pour déterminer
5822 tous les paquets utilisés par la commande.
5823           <p>
5824 Pour les paquets Debian, c'est utile quand vous devez créer une ligne
5825 <tt>Build-Depends</tt> pour votre nouveau paquet&nbsp;: exécuter le processus de
5826 compilation avec <prgn>dpkg-depcheck</prgn> vous fournira une bonne première
5827 approximation des dépendances de compilation. Par exemple&nbsp;:
5828 <example>
5829 dpkg-depcheck -b debian/rules build
5830 </example>
5831           <p>
5832 <prgn>dpkg-depcheck</prgn> peut aussi être utilisé pour vérifier les dépendances
5833 d'exécution, particulièrement si votre paquet utilise exec(2) pour exécuter
5834 d'autres programmes.
5835           <p>
5836 Pour plus d'informations, veuillez voir <manref name="dpkg-depcheck" section="1">.
5837         </sect1>
5838
5839
5840       <sect id="tools-porting">
5841         <heading>Outils de portage</heading>
5842         <p>
5843 Les outils suivants facilitent le travail des porteurs et la compilation
5844 croisée.</p>
5845
5846         <sect1 id="quinn-diff">
5847           <heading><package>quinn-diff</package></heading>
5848 <p>
5849 <package>quinn-diff</package> est utilisé pour localiser les différences d'une
5850    architecture à l'autre. Il pourrait vous dire, par exemple, quels paquets de
5851    l'architecture <var>X</var> doivent être portés sur l'architecture
5852    <var>Y</var>.
5853
5854         <sect1 id="dpkg-cross">
5855             <heading><package>dpkg-cross</package></heading>
5856 <p>
5857 <package>dpkg-cross</package> est un outil qui installe les bibliothèques et les
5858    en-têtes nécessaires à une compilation
5859    croisée<footnote><p><em>cross-compilation</em></footnote> d'une manière
5860    similaire à <package>dpkg</package>. De plus, les paquets
5861    <prgn>dpkg-buildpackage</prgn> et <prgn>dpkg-shlibdeps</prgn> ont été
5862    améliorés pour accepter les compilations croisées.
5863
5864       <sect id="tools-doc">
5865         <heading>Documentation et information</heading>
5866         <p>
5867 Les paquets suivants fournissent des informations pour les responsables ou de
5868 l'aide pour construire de la documentation
5869
5870         <sect1 id="debiandoc-sgml">
5871           <heading><package>debiandoc-sgml</package></heading>
5872           <p>
5873 <package>debiandoc-sgml</package> fournit la DTD DebianDoc SGML qui est
5874 habituellement utilisée pour la documentation Debian. Ce manuel, par exemple,
5875 est écrit en DebianDoc. Il fournit également des scripts pour construire et
5876 décliner le source en de multiples formats de sortie.</p>
5877           <p>
5878 La documentation sur la DTD peut être trouvée dans le paquet
5879 <package>debiandoc-sgml-doc</package>.</p>
5880         </sect1>
5881
5882         <sect1 id="debian-keyring">
5883           <heading><package>debian-keyring</package></heading>
5884           <p>
5885 Contient les clés publiques GPG et PGP des développeurs Debian. Voir <ref
5886 id="key-maint"> et la documentation du paquet pour plus d'informations.</p>
5887         </sect1>
5888
5889         <sect1 id="debview">
5890           <heading><package>debview</package></heading>
5891           <p>
5892 <package>debview</package> fournit un mode Emacs pour voir les paquets binaires
5893 Debian. Il vous permet d'examiner un paquet sans le décompresser.</p>
5894         </sect1>
5895       </sect>
5896
5897
5898 <!-- FIXME: add the following
5899
5900 questionable:
5901   dbs (referred to above)
5902   dpatch (referred to above)
5903   debarchiver
5904   ucf
5905   dpkg-awk
5906   grep-dctrl
5907   d-shlibs
5908   wajig
5909   magpie
5910   apt-dpkg-ref
5911   apt-show-source
5912   apt-show-versions
5913   pdbv
5914   epm
5915   apt-src
5916   apt-build
5917
5918 rejected:
5919   debaux: too new, unmaintained?
5920   dh-make-perl: too new, unmaintained?
5921 -->
5922
5923     </appendix>
5924   </book>
5925 </debiandoc>
5926
5927 <!-- Keep this comment at the end of the file
5928 Local variables:
5929 mode: sgml
5930 sgml-omittag:t
5931 sgml-shorttag:t
5932 sgml-minimize-attributes:nil
5933 sgml-always-quote-attributes:t
5934 sgml-indent-step:2
5935 sgml-indent-data:nil
5936 sgml-parent-document:nil
5937 sgml-exposed-tags:nil
5938 sgml-declaration:nil
5939 sgml-local-catalogs:nil
5940 sgml-local-ecat-files:nil
5941 End:
5942 -->
5943