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