chiark / gitweb /
start next version
[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 independant entities -->
6   <!entity % commondata  SYSTEM "common.ent" > %commondata;
7
8   <!-- CVS revision of this document -->
9   <!entity cvs-rev "$Revision: 1.34 $">
10   <!-- if you are translating this document, please notate the CVS
11        revision of the developers reference here -->
12   <!--
13     <!entity cvs-en-rev "1.153">
14     -->
15
16   <!--  -->
17   <!entity FIXME "<em>FIXME:</em>&nbsp;">
18
19 ]>
20 <debiandoc>
21 <!--
22  TODO:
23   - bugs in upstream versions should be reported upstream!
24   - add information on how to get accounts on different architectures
25   - talk about CVS access, other ways to submit problems
26   - add information on how you can contribute w/o being an official
27     developer
28   - "official port maintainer" ? (cf. glibc-pre2.1)
29  -->
30
31   <book>
32
33       <title>Référence du développeur Debian
34       <author>Adam Di Carlo, responsable actuel<email>aph@debian.org</email>
35       <author>Raphaël Hertzog, co-responsable <email>hertzog@debian.org</email>
36       <author>Christian Schwarz <email>schwarz@debian.org</email>
37       <author>Ian Jackson <email>ijackson@gnu.ai.mit.edu</email>
38       <author>&nbsp;
39       <author>version française par Antoine Hulin <email>antoine.hulin@origan.fdn.org</email>
40       <author>et Frédéric Bothamy (traducteur actuel) <email>fbothamy@mail.dotcom.fr</email>
41       <author>et les membres de la liste <email>debian-l10n-french@lists.debian.org</email>
42       <version>Version &version;, &date-fr; (version française 20021231).</version>
43
44       <copyright>
45         <copyrightsummary>Copyright &copy; 1998&mdash;2002 Adam Di Carlo</copyrightsummary>
46         <copyrightsummary>Copyright &copy; 2002 Raphaël Hertzog</copyrightsummary>
47         <copyrightsummary>Copyright &copy; 1997, 1998 Christian Schwarz.</copyrightsummary>
48 <p>
49 Ce manuel est un logiciel libre&nbsp;; il peut être redistribué et/ou modifié
50 selon les termes de la licence publique générale du projet GNU (GNU GPL), telle
51 que publiée par la «&nbsp;Free Software Foundation&nbsp;» (version 2 ou toute
52 version postérieure).
53
54 <p>
55 Il est distribué dans l'espoir qu'il sera utile, mais <em>sans aucune
56 garantie</em>, sans même la garantie implicite d'une possible valeur marchande
57 ou d'une adéquation à un besoin particulier. Consultez la licence publique
58 générale du projet GNU pour plus de détails.
59
60 <p>Une copie de la licence publique générale du projet GNU est disponible dans
61 le fichier &file-GPL; de la distribution &debian-formal; ou sur la toile&nbsp;:
62 <url id="&url-gpl" name="la licence publique générale du projet GNU">. Vous
63 pouvez également l'obtenir en écrivant à la &fsf-addr;.
64
65     <toc detail="sect1">
66
67     <chapt id="scope">Portée de ce document
68
69 <p>
70 Le but de ce document est de donner une vue d'ensemble des procédures à suivre
71 et des ressources mises à la disposition des développeurs Debian.
72
73 <!-- FIXME: rewrites -->
74 <p>
75 Les procédures décrites ci-après expliquent comment devenir
76 responsable Debian (<ref id="new-maintainer">), comment installer des nouveaux
77 paquets dans l'archive (<ref id="upload">), quand et comment faire un portage ou
78 une mise à jour du paquet d'un autre responsable (<ref id="nmu">), comment
79 déplacer, effacer ou abandonner un paquet (<ref id="archive-manip">) et comment
80 gérer les rapports de bogues (<ref id="bug-handling">).
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. C'est une sorte de guide pratique.
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...
110
111 <p>
112 En conséquence, la langue utilisée dans toutes les listes de diffusion destinées
113 aux développeurs est l'anglais et les rapports de bogue doivent être rédigés en
114 anglais. En fait, sauf exception rare, tout dialogue avec les autres
115 responsables Debian se fera en anglais quel que soit le média.
116
117
118         <sect1>Glossaire
119
120 <p>
121 Cette section liste les termes techniques qui ont un sens spécifique dans le
122 projet Debian. Pour chacune de ces expressions, vous trouverez la traduction
123 française utilisée dans ce manuel, une définition et une référence à la section
124 du manuel qui traite de ce sujet.
125
126
127 <list>
128         <item><em>Upload</em>&nbsp;: mise à jour, téléchargement (parfois
129         livraison). Opération qui consiste à télécharger un nouveau paquet ou
130         une nouvelle version de paquet dans l'archive Debian (<ref
131         id="upload">).
132
133         <item><em>Non-maintainer upload (NMU)</em>&nbsp;: mise à jour
134         indépendante. Téléchargement d'une nouvelle version de paquet dans
135         l'archive Debian par une personne qui n'est pas officiellement
136         responsable de ce paquet (<ref id="nmu">).
137
138         <item><em>Source NMU</em>&nbsp;: mise à jour indépendante source. Il
139         s'agit d'une mise à jour indépendante pour un paquet source (<ref
140         id="nmu-terms">).
141
142         <item><em>Binary NMU</em>&nbsp;: mise à jour indépendante binaire. Mise
143         à jour indépendante pour un paquet binaire (<ref id="nmu-terms">).
144
145         <item><em>Bug Tracking System (BTS)</em>&nbsp;: système de suivi des
146         bogues. Il s'agit du système utilisé par le projet Debian pour suivre
147         les bogues et leur correction (<ref id="bug-handling">).
148
149         <item><em>Bug submitter</em>&nbsp;: rapporteur du bogue. Personne qui
150         envoie un rapport de bogue au système de suivi des bogues (<ref
151         id="submit-bug">).
152
153         <item><em>Release critical bug</em>&nbsp;: bogue empêchant l'intégration
154         du paquet dans la distribution. Bogues de gravité <em>critique</em>,
155         <em>grave</em> et <em>sérieuse</em>. Ces bogues ne doivent pas
156         apparaître dans une distribution <em>stable</em>. Ils doivent être
157         corrigés ou bien les paquets en cause doivent être supprimés (<ref
158         id="rc-bugs">).
159
160         <item><em>Package Tracking System (PTS)</em>&nbsp;: système de suivi des
161         paquets. Il s'agit du système utilisé par le projet Debian pour suivre
162         les paquets sources des différentes distributions (<ref
163         id="pkg-tracking-system">).
164
165         <item><em>Unstable</em>&nbsp;: Nom de la distribution en cours de
166         développement. Cette distribution contient les paquets envoyés par les
167         développeurs. Ceux-ci étant humains, elle est parfois cassée (<ref
168         id="sec-dists">).
169
170         <item><em>Testing</em>&nbsp;: Nom de la distribution en test. Cette
171         distribution reçoit les paquets des développeurs qui ont passé une
172         période de deux semaines dans <em>unstable</em> et pour lesquels aucun
173         bogue remettant en cause la distribution (cf. <em>Release critical
174         bug</em>) n'a été découvert. Cette distribution n'a pas été testée en
175         profondeur. Elle est cependant censée être plus stable que
176         <em>unstable</em> (<ref id="sec-dists">).
177
178         <item><em>Stable</em>&nbsp;: Nom de la distribution dite stable. Cette
179         distribution a été testée, validée et diffusée (<ref id="sec-dists">).
180
181         <item><em>Debian maintainer</em>&nbsp;: responsable Debian, développeur
182         Debian (parfois mainteneur). Personne qui fait officiellement partie du
183         projet Debian. Elle a accès aux serveurs Debian et participe au
184         développement &mdash; au sens large &mdash; de la distribution (<ref
185         id="developer-duties">). La plupart des responsables font de la mise en
186         paquet, mais il existe d'autres activités telles que la documentation,
187         la gestion du site web, la création des cédéroms, l'administration des
188         serveurs, etc.
189
190         <item><em>Upstream version</em>&nbsp;: version amont. Il s'agit du
191         logiciel tel qu'il est fourni par le responsable amont &mdash; par
192         opposition à la version fournie par la distribution Debian. (Voir <ref
193         id="upstream-coordination">.)
194
195         <item><em>Upstream maintainer</em>&nbsp;: responsable amont ou
196         développeur amont. Personne(s) responsable(s) du développement ou de la
197         maintenance d'un logiciel. En général, le responsable amont n'a rien à
198         voir avec le projet Debian (<ref id="upstream-coordination">).
199
200         <item><em>Debian keyring</em>&nbsp;: porte-clés Debian. Le porte-clés
201         Debian contient les clés publiques de tous les responsables Debian (<ref
202         id="key-maint">).
203
204         <item><em>Work-needing and prospective packages (WNPP)</em>&nbsp;:
205         paquets en souffrance et paquets souhaités. La liste des paquets en
206         souffrance indique les paquets qui n'ont plus de responsable. La liste
207         des paquets souhaités indique les logiciels que des utilisateurs
208         aimeraient bien voir dans la distribution (<ref id="upload">).
209
210         </list>
211
212
213     <chapt id="new-maintainer">Devenir responsable Debian
214         
215       <sect id="getting-started">Pour commencer
216 <p>
217 Vous avez lu toute la documentation, vous avez examiné le <url
218  id="&url-newmaint-guide;" name="guide du nouveau responsable">, vous comprenez
219  l'intérêt de tout ce qui se trouve dans le paquet d'exemple
220  <package>hello</package> et vous vous apprêtez à mettre en paquet votre
221  logiciel préféré. Comment devenir responsable Debian et intégrer votre travail
222  au projet&nbsp;?
223 <p>
224 Si vous ne l'avez pas encore fait, commencez par vous inscrire à la
225  liste &email-debian-devel;. Pour cela, envoyez un courrier à l'adresse
226  &email-debian-devel-req; avec le mot <tt>subscribe</tt> dans la ligne
227  <em>Objet</em><footnote><p><em>Subject</em> en anglais</footnote> de votre
228  message. En cas de problème, contactez l'administrateur de la liste
229  &email-listmaster;. Vous trouverez plus d'informations dans la section <ref
230  id="mailing-lists">. &email-debian-devel-announce; est une autre liste
231  incontournable pour qui veut suivre les développements de Debian.
232 <p>
233 Vous suivrez les discussions de cette liste (sans poster) pendant quelque temps
234  avant de coder quoi que ce soit et vous informerez la liste de votre intention
235  de travailler sur quelque chose pour éviter de dupliquer le travail d'un autre.
236 <p>
237 Une autre liste intéressante est &email-debian-mentors;. Voir la section <ref
238  id="mentors"> pour les détails. Le canal IRC <tt>#debian</tt> pourra aussi être
239  utile.
240
241 <p>
242 Quand vous avez choisi la manière dont vous contribuerez au projet
243  &debian-formal;, prenez contact avec les responsables Debian qui travaillent
244  sur des tâches similaires. Ainsi vous pourrez apprendre auprès de personnes
245  expérimentées. Si, par exemple, vous voulez mettre en paquet des logiciels
246  existants, trouvez-vous un parrain. Un parrain est une personne qui travaillera
247  sur vos paquets avec vous et les téléchargera dans l'archive Debian une fois
248  qu'il sera satisfait de votre mise en paquet. Pour trouver un parrain, envoyez
249  une demande de parrainage à la liste &email-debian-mentors; en vous présentant
250  et en décrivant votre paquet (voir <ref id="sponsoring"> pour en savoir plus
251  sur le sujet). Si vous préférez porter Debian sur une architecture ou un noyau
252  alternatif, abonnez-vous aux listes dédiées au portage et demandez-y comment
253  démarrer. Finalement, si vous êtes intéressé par la documentation ou
254  l'assurance qualité (QA), vous pouvez contacter les responsables qui
255  travaillent déjà sur ces tâches et proposer des correctifs et des
256  améliorations.
257  
258
259       <sect id="registering">Devenir responsable Debian
260 <p>
261 Avant de décider de devenir responsable Debian, il vous faudra lire toute la
262  documentation disponible dans le <url id="&url-newmaint;" name="coin du nouveau
263  responsable">. Elle décrit toutes les étapes préparatoires qu'il vous faudra
264  franchir avant de déposer votre candidature.
265
266 Par exemple, avant d'être candidat, il vous faudra lire le <url
267  id="&url-social-contract;" name="contrat social Debian">. Devenir responsable
268  Debian implique que vous adhériez à ce contrat social et que vous vous engagiez
269  à le soutenir&nbsp;; il est très important que les responsables soient en
270  accord avec les principes fondamentaux qui animent le projet &debian-formal;.
271  Lire le <url id="&url-gnu-manifesto;" name="Manifeste GNU"> est aussi une bonne
272  idée.
273 <p>
274 Le processus d'enregistrement a pour but de vérifier votre identité, vos
275  intentions et vos compétences. Le nombre de personnes travaillant pour
276  &debian-formal; a atteint &number-of-maintainers; et notre système est utilisé
277  dans plusieurs endroits très importants&nbsp;: nous devons rester vigilants
278  pour éviter un acte malveillant. C'est pourquoi nous contrôlons les nouveaux
279  responsables avant de leur donner un compte sur nos serveurs et de les autoriser à
280  ajouter des paquets dans l'archive.
281 <p>
282 Pour devenir responsable, il faudra montrer que vous pouvez faire du bon travail
283  et que vous serez un bon contributeur. Pour cela, vous pourrez proposer des correctifs
284  par le système de suivi des bogues (BTS) ou maintenir un paquet parrainé
285  pendant un temps. Nous attendons aussi des contributeurs qu'ils soient
286  intéressés par le projet dans son ensemble et pas uniquement par leurs propres
287  paquets. Si vous pouvez aider d'autres responsables en fournissant des
288  informations sur un bogue ou même avec un correctif, faites-le&nbsp;!
289 <p>
290 Pour votre candidature, vous devrez être familiarisé avec la philosophie du
291  projet Debian et avec sa documentation technique. Il vous faudra aussi une clé
292  GnuPG signée par un responsable Debian. Si votre clé GnuPG n'est pas encore
293  signée, vous devriez essayer de rencontrer un responsable Debian pour le faire.
294  La <url id="&url-gpg-coord;" name="page de coordination des signatures de clé
295  GnuPG"> devrait vous aider à trouver un responsable Debian près de chez vous.
296  (Si vous ne trouvez pas de responsable près de chez vous, il existe un second
297  moyen pour valider votre identité. Vous pouvez envoyer une photo d'identité
298  signée avec votre clé GnuPG. Privilégiez tout de même la clé GnuPG signée pour
299  valider une identité. Reportez-vous à la <url id="&url-newmaint-id;" name="page
300  d'identification"> pour en savoir plus sur ces deux options.)
301
302 <p>
303 Si vous n'avez pas de clé OpenPGP, créez-la. Tout responsable a besoin d'une clé
304  OpenPGP pour signer et vérifier les mises à jour de paquets. Vous lirez la
305  documentation du logiciel de cryptographie que vous utiliserez car elle
306  contient des informations indispensables pour la sécurité de votre clé. Les
307  défaillances de sécurité sont bien plus souvent dues à des erreurs humaines
308  qu'à des problèmes logiciels ou à des techniques d'espionnage avancées. Voir
309  <ref id="key-maint"> pour plus d'informations sur la gestion de votre clé
310  publique.
311 <p>
312 Debian utilise <prgn>GNU Privacy Guard</prgn> (paquet <package>gnupg</package>
313  version 1 ou supérieure) comme standard de base. Vous pouvez aussi utiliser une
314  autre implémentation d'OpenPGP. OpenPGP est un standard ouvert basé sur la <url
315  id="&url-rfc2440;" name="RFC 2440">.
316 <p>
317 L'algorithme à clé publique recommandé pour les développements Debian est DSA
318  (parfois appelé «&nbsp;DSS&nbsp;» ou «&nbsp;DH\ElGamal&nbsp;»). Vous pouvez
319  aussi utiliser d'autres types de clés. La longueur de votre clé doit être au
320  minimum de 1024 bits&nbsp;; il n'y a pas de raison d'utiliser une clé plus
321  courte et le faire serait beaucoup moins sûr. Votre clé doit être signée avec
322  votre propre identifiant&nbsp;; cela évite les falsifications. <prgn>GNU
323  Privacy Guard</prgn> le fait automatiquement.
324 <p>
325 Si votre clé publique n'est pas sur un serveur public tel que &pgp-keyserv;,
326  reportez-vous à la documentation disponible localement dans &file-keyservs;.
327  Cette documentation explique comment mettre votre clé publique sur un serveur.
328  L'équipe <em>New maintainer</em> mettra votre clé publique sur les serveurs de
329  clés si elle n'y est pas déjà.
330 <p>
331 Certains pays limitent l'usage des logiciels de cryptographie. Cela ne devrait
332  cependant pas avoir d'impact sur l'activité d'un responsable de paquet car il
333  peut être tout à fait légal d'utiliser des logiciels de cryptographie pour
334  l'authentification plutôt que pour le chiffrement. &debian-formal; ne nécessite
335  en aucun chiffrement. Si vous vivez dans un pays où l'utilisation de la
336  cryptographie pour authentification est interdite, contactez-nous pour que nous
337  prenions des dispositions particulières.
338 <p>
339 Pour faire acte de candidature, il vous faut un responsable Debian qui vérifiera
340  votre candidature (un <em>avocat</em>). Après avoir contribué au projet Debian
341  pendant un temps, quand vous choisissez de devenir un responsable Debian
342  officiel, un responsable déjà enregistré avec qui vous aurez travaillé dans les
343  derniers mois devra exprimer que, d'après lui, vous pouvez contribuer avec
344  succès au projet Debian.
345 <p>
346 Quand vous avez trouvez un <em>avocat</em>, quand votre clé GnuPG est signée et
347  quand vous avez déjà contribué au projet, vous êtes prêt à faire
348  acte de candidature. Il vous suffit pour cela de vous enregistrer sur notre
349  <url id="&url-newmaint-apply;" name="page de candidature">. Ensuite, votre
350  avocat devra confirmer votre candidature. Quand il aura accompli cette tâche,
351  un responsable de candidature<footnote><p>Application manager</footnote> sera
352  désigné pour vous accompagner dans le processus d'enregistrement. Vous pouvez
353  toujours consulter le <url id="&url-newmaint-db;" name="tableau de bord des
354  candidatures"> pour connaître l'état de votre candidature.
355 <p>
356 Pour en savoir plus, consultez le <url id="&url-newmaint;" name="coin des
357  nouveaux responsables"> sur le site Debian. Assurez-vous de bien connaître les
358  étapes nécessaires au processus d'enregistrement avant de vous porter candidat.
359  Vous gagnerez beaucoup de temps si vous êtes bien préparé.
360
361
362       <sect id="mentors">Mentors et parrains Debian
363 <p>
364 La liste de diffusion &email-debian-mentors; a été créée pour les responsables
365  débutants qui cherchent de l'aide pour leur première création de paquet ainsi
366  que pour des problèmes spécifiques aux développeurs. Tout responsable débutant
367  est invité à s'y inscrire (voir <ref id="mailing-lists"> pour plus de détails).
368 <p>
369 Ceux qui préfèrent une aide personnalisée (via une correspondance privée)
370  doivent aussi poster dans cette liste, un développeur expérimenté se portera
371  volontaire pour les aider.
372 <p>
373 Si vos paquets sont prêts à être intégrés mais que vous attendiez le
374  résultat de votre candidature, vous pouvez chercher un parrain qui téléchargera
375  les paquets à votre place. Les parrains sont des responsables Debian officiels
376  volontaires pour examiner et télécharger vos paquets. Vous pouvez
377  demander un parrainage à l'adresse <url id="&url-sponsors;">.
378 <p>
379 Si vous désirez être mentor ou parrain, reportez-vous à <ref id="newmaint">.
380
381
382     <chapt id="developer-duties">Les charges du responsable Debian
383
384       <sect id="user-maint">Mise à jour de vos références Debian
385 <p>
386 Il existe une base de données LDAP qui contient des informations concernant 
387 les développeurs&nbsp;;
388  vous pouvez y accéder à l'adresse <url id="&url-debian-db;">. Vous pouvez
389  modifier votre mot de passe (ce mot de passe est diffusé sur la plupart des
390  machines auxquelles vous avez accès), votre adresse, votre pays, la latitude et
391  la longitude de l'endroit où vous résidez, vos numéros de téléphone et de fax,
392  votre interpréteur de commande préféré, votre surnom IRC, votre page web, votre
393  adresse de courrier électronique ainsi que l'alias que vous utilisez pour votre
394  courrier électronique chez debian.org. La plupart de ces informations ne sont
395  pas accessibles au public. Pour plus de détails au sujet de cette base de
396  données, reportez-vous à sa documentation en ligne disponible à l'adresse <url
397  id="&url-debian-db-doc;">.
398 <p>
399 Vous y tiendrez à jour les informations vous concernant.
400
401       <sect id="key-maint">Gérer votre clé publique
402 <p>
403 Soyez très vigilant en utilisant votre clé privée. Ne la placez pas sur un
404  serveur public ou sur des machines multi-utilisateurs telles que les serveurs
405  Debian (voir <ref id="server-machines">). Sauvegardez vos clés et gardez-en une
406  copie hors connexion. Lisez la documentation fournie avec votre logiciel et la
407  <url id="&url-pgp-faq;" name="FAQ PGP">.
408 <p>
409 Si vous ajoutez des signatures ou des identifiants à votre clé publique, vous
410  pouvez mettre à jour le porte-clés Debian en envoyant votre clé publique à
411  <tt>&keyserver-host;</tt>. Si vous voulez ajouter ou supprimer une clé, envoyez
412  un courrier à &email-debian-keyring;. Les procédures d'extraction de clé
413  décrites dans <ref id="registering"> s'appliquent ici.
414 <p>
415 Vous pouvez trouver une présentation approfondie de la gestion de clé Debian
416  dans la documentation du paquet <package>debian-keyring</package>.
417
418
419        <sect id="voting">Voter
420 <p>
421 Debian, sans être une vraie démocratie, dispose d'outils à
422  caractère démocratique et utilise un procédé démocratique pour élire son chef
423  ou pour approuver une résolution. Ces procédures sont décrites dans la <url
424  id="&url-constitution;" name="Constitution Debian">.
425 <p>
426 Un processus démocratique ne fonctionne bien que si tout le monde participe au
427  vote, c'est pourquoi vous devez voter. Pour cela, vous devez vous inscrire à la
428  liste &email-debian-devel-announce; car les annonces de votes sont publiées sur
429  cette liste. Si vous voulez suivre les débats qui précèdent un vote,
430  inscrivez-vous à liste &email-debian-vote;.
431 <p>
432 La liste de toutes les propositions (passées et présentes) est disponible à la
433  page <url id="&url-vote;" name="Informations sur les votes Debian">. Vous y
434  trouverez aussi des informations complémentaires sur la procédure à suivre pour
435  proposer un vote.
436
437
438       <sect id="inform-vacation">Prendre des vacances courtoisement
439 <p>
440 La plupart des développeurs prennent des vacances&nbsp;; généralement, cela
441  signifie qu'ils ne peuvent ni travailler pour Debian, ni être joints par
442  courrier électronique si un problème se présentait. Les autres développeurs ont
443  besoin de savoir que vous êtes en vacances&nbsp;; ainsi ils sauront comment
444  réagir en cas de problème. En général, cela signifie que les autres
445  développeurs sont autorisés à modifier votre paquet (voir <ref id="nmu">) en
446  cas de gros problème (bogues empêchant l'intégration dans la distribution, mise à jour de
447  sécurité, etc.) durant vos vacances.
448 <p>
449 Il y a deux choses à faire pour en informer les autres développeurs.
450  Premièrement, envoyez un courrier électronique indiquant vos dates de vacances
451  à &email-debian-private;, vous pouvez aussi donner quelques instructions pour
452  indiquer comment agir si un problème survenait. Notez bien que certaines
453  personnes ne sont pas intéressées par les annonces de vacances et ne veulent
454  pas les lire&nbsp;; veuillez ajouter '[VAC] ' à l'objet de votre courrier pour
455  qu'il soit facilement filtré.
456 <p>
457 Deuxièmement, il faut mettre à jour la base de données Debian LDAP et vous
458  signaler «&nbsp;en vacances&nbsp;»<footnote><p><em>on vacation</em> en
459  anglais</footnote>(l'accès à cette information est réservé aux développeurs).
460  N'oubliez pas de retirer votre indicateur «&nbsp;en vacances&nbsp;» lorsque
461  celles-ci sont terminées&nbsp;!
462
463       <sect id="upstream-coordination">Coordination avec les développeurs amonts
464 <p>
465 Une grande part de votre travail de responsable Debian sera de rester en contact
466  avec les développeurs amonts. Parfois, les utilisateurs établissent des
467  rapports de bogue qui ne sont pas spécifiques à Debian. Vous devez transmettre
468  ces rapports de bogue aux développeurs amonts pour qu'ils soient corrigés dans
469  les prochaines versions. Il n'est pas de votre responsabilité de corriger les
470  bogues qui ne sont pas spécifiques à Debian. Toutefois, si vous êtes capable de
471  le faire, nous vous encourageons à contribuer au développement amont en
472  proposant un correctif qui corrige le bogue. Les utilisateurs et responsables
473  Debian proposent souvent des correctifs pour corriger des bogues amonts, il
474  vous faudra alors évaluer ce correctif puis le transmettre aux développeurs
475  amonts.
476 <p>
477 Si vous avez besoin de modifier les sources d'un logiciel pour fabriquer un
478  paquet conforme à la charte Debian, alors vous devriez proposer un correctif
479  aux développeurs amonts pour qu'il soit inclus dans leur version. Ainsi, vous
480  n'aurez plus besoin de modifier les sources lors des mises à jour amonts
481  suivantes. Quels que soient les changements dont vous avez besoin, il faut
482  toujours essayer de rester dans la lignée des sources amonts.
483
484       <sect id="rc-bugs">Comment gérer les bogues empêchant l'intégration du paquet dans la distribution&nbsp;?
485 <p>
486 Habituellement, vous devriez traiter les rapports de bogue sur vos paquets tel
487  que cela est décrit dans <ref id="bug-handling">. Cependant, il y a une
488  catégorie spéciale de bogues qui nécessite particulièrement votre
489  attention&nbsp;: les bogues empêchant l'intégration du paquet dans la
490  distribution<footnote>Traduction de l'anglais <em>Release-critical bug (RC
491  Bugs)</em></footnote>. Tous les rapports de bogue de gravité <em>critique</em>,
492  <em>grave</em> et <em>sérieuse</em><footnote>Respectivement <em>critical</em>,
493  <em>grave</em> et <em>serious</em> en anglais</footnote> sont considérés comme
494  ayant un impact sur la présence du paquet dans la prochaine version stable de
495  Debian. Ces bogues peuvent retarder la diffusion d'une distribution Debian
496  et/ou peuvent justifier la suppression d'un paquet d'une distribution gelée.
497  C'est pourquoi ces bogues ont besoin d'être corrigés au plus vite.
498 <p>
499 Les développeurs faisant partie de l'équipe d'<url id="&url-debian-qa;"
500  name="assurance qualité Debian"> surveillent ces bogues et essaient de vous
501  aider chaque fois qu'ils le peuvent. Si vous ne pouvez pas corriger un bogue de
502  ce type dans les deux semaines, vous devriez soit demander de l'aide en
503  envoyant un courrier à l'équipe d'assurance qualité (<em>QA group</em>) à
504  &email-debian-qa;, soit expliquer vos difficultés et présenter un plan pour
505  corriger le problème en répondant au rapport de bogue concerné. Si rien n'est
506  fait, des personnes de l'équipe d'assurance qualité pourraient chercher à
507  corriger votre paquet (voir <ref id="nmu">) après avoir tenté de vous contacter
508  (ils pourraient attendre moins longtemps que d'habitude pour faire leur mise à
509  jour s'il n'y a pas trace d'activité récente de votre part dans le système de
510  suivi des bogues).
511
512
513       <sect>Démissionner
514 <p>
515 Si vous choisissez de quitter le projet Debian, procédez comme suit&nbsp;:
516 <enumlist compact="compact">
517   <item><p>abandonnez tous vos paquets comme décrit dans <ref
518         id="orphaning">&nbsp;;</item>
519   <item><p>envoyez un courrier électronique à &email-debian-private; indiquant
520         pourquoi vous quittez le projet&nbsp;;</item>
521   <item><p>signalez aux responsables du porte-clés Debian que vous quittez le
522         projet en écrivant à &email-debian-keyring;.</item>
523 </enumlist>
524
525
526
527    <chapt id="resources">Ressources pour le responsable Debian
528 <p>
529 Dans ce chapitre, vous trouverez une brève description des listes de diffusions,
530  des machines Debian qui seront à votre disposition en tant que responsable
531  Debian ainsi que toutes les autres ressources à votre disposition pour vous
532  aider dans votre travail de responsable.
533
534       <sect id="mailing-lists">Les listes de diffusion
535 <p>
536 Le serveur de liste de diffusion est <tt>&lists-host;</tt>.
537 <p>
538 Les archives des listes de diffusion sont consultables à <url
539  id="&url-lists-archives;">.
540
541         <sect1 id="core-devel-mailing-lists">Principales listes pour les responsables
542 <p>
543 Les principales listes de diffusion de Debian que les développeurs
544  devraient suivre sont&nbsp;:
545 <list>
546 <item>&email-debian-devel-announce;, utilisée pour les annonces importantes
547       faites aux responsables. Tous les responsables Debian sont censés être
548       inscrits à cette liste,</item>
549 <item>&email-debian-devel;, utilisée pour discuter de diverses questions
550       techniques relatives au développement,</item>
551 <item>&email-debian-policy; où l'on discute et vote les modifications de la
552       Charte Debian,</item>
553 <item>&email-debian-project;, utilisée pour discuter de questions non
554       techniques.</item>
555 </list>
556 <p>
557 Il existe d'autres listes de diffusion spécialisées dans différents thèmes.
558  Reportez-vous à la page <url id="&url-debian-lists-subscribe;"> pour en obtenir
559  la liste complète.
560
561         <sect1 id="mailing-lists-subunsub">S'abonner et se désabonner
562 <p>
563 Pour vous abonner ou vous désabonner de n'importe quelle liste,
564  envoyez un courrier électronique à
565  <tt>debian-<var>foo</var>-REQUEST@&lists-host;</tt>, où
566  <tt>debian-<var>foo</var></tt> est le nom de la liste, avec le mot
567  <tt>subscribe</tt> dans le champ <em>Objet</em><footnote><p><em>Subject</em>
568  en anglais</footnote> pour vous abonner à la liste ou <tt>unsubscribe</tt>
569  pour vous désabonner.
570 <p>
571 Si vous préférez utiliser une page web pour vous inscrire à plusieurs listes,
572  celle-ci se trouve à l'adresse <url id="&url-debian-lists-subscribe;">.
573 <p>
574 Vous pouvez télécharger la liste des listes de diffusion et quelques
575  instructions à <url id="&url-debian-lists-txt;"> ou installer le paquet
576  <package>doc-debian</package> et en disposer localement dans le fichier
577  &file-mail-lists;.
578
579         <sect1 id="mailing-lists-rules">Règles d'usage simple
580 <p>
581 Lorsque vous répondez aux messages d'une liste de diffusion, n'envoyez pas de
582  copie (<tt>CC</tt>) à l'auteur du courrier à moins qu'il ne l'ait demandé
583  explicitement. Quelqu'un qui envoie un message à une liste de diffusion se doit
584  d'y lire les réponses.
585 <p>
586 La multi-diffusion (envoyer le même message à plusieurs listes) est déconseillé.
587  Comme toujours sur Internet, veuillez réduire le texte cité des messages
588  auxquels vous répondez. En général, veuillez adhérer aux conventions usuelles
589  d'envoi de messages. Veuillez lire le <url id="&url-debian-lists;" name="code
590  de conduite"> pour plus d'information.
591
592         <sect1 id="mailing-lists-special">Listes spéciales
593 <p>
594 &email-debian-private; est une liste de diffusion destinée aux discussions
595  privées entre développeurs Debian. Elle doit être utilisée pour tout message
596  qui ne doit pas être publié, quelle qu'en soit la raison. C'est une liste à
597  faible trafic et les utilisateurs sont priés de ne l'utiliser qu'en cas de
598  réelle nécessité. De plus, il ne faut <em>jamais</em> faire suivre un courrier
599  de cette liste à qui que ce soit. Pour des raisons évidentes, les archives de
600  cette liste ne sont pas disponibles sur la toile. Vous pouvez les consulter en
601  visitant le répertoire <file>~debian/archive/debian-private</file> avec votre
602  compte sur <tt>lists.debian.org</tt>.
603 <p>
604 &email-debian-email; est une liste de diffusion fourre-tout. Elle est utilisée
605  pour les correspondances relatives à Debian qu'il serait utile d'archiver,
606  telles que des échanges avec les auteurs amonts à propos de licences, de bogues
607  ou encore des discussions sur le projet avec d'autres personnes.
608
609       <sect id="irc-channels">Canaux IRC
610 <p>
611 Plusieurs canaux IRC sont dédiés au développement Debian. Ils sont
612  principalement hébergés sur le réseau <url id="&url-openprojects;"
613  name="freenode"> (anciennement connu sous le nom de Open Projects Network).
614  L'entrée DNS <tt>irc.debian.org</tt> est simplement un alias vers
615  <tt>irc.openprojects.net</tt>.
616 <p>
617 Le principal canal pour Debian est <em>#debian</em>. Il s'agit d'un
618 canal important, généraliste, où les utilisateurs peuvent trouver des nouvelles
619  récentes dans le sujet et qui est administré par des robots. <em>#debian</em>
620  est destiné aux anglophones&nbsp;; il existe également <em>#debian.de</em>,
621  <em>#debian-fr</em>, <em>#debian-br</em> et d'autres canaux avec des noms
622  semblables pour les personnes parlant d'autres langues.
623 <p>
624 Le canal principal pour le développement Debian est <em>#debian-devel</em>.
625  C'est un canal très actif avec habituellement plus de 150 personnes connectées
626  en permanence. C'est un canal pour les personnes qui travaillent sur Debian, ce
627  n'est pas un canal d'aide (il existe <em>#debian</em> pour cela). Il est
628  cependant ouvert à tous ceux qui veulent écouter (et apprendre). Le sujet est
629  toujours rempli d'informations intéressantes.
630 <p>
631 Comme <em>#debian-devel</em> est un canal ouvert, vous ne devriez pas y parler
632  de problèmes discutés sur &email-debian-private;. Il existe un canal protégé
633  par clé <em>#debian-private</em> dans ce but. La clé est disponible dans les
634  archives de debian-private à
635  <file>master.debian.org:&file-debian-private-archive;</file>, effectuez
636  simplement un <prgn>zgrep</prgn> avec <em>#debian-private</em> dans tous les
637  fichiers.
638 <p>
639 Il existe d'autres canaux dédiés à des sujets spécifiques. <em>#debian-bugs</em>
640  est utilisé pour la coordination des <em>chasses aux bogues</em>.
641  <em>#debian-boot</em> est utilisé pour la coordination du travail sur les
642  disquettes de démarrage (i.e. l'installeur). <em>#debian-doc</em> est utilisé
643  occasionnellement pour travailler sur la documentation comme celle que vous
644  lisez actuellement. D'autres canaux sont dédiés à une architecture ou un
645  ensemble de paquets&nbsp;: <em>#debian-bsd</em>, <em>#debian-kde</em>,
646  <em>#debian-jr</em>, <em>#debian-edu</em>, <em>#debian-sf</em> (paquet
647  SourceForge), <em>#debian-oo</em> (paquet OpenOffice), etc.
648 <p>
649 Certains canaux pour développeurs non anglophones existent, par exemple,
650  <em>#debian-devel-fr</em> pour les francophones intéressés dans le
651  développement de Debian.
652
653
654       <sect id="doc-rsrcs">Documentation
655 <p>
656 Ce document contient beaucoup d'informations très utiles aux développeurs
657  Debian, mais il ne peut pas tout contenir. La plupart des autres documents
658  intéressants sont référencés dans <url id="&url-devel-docs;" name="le coin du
659  développeur">. Prenez le temps de parcourir tous les liens, vous apprendrez
660  encore beaucoup de choses.
661
662
663       <sect id="server-machines">Les serveurs Debian
664 <p>
665 Debian possède plusieurs ordinateurs employés comme serveurs, dont la plupart hébergent
666  les fonctions critiques du projet Debian. La plupart des machines sont
667  utilisées pour des activités de portage et elles ont toutes un accès permanent
668  à Internet.
669 <p>
670 La plupart des machines peuvent être utilisées par les développeurs
671  tant qu'ils respectent les règles définies dans la <url
672  id="&url-dmup;" name="charte d'utilisation des machines Debian">.
673 <p>
674 Dans l'ensemble, vous pouvez faire usage de ces machines pour des buts relatifs
675  à Debian comme vous l'entendez. Veuillez cependant être gentil avec les
676  administrateurs système et ne pas utiliser de grandes quantités d'espace
677  disque, de ressource réseau ou CPU sans obtenir auparavant l'accord des
678  administrateurs. Habituellement, ces machines sont administrées par des
679  volontaires.
680 <p>
681 Veuillez prendre soin de votre mot de passe Debian ainsi que des clés SSH
682  installées sur les machines Debian. Évitez les méthodes de connexion ou d'envoi
683  de données qui envoient les mots de passe en clair par l'Internet comme telnet,
684  FTP, POP, etc.
685 <p>
686 Veuillez ne pas déposer de données non relatives à Debian sur les serveurs
687 Debian à moins que vous n'ayez préalablement obtenu la permission de le faire.
688 <p>
689 La liste actuelle des machines Debian est disponible à <url
690  id="&url-devel-machines;">. Cette page web contient les noms des machines, les
691  informations de contact, les informations sur qui peut s'y connecter, les clés
692  SSH, etc.
693 <p>
694 Si vous avez un problème en utilisant un serveur Debian et si vous estimez que
695  les administrateurs système devraient en être avertis, l'équipe des
696  administrateurs système peut être jointe à
697  <email>debian-admin@lists.debian.org</email>.
698 <p>
699 Si votre problème est lié à un certain service ou n'est pas lié au système
700  (paquet à supprimer de l'archive ou suggestion pour le site web par exemple),
701  il vous faudra en général ouvrir un rapport de bogue sur un
702  «&nbsp;pseudo-paquet&nbsp;». Reportez-vous à la section <ref id="submit-bug">
703  pour connaître la procédure à suivre.
704
705       <sect1 id="servers-bugs">Le serveur pour les rapports de bogues
706 <p>
707 <tt>bugs.debian.org</tt> est le serveur maître du système de suivi des bogues
708  (BTS<footnote><p>Système de suivi des bogues se dit <em>Bug Tracking
709  System</em> en anglais</footnote>). Si vous envisagez de manipuler les rapports
710  de bogue ou d'en faire une analyse statistique, ce sera le bon endroit pour le
711  faire. Informez la liste &email-debian-devel; de votre intention avant
712  d'implémenter quoi que ce soit afin d'éviter un travail en double ou un
713  gaspillage de temps machine.
714 <p>
715 Tous les développeurs Debian ont un compte sur
716  <tt>bugs.debian.org</tt>.
717
718       <sect1 id="servers-ftp-master">Le serveur ftp-master
719 <p>
720 Le serveur <tt>ftp-master.debian.org</tt> est le serveur maître de l'archive
721  Debian (exception faite des paquets non-US). En général, les mises à jour de
722  paquets se font sur ce serveur. Reportez-vous à la section <ref id="upload">
723  pour en savoir plus.
724 <p>
725 Les problèmes avec l'archive Debian FTP doivent généralement être rapportés
726  comme bogue sur le pseudo-paquet <package>ftp.debian.org</package> ou par
727  courrier électronique à &email-ftpmaster;&nbsp;; reportez-vous à la section
728  <ref id="archive-manip"> pour connaître la procédure à suivre.
729
730       <sect1 id="servers-non-us">Le serveur non-US
731 <p>
732 Le serveur non-US <tt>non-us.debian.org</tt> est le serveur maître de la partie
733  non-US de l'archive Debian. Si vous avez besoin d'envoyer un paquet dans l'une
734  des sections non-US, envoyez-le vers ce serveur. Reportez-vous à la section
735  <ref id="upload-non-us"> pour en savoir plus.
736 <p>
737 Les problèmes avec l'archive de paquets non-US doivent généralement être
738  rapportés comme bogue sur le pseudo-paquet <package>nonus.debian.org</package>
739  pseudo-package (remarquez l'absence de trait d'union entre "non" et "us" dans
740  le nom du pseudo-paquet &mdash; c'est dû à la compatibilité descendante).
741  Rappelez-vous de vérifier si quelqu'un n'aurait pas déjà rempli un rapport de
742  bogue concernant le problème sur le <url
743  id="http://bugs.debian.org/nonus.debian.org" name="système de suivi des
744  bogues">.
745
746       <sect1 id="servers-www">Le serveur www-master
747 <p>
748 Le serveur web principal est <tt>www-master.debian.org</tt>. Il héberge les
749  pages web officielles, la facade de Debian pour la plupart des débutants.
750 <p>
751 Si vous rencontrez un problème avec un serveur web Debian, vous devez
752  généralement envoyer un rapport de bogue sur le pseudo-paquet
753  <package>www.debian.org</package>. Vérifiez d'abord sur le <url
754  id="http://bugs.debian.org/www.debian.org" name="système de suivi des bogues">
755  que personne ne l'a déjà rapporté avant vous.
756
757       <sect1 id="servers-people">Le serveur web people
758 <p>
759 <tt>people.debian.org</tt> est le serveur utilisé pour les pages personnelles
760  des développeurs concernant ce qui est lié à Debian.
761 <p>
762 Si vous avez des informations spécifiques Debian que vous voulez rendre
763  disponibles sur le web, vous pouvez le faire en les plaçant dans le répertoire
764  <file>public_html</file> de votre répertoire personnel sur
765  <tt>people.debian.org</tt>. Elles seront accessibles à l'adresse
766  <tt>http://people.debian.org/~<var>votre-user-id</var>/</tt>.
767 <p>
768 Vous ne devriez utiliser que cet emplacement particulier car il sera sauvegardé
769  alors que sur les autres serveurs, ce ne sera pas le cas.
770 <p>
771 Habituellement, la seule raison pour utiliser un serveur différent est que vous
772  avez besoin de publier des informations soumises aux restrictions d'export
773  américaines, dans ce cas, vous pouvez utiliser l'un des autres serveurs situés
774  en dehors des États-Unis, comme le serveur mentionné ci-dessus
775  <tt>non-us.debian.org</tt>.
776 <p>
777 Veuillez envoyer un courrier à &email-debian-devel; si vous avez une question.
778
779       <sect1 id="servers-cvs">Le serveur CVS
780 <p>
781 Notre serveur CVS est situé sur <tt>cvs.debian.org</tt>.
782 <p>
783 Si vous avez besoin d'un serveur CVS accessible par tous pour, par exemple,
784  coordonner le travail de plusieurs développeurs sur un paquet, vous pouvez
785  demander un espace CVS sur ce serveur.
786 <p>
787 Le serveur <tt>cvs.debian.org</tt> autorise les accès CVS locaux, les accès en
788  lecture seule pour les connexions client-serveur anonymes et les accès
789  client-serveur complets pour les connexions <prgn>ssh</prgn>. L'espace CVS peut
790  aussi être consulté par la toile à l'adresse <url id="&url-cvsweb;">.
791 <p>
792 Pour obtenir un espace CVS, envoyez une demande à l'adresse &email-debian-admin;
793  en précisant le nom de l'espace, le compte Debian propriétaire du répertoire
794  racine et pourquoi vous en avez besoin.
795
796
797     <sect id="devel-db">La base de données des développeurs
798 <p>
799 La base de données des développeurs à <url id="&url-debian-db;"> est un annuaire
800  LDAP de gestion des informations des développeurs Debian. Vous pouvez utiliser
801  cette ressource pour rechercher la liste des développeurs Debian. Pour plus
802  d'informations sur la façon de garder à jour vos informations dans la base des
803  développeurs, reportez-vous à <ref id="user-maint">. Une partie de ces
804  informations est également disponible à travers le service finger sur les
805  serveurs Debian, essayez <prgn>finger yourlogin@debian.org</prgn> pour voir ce
806  qu'il indique.
807 <p>
808 La base de données vous permet d'enregistrer d'autres informations&nbsp;; par
809 exemple, des
810  clés publiques SSH qui seront installées automatiquement sur les machines
811  Debian officielles, ou des entrées DNS  de type *debian.net. Ces fonctionnalités
812  sont documentées à <url id="&url-debian-db-mail-gw;">.
813
814 <!--     <sect id="servers-mirrors">Les miroirs des serveurs Debian
815 <p>
816 Les serveurs web et FTP Debian sont dupliqués sur d'autres serveurs.
817  Évitez de charger les serveurs originaux. Idéalement, les serveurs originaux
818  se contentent de copier leur contenu sur les miroirs de premier niveau et tous
819  les utilisateurs consultent les miroirs. Ainsi le projet Debian étale ses
820  besoins en bande passante sur plusieurs serveurs et plusieurs réseaux. Notez
821  que la duplication des données sur les miroirs est déclenchée par le serveur
822  maître. Ceci nous garantit que les miroirs sont aussi à jour que possible.
823 <p>
824 La liste des miroirs FTP/HTTP se trouve à l'adresse <url
825  id="&url-debian-mirrors;">. Vous trouverez plus d'information sur les miroirs
826  Debian à l'adresse <url id="&url-debian-mirroring;">. Cette page contient des
827  informations et des outils qui pourront vous aider si vous avez l'intention de
828  mettre en place votre propre miroir, que ce soit pour un usage interne ou pour
829  un accès public.
830 <p>
831 Les miroirs sont en général mis en oeuvre par des tiers qui veulent aider
832  Debian. C'est pourquoi les développeurs n'ont en général pas de compte sur ces
833  machines.
834 -->
835
836     <sect id="archive">L'archive Debian
837 <p>
838 La distribution &debian-formal; est composée d'un grand nombre de paquets
839  (fichiers <tt>.deb</tt>&nbsp;: actuellement, à peu près &number-of-pkgs;) et de
840  quelques autres fichiers (comme la documentation et des images des disquettes
841  d'installation).
842 <p>
843 Voici un exemple d'arborescence pour une archive Debian complète&nbsp;:
844 <p>
845 &sample-dist-dirtree;
846 <p>
847 Comme vous pouvez le voir, le répertoire racine contient deux répertoires,
848  <file>dists/</file> et <file>pool/</file>. Le second est un ensemble de
849  répertoires où sont stockés les paquets. Ceux-ci sont manipulés grâce à la base
850  de données de l'archive et aux logiciels qui l'accompagnent. Le premier
851  répertoire contient les distributions <em>stable</em>, <em>testing</em> et
852  <em>unstable</em>. Les fichiers <file>Packages</file> et <file>Sources</file>
853  qui se trouvent dans les répertoires de distribution peuvent faire référence à
854  des fichiers du répertoire <file>pool/</file>. Le découpage en sous-répertoires
855  est identique d'un répertoire de distribution à l'autre&nbsp;. Ce que nous
856  exposerons ci-dessous pour la distribution <em>stable</em> est également
857  applicable aux distributions <em>unstable</em> et <em>testing</em>.
858 <p>
859 Le répertoire <file>dists/stable</file> contient trois répertoires nommés
860   <file>main</file>, <file>contrib</file> et <file>non-free</file>.
861 <p>
862 Dans chacune de ces sections, se trouve un répertoire contenant les paquets
863   sources (<file>source/</file>) et un répertoire pour chaque architecture
864   acceptée (<file>binary-i386/</file>, <file>binary-m68k/</file>, etc.).
865 <p>
866 La section <em>main</em> contient d'autres répertoires destinés aux images de
867  disquettes et à plusieurs documents essentiels pour installer la distribution
868  Debian sur une architecture particulière (<file>disk-i386/</file>,
869  <file>disk-m68k/</file>, etc).
870
871       <sect1>Les sections
872 <p>
873 La section <em>main</em> constitue la <strong>distribution &debian-formal;
874  officielle</strong>. Elle est officielle parce qu'elle est entièrement conforme
875  à toutes nos recommandations. Les deux autres sections divergent de ces
876  recommandations à différents degrés, elles <strong>ne</strong> font donc <strong>pas</strong>
877  officiellement partie de &debian-formal;.
878 <p>
879 Chaque paquet de la section <em>main</em> doit être conforme aux <url
880  id="&url-dfsg;" name="directives Debian pour le logiciel
881  libre"><footnote>Debian Free Software Guidelines</footnote> et à toutes les
882  autres recommandations décrites dans <url id="&url-debian-policy;" name="la
883  charte Debian"><footnote>Debian Policy Manual</footnote>. Les
884  DFSG<footnote><em>Debian Free Software Guidelines</em></footnote> constituent
885  notre définition de «&nbsp;logiciel libre&nbsp;». Reportez-vous à la <em>charte
886  Debian</em> pour en savoir plus.
887 <p>
888 Les paquets de la section <em>contrib</em> doivent être conformes aux DFSG, mais
889  ne respectent pas d'autres contraintes. Ils peuvent, par exemple, dépendre de
890  paquets de la section <em>non-free</em>.
891 <p>
892 Les paquets qui ne sont pas conformes aux DFSG sont rangés dans la section
893  <em>non-free</em>. Bien que nous supportions l'usage de ces paquets et qu'ils
894  bénéficient de nos infrastructures (système de suivi des bogues, listes de
895  diffusion, etc), ces paquets <em>non-free</em> ne font pas partie de la
896  distribution Debian.
897 <p>
898 La <em>charte Debian</em> donne des définitions plus précises pour ces trois
899  sections. Les paragraphes précédents ne constituent qu'une introduction.
900 <p>
901 La séparation de l'archive en trois sections est importante pour toute personne
902  qui désire distribuer Debian, que ce soit par serveur FTP ou sur cédérom. Il
903  suffit de distribuer les sections <em>main</em> et <em>contrib</em> pour éviter
904  tout problème légal. Certains paquets de la section <em>non-free</em>
905  interdisent leur distribution à titre commercial par exemple.
906 <p>
907 D'un autre coté, un distributeur de cédérom pourra facilement vérifier
908  la licence de chacun des paquets de la section <em>non-free</em> et
909  ajouter tous les paquets qu'il pourra ajouter (dans
910  la mesure où cela varie énormément d'un distributeur à l'autre, ce travail ne
911  peut être fait par les développeurs Debian).
912
913
914       <sect1>Les architectures
915 <p>
916 À ses débuts, le noyau Linux existait uniquement pour les architectures Intel
917  x86&nbsp;; il en était de même pour Debian. Linux devenant de plus en plus
918  populaire, il a été porté vers d'autres architectures.
919 <p>
920 Le noyau 2.0 existe pour les architectures Intel x86, DEC Alpha, SPARC,
921  Motorola, 680x0 (Atari, Amiga, et Macintosh), MIPS et PowerPC. Le noyau 2.2
922  reconnaît de nouvelles architectures, comme ARM et UltraSPARC. Puisque Linux
923  reconnaît ces architectures, Debian a décidé qu'elle devait également les
924  accepter. C'est pourquoi plusieurs portages sont en cours&nbsp;; en fait, il y
925  a aussi des portages vers d'autres noyaux. À coté d'<em>i386</em> (notre nom
926  pour Intel x86), nous avons, au moment où j'écris <em>m68k</em>,
927  <em>alpha</em>, <em>powerpc</em>, <em>sparc</em>, <em>hurd-i386</em>,
928  <em>arm</em>, <em>ia64</em>, <em>hppa</em>, <em>s390</em>, <em>mips</em>,
929  <em>mipsel</em> et <em>sh</em>.
930 <p>
931 &debian-formal; 1.3 est disponible uniquement pour <em>i386</em>. Debian 2.0
932  reconnaît les architectures <em>i386</em> et <em>m68k</em>. Debian 2.1 reconnaît
933  les architectures <em>i386</em>, <em>m68k</em>, <em>alpha</em> et
934  <em>sparc</em>. Debian 2.2 accepte en plus les architectures
935  <em>powerpc</em> et <em>arm</em>. Debian 3.0 accepte cinq
936  nouvelles architectures&nbsp;: <em>ia64</em>, <em>hppa</em>, <em>s390</em>,
937  <em>mips</em> et <em>mipsel</em>.
938 <p>
939 Pour chaque portage, vous trouverez des informations destinées aux développeurs
940  et utilisateurs sur la page <url id="&url-debian-ports;" name="Portage
941  Debian">.
942
943       <sect1>Les paquets
944 <p>
945 Il existe deux types de paquets Debian&nbsp;: les paquets sources et les paquets
946  binaires.
947 <p>
948 Les paquets sources sont constitués de deux ou trois fichiers&nbsp;: un fichier
949  <file>.dsc</file> et soit un fichier <file>.tar.gz</file>, soit un fichier
950  <file>.orig.tar.gz</file> et un fichier <file>.diff.gz</file>.
951 <p>
952 Si un paquet est développé spécifiquement pour le projet Debian et n'est pas
953  distribué en dehors de Debian, il n'y a qu'un fichier <file>.tar.gz</file> qui
954  contient les sources du programme. Si un paquet est distribué ailleurs, le
955  fichier <file>.orig.tar.gz</file> contient ce que l'on appelle <em>code source
956  amont</em>, c'est-à-dire, le code source distribué par le <em>mainteneur
957  amont</em> (il s'agit souvent de l'auteur du logiciel). Dans ce cas, le fichier
958  <file>.diff.gz</file> contient les modifications faites par le responsable
959  Debian.
960 <p>
961 Le fichier <file>.dsc</file> liste tous les fichiers sources avec leurs sommes
962  de contrôle (<prgn>md5sums</prgn>) et quelques informations supplémentaires
963  concernant le paquet (responsable, version, etc).
964
965
966       <sect1>Les répertoires des distributions
967 <p>
968 L'organisation des répertoires présentée précédemment est elle-même englobée par
969  les <em>répertoires des distributions</em>. Chaque distribution est incluse
970  dans le répertoire <file>pool</file> à la racine de l'archive Debian.
971 <p>
972 En résumant, une archive Debian a un répertoire racine sur un serveur FTP. Par
973  exemple, sur le site miroir <ftpsite>ftp.us.debian.org</ftpsite>, l'archive
974  Debian se trouve dans <ftppath>/debian</ftppath> ce qui est un emplacement
975  courant. Un autre emplacement courant est <file>/pub/debian</file>.
976 <p>
977 Une distribution est composée de paquets sources et binaires et des
978  fichiers <file>Sources</file> et <file>Packages</file> correspondants qui
979  contiennent toutes les meta-informations sur les paquets. Les premiers sont
980  conservés dans le répertoire <file>pool/</file> tandis que les seconds sont
981  conservés dans le répertoire <file>dists/</file> de l'archive (pour
982  compatibilité descendante).
983
984
985         <sect2 id="sec-dists"><em>Stable</em>, <em>testing</em> et
986         <em>unstable</em>
987 <p>
988 Il y a toujours une distribution appelée <em>stable</em> (dans le répertoire
989  <file>dists/stable</file>), une distribution appelée <em>testing</em> (dans le
990  répertoire <file>dists/testing</file>) et une distribution appelée
991  <em>unstable</em> (dans le répertoire <file>dists/unstable</file>). Ceci
992  reflète le processus de développement du projet Debian.
993 <p>
994 Les développements se font sur la distribution
995  <em>unstable</em><footnote><p><em>unstable</em> signifie
996  «&nbsp;instable&nbsp;»</footnote> (c'est pourquoi elle est aussi appelée
997  <em>distribution de développement</em>). Chaque développeur Debian peut
998  modifier ses paquets à tout moment dans cette distribution. Ainsi son contenu
999  change tous les jours. Comme aucun effort particulier n'est fait pour s'assurer
1000  que tout fonctionne correctement dans cette distribution, elle est parfois
1001  littéralement «&nbsp;instable&nbsp;».
1002 <p>
1003 <ref id="testing"> est générée automatiquement en prenant les paquets de
1004  <em>unstable</em> s'ils satisfont à certains critères. Ces critères
1005  garantissent que les paquets de <em>testing</em> sont de bonne qualité. La mise
1006  à jour de <em>testing</em> est lancée chaque jour après que les nouveaux
1007  paquets ont été installés.
1008 <p>
1009 Après une période de développement, quand le responsable de
1010  distribution<footnote><p><em>Release manager</em></footnote> le juge opportun,
1011  la distribution <em>testing</em> est gelée, ce qui signifie que les conditions
1012  à remplir pour qu'un paquet passe de <em>unstable</em> à <em>testing</em> sont
1013  durcies. Les paquets trop bogués sont supprimés et les seules mises à jours
1014  autorisées concernent les corrections de bogues. Après quelque temps, selon
1015  l'avancement, la distribution entre dans une phase de «&nbsp;gel complet&nbsp;»
1016  où les seules modifications acceptées concernent la procédure d'installation.
1017  Cette phase s'appelle un «&nbsp;cycle de test&nbsp;» et cela peut durer jusqu'à
1018  deux semaines. Il peut y avoir plusieurs cycles de tests avant que le
1019  responsable de distribution ne la déclare prête pour la diffusion. À la fin du
1020  dernier cycle de test, la distribution <em>frozen</em> devient <em>stable</em>,
1021  remplaçant l'ancienne distribution <em>stable</em> qui est enlevée à cette
1022  occasion (elle peut être retrouvée à l'adresse <tt>&archive-host;</tt>).
1023 <p>
1024 Ce cycle de développement est basé sur l'idée que la distribution
1025  <em>unstable</em> devient <em>stable</em> après une période de test
1026  (<em>testing</em>). Une distribution contient inévitablement des bogues, même
1027  si elle est classée stable. C'est pourquoi les distributions stables sont mises
1028  à jour de temps en temps. Les corrections introduites sont testées avec une
1029  grande attention et sont ajoutées une à une à l'archive pour diminuer les
1030  risques d'introduire de nouveaux bogues. Vous pouvez trouver des paquets
1031  proposés pour les mises à jour de <em>stable</em> dans le répertoire
1032  <file>proposed-updates</file>. De temps en temps, les paquets de ce répertoire
1033  qui ne présentent pas de problème sont installés dans la distribution
1034  <em>stable</em> et le numéro de révision de cette distribution est incrémenté
1035  («&nbsp;3.0&nbsp;» devient «&nbsp;3.0r1&nbsp;», «&nbsp;2.0r4&nbsp;» devient
1036  «&nbsp;2.0r5&nbsp;» et ainsi de suite).
1037 <p>
1038 Notez que, pendant la période de gel, les développements continuent sur la
1039  distribution <em>unstable</em> car cette distribution reste en place.
1040
1041         <sect2><em>Experimental</em>
1042 <p>
1043 La distribution <em>experimental</em> est une distribution particulière. Ce n'est
1044    pas une distribution à part entière comme le sont <em>stable</em> et
1045    <em>unstable</em>. Elle est prévue pour servir de plate-forme de
1046    développement pour les projets expérimentaux qui risquent vraiment de
1047    détruire le système ou bien pour des logiciels qui sont vraiment trop
1048    instables pour être inclus dans la distribution <em>unstable</em> (mais pour
1049    lesquels une mise en paquet est justifiée). Les utilisateurs qui téléchargent
1050    et installent des paquets depuis <em>experimental</em> sont prévenus&nbsp;:
1051    on ne peut pas faire confiance à la distribution <em>experimental</em>.
1052 <p>
1053 Si un logiciel peut causer des dégats importants, il sera sûrement
1054    préférable de le mettre dans la distribution <em>experimental</em>. Un
1055    système expérimental de fichier compressé, par exemple, devrait probablement
1056    aller dans <em>experimental</em>.
1057 <p>
1058 Une nouvelle version amont qui ajoute de nouvelles fonctions tout en supprimant
1059    de nombreuses autres ne devra pas être téléchargée dans l'archive Debian,
1060    elle pourra cependant être téléchargée dans <em>experimental</em>. Une
1061    nouvelle version non finalisée d'un logiciel qui utilise une méthode de
1062    configuration complètement différente pourrait aller dans
1063    <em>experimental</em> au gré du responsable. Si vous travaillez sur un cas de
1064    mise à jour complexe ou incompatible, vous pouvez aussi utiliser
1065    <em>experimental</em> comme plate-forme d'intégration et ainsi fournir un
1066    accès aux testeurs.
1067 <p>
1068 Quelques logiciels expérimentaux peuvent cependant aller dans <em>unstable</em>,
1069    avec un avertissement dans la description mais ce n'est pas recommandé car
1070    les paquets de <em>unstable</em> se propagent dans <em>testing</em> et
1071    aboutissent dans <em>stable</em>. Vous ne devriez pas avoir peur d'utiliser
1072    <em>experimental</em> car ceci ne cause aucun souci aux ftpmasters, les
1073    paquets expérimentaux sont automatiquement enlevés quand vous envoyez le
1074    paquet dans <em>unstable</em> avec un numéro de version supérieur.
1075 <p>
1076 Un nouveau logiciel qui ne risque pas d'endommager le système ira directement
1077    dans <em>unstable</em>.
1078 <p>
1079 Une alternative à <em>experimental</em> consiste à utiliser vos pages
1080    personnelles sur le serveur <tt>people.debian.org</tt>.
1081
1082
1083       <sect1 id="codenames">Les noms de distribution
1084 <p>
1085 Chaque distribution Debian diffusée a un <em>nom de code</em>&nbsp;: Debian 1.1
1086  s'appelle «&nbsp;buzz&nbsp;»&nbsp;; Debian 1.2, «&nbsp;rex&nbsp;»&nbsp;; Debian
1087  1.3 «&nbsp;bo&nbsp;»&nbsp;; Debian 2.0, «&nbsp;hamm&nbsp;»&nbsp;; Debian 2.1,
1088  «&nbsp;slink&nbsp;»; Debian 2.2 «&nbsp;potato&nbsp;» et Debian 3.0
1089  «&nbsp;woody&nbsp;». Il y a aussi une pseudo-distribution nommée
1090  «&nbsp;sid&nbsp;», il s'agit de la distribution <em>unstable</em>&nbsp;; comme
1091  les paquets vont de <em>unstable</em> à <em>testing</em> quand ils approchent
1092  de la stabilité, la distribution «&nbsp;sid&nbsp;» n'est jamais diffusée. En
1093  plus du contenu habituel d'une distribution Debian, «&nbsp;sid&nbsp;» contient
1094  des paquets pour des architectures qui ne sont pas encore officiellement
1095  reconnues ou pour lesquelles la distribution n'a pas encore été diffusée. Ces
1096  architectures seront intégrées ulterieurement à la distribution principale.
1097 <p>
1098 Comme Debian est un projet de développement ouvert (i.e. tout le monde peut
1099  participer et suivre les développements), même les distributions
1100  <em>unstable</em> et <em>testing</em> sont disponibles sur les serveurs HTTP et
1101  FTP de Debian. Si nous avions nommé le répertoire qui contient la prochaine
1102  distribution à diffuser «&nbsp;testing&nbsp;», il aurait fallu changer son nom en
1103  «&nbsp;stable&nbsp;» au moment de la diffusion, ce qui aurait forcé les miroirs
1104  FTP à télécharger à nouveau la distribution complète (qui est plutôt volumineuse).
1105 <p>
1106 D'un autre coté, si une distribution s'appelait <em>Debian-x.y</em> dès le
1107  départ, des personnes pourraient s'imaginer que la distribution Debian
1108  <em>x.y</em> est disponible. (Cela s'est produit par le passé, un distributeur
1109  avait gravé des cédéroms Debian 1.0 en utilisant une version de développement
1110  pré-1.0. C'est pour cette raison que la première version officielle était la
1111  version 1.1 et non la 1.0.)
1112 <p>
1113 En conséquence, les noms de répertoire des distributions dans l'archive sont
1114  déterminés par leurs noms de code et non par leur statut (exemple&nbsp;:
1115  slink). Ces noms sont identiques pendant la période de développement et une
1116  fois la distribution diffusée&nbsp;; des liens symboliques, qui peuvent être
1117  modifiés facilement, indiquent la distribution stable actuelle. Tout ceci
1118  explique pourquoi les répertoires des distributions sont nommés à partir des
1119  noms de code des distributions alors que <em>stable</em>, <em>testing</em> et
1120  <em>unstable</em> sont des liens symboliques qui pointent vers les répertoires
1121  appropriés.
1122
1123     <sect id="mirrors">Les miroirs Debian
1124         <p>
1125 Les différentes archives de téléchargement et le site web disposent de plusieurs
1126 miroirs pour soulager les serveurs principaux d'une lourde charge. En fait,
1127 certains de ces serveurs ne sont pas publics et la charge est
1128 répartie sur une première série de serveurs. De cette façon, les
1129 utilisateurs ont toujours accès aux miroirs et s'y habituent, ce qui permet à
1130 Debian de mieux répartir les besoins en bande passante sur plusieurs serveurs et
1131 plusieurs réseaux différents et évitent aux utilisateurs de surcharger
1132 l'emplacement primaire. Notez que dans cette première série, les serveurs sont aussi à jour
1133 que possible car la mise à jour est déclenchée par les sites maîtres internes.
1134         <p>
1135 Toutes les informations sur les miroirs Debian peuvent être trouvées à <url
1136 id="&url-debian-mirrors;">, y compris une liste des miroirs publics disponibles
1137 FTP/HTTP. Cette page utile inclut également des informations et des outils pour
1138 créer son propre miroir, soit en interne soit pour un accès public.
1139         <p>
1140 Les miroirs sont en général mis en oeuvre par des tiers qui veulent aider
1141  Debian. C'est pourquoi les développeurs n'ont en général pas de compte sur ces
1142  machines.
1143
1144     <sect id="incoming-system">
1145         <heading>Le système Incoming
1146 <p>
1147 Le système Incoming est responsable de la collecte des paquets mis à jour et de
1148  leur installation dans l'archive Debian. Il est constitué d'un ensemble de
1149  répertoires et de scripts qui sont installés à la fois sur
1150  <tt>&ftp-master-host;</tt> et sur <tt>&non-us-host;</tt>.
1151 <p>
1152 Les paquets sont envoyés par tous les responsables Debian dans un répertoire
1153  nommé <file>unchecked</file>. Ce répertoire est parcouru toutes les 15 minutes
1154  par le script <prgn>katie</prgn> qui vérifie l'intégrité des paquets envoyés et
1155  les signatures de chiffrage. Si le paquet est considéré comme prêt à être
1156  installé, il est déplacé dans le répertoire <file>accepted</file>. S'il s'agit
1157  du premier envoi du paquet, il est déplacé dans le répertoire <file>new</file>
1158  où il attend l'approbation des ftpmasters. Si le paquet contient des fichiers
1159  devant être installés <em>à la main</em>, il est déplacé dans le répertoire
1160  <file>byhand</file> où il attend une installation manuelle par les ftpmasters.
1161  Sinon, si une erreur a été détectée, le paquet est refusé et il est déplacé
1162  dans le répertoire <file>reject</file>.
1163 <p>
1164 Une fois que le paquet est accepté, le système envoie une confirmation par
1165  courrier au responsable et ferme les bogues corrigés par l'envoi, puis
1166  les compilateurs automatiques peuvent commencer la recompilation. Le paquet est
1167  maintenant accessible publiquement à <url id="&url-incoming;"> (une telle
1168  adresse n'existe pas pour les paquets de l'archive non-US) jusqu'à ce qu'il
1169  soit vraiment installé dans l'archive Debian. Ceci se produit seulement une
1170  fois par jour, le paquet est alors supprimé de <file>Incoming</file> et
1171  installé dans le pool avec les autres paquets. Une fois que toutes les autres
1172  mises à jour (générant des nouveaux fichiers d'index <file>Packages</file> et
1173  <file>Sources</file> par exemple) ont été effectuées, un script spécial est
1174  appelé pour demander aux miroirs primaires de se mettre à jour.
1175 <p>
1176 Tous les développeurs Debian ont un droit d'écriture dans le répertoire
1177  <file>unchecked</file> pour pouvoir y envoyer leurs paquets, ils ont également
1178  accès au répertoire <file>reject</file> pour supprimer les mauvais envois ou
1179  déplacer certains fichiers dans le répertoire <file>unchecked</file>. Mais 
1180  seuls les ftpmasters ont droit d'écriture dans les autres répertoires.
1181  C'est pourquoi vous ne pouvez pas supprimer un envoi une fois qu'il a été
1182  accepté.
1183
1184       <sect1 id="delayed-incoming">Incoming différé
1185 <p>
1186 Le répertoire <file>unchecked</file> comprend un sous-répertoire spécial,
1187  <file>DELAYED</file>. Celui-ci est lui-même subdivisé en neuf répertoires
1188  nommés <file>1-day</file> à <file>9-day</file>. Les paquets qui sont envoyés
1189  dans l'un de ces répertoires seront déplacés dans le vrai répertoire
1190  <file>unchecked</file> après le nombre correspondant de jours. Ceci est fait
1191  par un script qui est exécuté chaque jour et qui déplace les paquets entre les
1192  répertoires. Ceux qui sont dans «&nbsp;1-day&nbsp;» sont installés dans
1193  <file>unchecked</file> alors que les autres sont déplacés dans le répertoire
1194  adjacent (par exemple, un paquet dans <file>5-day</file> sera déplacé dans
1195  <file>4-day</file>). Cette fonctionnalité est particulièrement utile pour les
1196  personnes qui effectuent des mises à jour indépendantes (NMU,
1197  «&nbsp;non-maintainer uploads&nbsp;»). Au lieu d'attendre avant d'envoyer la
1198  NMU, elle est envoyée dès qu'elle est prête dans l'un de ces répertoires
1199  <file>DELAYED/<var>x</var>-day</file>. Ceci laisse le nombre correspondant de
1200  jours au responsable pour réagir et envoyer lui-même une autre correction s'il
1201  n'est pas complètement satisfait par la NMU. Il peut également enlever
1202  complètement la NMU.
1203 <p>
1204 L'utilisation de cette fonctionnalité de délai peut être simplifiée en
1205  l'intégrant à votre outil d'envoi. Par exemple, si vous utilisez
1206  <prgn>dupload</prgn> (voir <ref id="dupload">), vous pouvez ajouter cette
1207  partie à votre fichier de configuration&nbsp;:
1208 <example>
1209 $delay = ($ENV{DELAY} || 7);
1210 $cfg{'delayed'} = {
1211          fqdn => "&ftp-master-host;",
1212          login => "yourdebianlogin",
1213          incoming => "/org/ftp.debian.org/incoming/DELAYED/$delay-day/",
1214          dinstall_runs => 1,
1215          method => "scpb"
1216 };</example>
1217 Une fois que vous avez fait ce changement, <prgn>dupload</prgn> peut être
1218 utilisé pour envoyer facilement dans l'un des répertoires de délai ainsi&nbsp;:
1219 <example>DELAY=5 dupload --to delayed &lt;changes-file&gt;</example>
1220
1221     <sect id="testing">
1222         <heading>La distribution «&nbsp;testing&nbsp;»
1223 <p>
1224 Les scripts qui mettent à jour la distribution <em>testing</em> sont exécutés
1225  chaque jour après l'installation des paquets mis à jour. Ils génèrent les
1226  fichiers <file>Packages</file> pour la distribution <em>testing</em>, mais ils
1227  le font d'une manière intelligente pour éviter toute incohérence et essayer de
1228  n'utiliser que des paquets sans bogues.
1229 <p>
1230 L'inclusion d'un paquet de <em>unstable</em> est soumise aux
1231  conditions suivantes&nbsp;:
1232 <list compact="compact">
1233 <item><p>Le paquet doit avoir été disponible dans <em>unstable</em> depuis
1234       plusieurs jours&nbsp;; le nombre précis dépend du champ d'urgence de
1235       l'envoi. Il s'agit de 10 jours pour une urgence faible, 5 jours pour une
1236       urgence moyenne et 2 jours pour une urgence élevée. Ces délais peuvent
1237       être doublés lors d'un gel de distribution&nbsp;;</item>
1238 <item><p>Il doit avoir moins de bogues empêchant l'intégration dans la distribution que la
1239       version disponible dans <em>testing</em>&nbsp;;</item>
1240 <item><p>Il doit être disponible pour toutes les architectures pour lesquelles
1241       il a été auparavant construit. <ref id="madison"> peut être
1242       intéressant pour vérifier cette information&nbsp;;</item>
1243 <item><p>Il ne doit pas casser les dépendances d'un paquet qui est déjà
1244       disponible dans <em>testing</em>&nbsp;;</item>
1245 <item><p>Les paquets dont il dépend doivent soit être déjà disponibles dans
1246       <em>testing</em> soit être acceptés dans <em>testing</em> au
1247       même moment (et ils doivent eux-mêmes respecter tous ces
1248       critères).</item>
1249 </list>
1250 <p>
1251 Les scripts génèrent certains fichiers pour expliquer
1252  pourquoi certains paquets sont maintenus hors de <em>testing</em>. Ils sont
1253  disponibles à <url id="&url-testing-maint;">. Sinon, il est possible
1254  d'utiliser le programme <prgn>grep-excuses</prgn> inclus dans le paquet
1255  <package>devscripts</package>. Il peut facilement être mis dans la <manref
1256  section="5" name="crontab"> pour rester informé de la progression de ses
1257  paquets dans <em>testing</em>.
1258 <p>
1259 Le fichier <file>update_excuses</file> ne donne pas toujours la raison précise
1260  pour laquelle un paquet est refusé, on peut avoir à la chercher soi-même en
1261  regardant ce qui serait cassé avec l'inclusion du paquet. La <url
1262  id="&url-testing-maint;" name="vue d'ensemble de testing"> donne plus
1263  d'informations à propos des problèmes courants qui peuvent occasionner cela.
1264 <p>
1265 Parfois, certains paquets n'entrent jamais dans <em>testing</em> parce que le
1266  jeu des inter-relations est trop compliqué et ne peut être résolu par le
1267  script. Dans ce cas, le responsable de version doit être contacté et il forcera
1268  l'inclusion du paquet.
1269
1270     <sect id="pkg-info">Informations sur un paquet
1271 <p>
1272
1273
1274       <sect1 id="pkg-info-web">Sur le web
1275 <p>
1276 Chaque paquet a plusieurs pages web dédiées.
1277  <tt>http://&packages-host;/<var>package-name</var></tt> affiche chaque version
1278  du paquet disponible dans les différentes distributions. Les informations
1279  détaillées par version incluent la description du paquet, les dépendances et
1280  des liens pour récupérer le paquet.
1281 <p>
1282 Le système de suivi des bogues trie les bogues par paquet. Vous pouvez regarder
1283  les bogues de chaque paquet à
1284  <tt>http://&bugs-host;/<var>package-name</var></tt>.
1285
1286       <sect1 id="madison">L'outil <prgn>madison</prgn>
1287 <p>
1288 <prgn>madison</prgn> est un outil en ligne de commande qui est disponible sur
1289  <tt>&ftp-master-host;</tt> et sur <tt>&non-us-host;</tt>. Il utilise un seul
1290  argument qui correspond au nom du paquet. Il affiche comme résultat quelle
1291  version du paquet est disponible pour chaque combinaison d'architecture et de
1292  distribution. Un exemple l'expliquera mieux.
1293 <p>
1294 <example>
1295 $ madison libdbd-mysql-perl
1296 libdbd-mysql-perl |   1.2202-4 |        stable | source, alpha, arm, i386, m68k, powerpc, sparc
1297 libdbd-mysql-perl |   1.2216-2 |       testing | source, arm, hppa, i386, ia64, m68k, mips, mipsel, powerpc, s390, sparc
1298 libdbd-mysql-perl | 1.2216-2.0.1 |       testing | alpha
1299 libdbd-mysql-perl |   1.2219-1 |      unstable | source, alpha, arm, hppa, i386, ia64, m68k, mips, mipsel, powerpc, s390, sparc</example>
1300 <p>
1301 Dans cet exemple, vous pouvez voir que la version dans <em>unstable</em> diffère
1302  de celle de <em>testing</em> et qu'il y a eu une NMU binaire seulement pour
1303  l'architecture alpha. À chaque fois, le paquet a été recompilé sur la plupart
1304  des architectures.
1305
1306     <sect id="pkg-tracking-system">Le système de suivi des paquets
1307 <p>
1308 Le système de suivi des paquets (PTS)<footnote>«&nbsp;Package Tracking
1309  System&nbsp;»</footnote> est un outil pour suivre par courrier l'activité
1310  concernant un paquet source. Il suffit simplement de s'inscrire à un
1311  paquet source pour recevoir les courriers liés à celui-ci. Vous
1312  recevez les mêmes courriers que le responsable. Chaque courrier envoyé par le
1313  PTS est classé et associé à l'un des mots-clés listés ci-dessous. Ceci vous
1314  permettra de sélectionner les courriers que vous voulez recevoir.
1315 <p>
1316 Par défaut, vous recevrez&nbsp;:
1317 <taglist>
1318   <tag><tt>bts</tt>
1319   <item>Tous les rapports de bogue et les discussions qui
1320         suivent.
1321
1322   <tag><tt>bts-control</tt>
1323   <item>Les courriers de contrôle notifiant le changement d'état de l'un des
1324         bogues.
1325
1326   <tag><tt>upload-source</tt>
1327   <item>Le courrier de confirmation de <prgn>katie</prgn> quand un paquet
1328         source envoyé a été accepté.
1329
1330   <tag><tt>katie-other</tt>
1331   <item>Les autres courriers d'avertissement et d'erreur de
1332         <prgn>katie</prgn> (comme une incohérence de forçage pour les champs
1333         section ou priorité).
1334
1335   <tag><tt>default</tt>
1336   <item>Tout courrier non automatique envoyé au PTS par les personnes qui
1337         veulent contacter les inscrits au paquet.
1338
1339   <tag><tt>summary</tt>
1340   <item>À l'avenir, vous pourriez recevoir des courriers de résumé pour vous
1341         tenir informé de l'état du paquet (statistiques sur les bogues, vue
1342         générale du portage, progression dans <em>testing</em>,
1343         etc.).
1344 </taglist>
1345
1346 <p>
1347 Vous pouvez également décider de recevoir plus d'informations&nbsp;: 
1348 <taglist>
1349   <tag><tt>upload-binary</tt>
1350    <item>Le courrier d'information de <prgn>katie</prgn> quand un paquet
1351         binaire envoyé est accepté (pour vérifier que votre paquet est
1352         recompilé pour toutes les architectures).
1353
1354   <tag><tt>cvs</tt>
1355   <item>Les modifications CVS<footnote><p><em>CVS commits</em></footnote> si le
1356         responsable a mis en place un système pour faire suivre les
1357         notifications de modifications vers le PTS.
1358
1359 </taglist>
1360
1361         <sect1 id="pts-commands">L'interface de courrier du PTS
1362 <p>
1363 Vous pouvez contrôler votre (vos) inscription(s) au PTS en envoyant différents
1364  commandes à <email>pts@qa.debian.org</email>.
1365
1366 <taglist>
1367   <tag><tt>subscribe &lt;srcpackage&gt; [&lt;email&gt;]</tt>
1368   <item>Inscrit <var>email</var> aux communications liées au paquet source
1369         <var>srcpackage</var>. L'adresse de l'expéditeur est utilisé si le
1370         second argument n'est pas présent. Si <var>srcpackage</var> n'est pas
1371         un paquet source valide, vous obtiendrez un avertissement. Cependant,
1372         s'il s'agit d'un paquet binaire valide, le PTS vous inscrira pour le
1373         paquet source correspondant.
1374
1375   <tag><tt>unsubscribe &lt;srcpackage&gt; [&lt;email&gt;]</tt>
1376   <item>Supprime une inscription précédente au paquet source
1377         <var>srcpackage</var> en utilisant l'adresse spécifiée ou l'adresse de
1378         l'expéditeur si le second argument n'est pas rempli.
1379
1380   <tag><tt>which [&lt;email&gt;]</tt>
1381   <item>Liste les inscriptions pour l'expéditeur ou pour l'adresse indiquée
1382         si elle est spécifiée.
1383
1384   <tag><tt>keyword [&lt;email&gt;]</tt>
1385   <item>Donne les mots-clés que vous acceptez. Chaque courrier envoyé par le
1386         PTS est associé à un mot-clé et vous ne recevez que les courriers associés
1387         aux mots-clés que vous avez acceptés. Voici la liste des mots-clés
1388         disponibles&nbsp;:
1389         <list>
1390         <item><tt>bts</tt>&nbsp;: courriers venant du système de gestion de bogues (BTS) Debian
1391         <item><tt>bts-control</tt>&nbsp;: réponses aux courriers envoyés à
1392               <email>control@bugs.debian.org</email>
1393         <item><tt>summary</tt>&nbsp;: courriers de résumé automatique sur l'état
1394                d'un paquet
1395         <item><tt>cvs</tt>&nbsp;: notifications de modifications CVS
1396         <item><tt>upload-source</tt>&nbsp;: annonce d'un nouvel envoi de paquet
1397               source qui a été accepté
1398         <item><tt>upload-binary</tt>&nbsp;: annonce d'un nouvel envoi de binaire
1399               seulement (portage)
1400         <item><tt>katie-other</tt>&nbsp;: autres courriers des ftpmasters
1401               (incohérence de forçage, etc.)
1402         <item><tt>default</tt>&nbsp;: tous les autres courriers (ceux qui ne sont
1403               pas "automatiques")
1404         </list>
1405
1406   <tag><tt>keyword &lt;srcpackage&gt; [&lt;email&gt;]</tt>
1407   <item>Identique à l'élément précédent, mais pour un paquet source donné
1408         car vous pouvez sélectionner un ensemble de mots-clés différent pour
1409         chaque paquet source.
1410
1411   <tag><tt>keyword [&lt;email&gt;] {+|-|=} &lt;list of keywords&gt;</tt>
1412   <item>Accepte (+) ou refuse (-) les courriers associés au(x) mot(s)-clé(s).
1413         Définit la liste (=) des mots-clés acceptés.
1414
1415   <tag><tt>keyword &lt;srcpackage&gt; [&lt;email&gt;] {+|-|=} &lt;list of keywords&gt;</tt>
1416   <item>Identique à l'élément précédent, mais remplace la liste des mots-clés
1417         pour le paquet source indiqué.
1418
1419   <tag><tt>quit | thanks | --</tt>
1420   <item>Arrête le traitement des commandes. Toutes les lignes suivantes sont
1421         ignorées par le robot.
1422 </taglist>
1423
1424         <sect1 id="pts-mail-filtering">Filtrer les courriers du PTS
1425 <p>
1426 Une fois que vous vous êtes inscrit à un paquet, vous recevrez les courriers
1427  envoyés à <tt><var>srcpackage</var>@packages.qa.debian.org</tt>. Ces courriers
1428  ont des en-têtes spéciaux ajoutés pour vous permettre de les filtrer dans des
1429  boîtes aux lettres avec <prgn>procmail</prgn>. Les en-têtes ajoutés sont
1430  <tt>X-Loop</tt>, <tt>X-PTS-Package</tt>, <tt>X-PTS-Keyword</tt> et
1431  <tt>X-Unsubscribe</tt>.
1432 <p>
1433 Voici un exemple d'en-têtes ajoutés pour une notification d'envoi de
1434 source sur le paquet <package>dpkg</package>&nbsp;:
1435 <example>
1436 X-Loop: dpkg@&pts-host;
1437 X-PTS-Package: dpkg
1438 X-PTS-Keyword: upload-source
1439 X-Unsubscribe: echo 'unsubscribe dpkg' | mail pts@qa.debian.org
1440 </example>
1441
1442         <sect1 id="pts-cvs-commit">Faire suivre les modifications de CVS vers le PTS
1443 <p>
1444 Si vous utilisez un référentiel CVS accessible publiquement pour maintenir votre
1445  paquet Debian, vous pouvez vouloir faire suivre les notifications de
1446  modifications vers le PTS pour que les inscrits (par exemple, des
1447  co-responsables) puissent suivre de près l'évolution du paquet.
1448 <p>
1449 C'est très facile à mettre en place. Une fois que votre référentiel génère des
1450  notifications de modifications, vous devez simplement vous assurer qu'il envoie une
1451  copie de tous ces courriers à <tt><var>srcpackage</var>_cvs@&pts-host;</tt>.
1452  Seules les personnes qui ont accepté le mot-clé <em>cvs</em> recevront les
1453  notifications.
1454
1455     <sect id="ddpo">Vue d'ensemble des paquets d'un développeur
1456 <p>
1457 Un portail web pour l'Assurance Qualité (QA) est disponible à <url
1458  id="&url-ddpo;"> qui affiche un tableau de tous les paquets d'un
1459  développeur (y compris ceux pour lequel il est co-responsable). Le tableau donne
1460  un bon résumé sur les paquets d'un développeur&nbsp;: nombre de bogues par
1461  gravité, liste des versions disponibles, état des tests et des liens vers
1462  d'autres informations utiles.
1463 <p>
1464 C'est une bonne idée de vérifier régulièrement vos données pour ne pas oublier
1465  de bogues ouverts et pour ne pas oublier quels paquets sont sous votre
1466  responsabilité.
1467
1468
1469    <chapt id="pkgs">Gestion des paquets
1470 <p>
1471 Ce chapitre contient des informations relatives à la création, l'envoi, la
1472  maintenance et le portage des paquets.
1473
1474     <sect id="upload">La mise à jour d'un paquet
1475       <sect1>Nouveaux paquets
1476 <p>
1477 Si vous voulez créer un nouveau paquet pour la distribution Debian, vous devriez
1478  commencer par consulter la liste des <url id="&url-wnpp;" name="paquets en
1479  souffrance et paquets souhaités">. Vous pourrez ainsi vérifier que personne ne
1480  travaille déjà sur ce paquet et éviter un double travail. Consultez aussi cette
1481  page si vous voulez en savoir plus.
1482 <p>
1483 Supposons que personne ne travaille sur le paquet que vous visez, vous devez
1484  alors envoyer un rapport de bogue (voir <ref id="submit-bug">) concernant le
1485  pseudo-paquet <package>wnpp</package>. Ce courrier devra décrire le paquet que
1486  vous projetez de créer, la licence de ce paquet et l'URL à laquelle le source
1487  peut être téléchargé. Cette liste n'est pas limitative.
1488 <p>
1489 Le sujet de votre rapport de bogue devra être &lt;ITP<footnote><p><em>Intent To
1490  Package</em>&nbsp;: intention de mise en paquet</footnote>&nbsp;:
1491  <var>NomDuPaquet</var> &mdash; <var>courte description</var>&gt;, en remplaçant
1492  <var>NomDuPaquet</var> par le nom du paquet. La gravité du bogue sera
1493  <em>wishlist</em>. Si vous le jugez nécessaire, envoyez une copie à
1494  &email-debian-devel; en mettant cette adresse dans le champ
1495  <tt>X-Debbugs-CC:</tt> de l'en-tête du message. N'utilisez pas le champ
1496  <tt>CC:</tt> car de cette manière le sujet du message ne contiendrait pas le
1497  numéro du bogue.
1498 <p>
1499 Il faudra aussi ajouter une entrée <tt>Closes: bug#<var>nnnnn</var></tt> dans le
1500  fichier <file>changelog</file> du nouveau paquet. Cette indication fermera
1501  automatiquement le rapport de bogue à l'installation du nouveau paquet sur les
1502  serveurs d'archivage (voir <ref id="upload-bugfix">).
1503 <p>
1504 Plusieurs raisons nous poussent à demander aux responsables
1505  d'annoncer leur intention&nbsp;:
1506 <list compact>
1507 <item>Les responsables ont ainsi la possibilité de puiser dans l'expérience
1508       des autres responsables et cela leur permet de savoir si une autre
1509       personne travaille déjà dessus.
1510 <item>D'autres personnes qui envisagent de travailler sur le même paquet
1511       apprendront ainsi qu'il existe déjà un volontaire, l'effort peut alors
1512       être partagé.</item>
1513 <item>Cela permet aux autres responsables de connaître le nouveau
1514       paquet mieux que ne le permettent la description d'une ligne et l'habituelle
1515       entrée de type changelog <em>Initial release</em> postée sur
1516       <tt>debian-devel-changes</tt>.
1517 <item>C'est une information utile pour
1518       les gens qui utilisent la distribution <em>unstable</em> et qui sont nos
1519       premiers testeurs. Nous devons faciliter la tâche de ces gens.
1520 <item>Avec ces annonces, les développeurs Debian et toutes les autres personnes
1521       intéressées peuvent se faire une meilleure idée des évolutions et des
1522       nouveautés du projet.
1523 </list>
1524
1525       <sect1 id="changelog-entries">
1526           <heading>Ajouter une entrée à <file>debian/changelog</file></heading>
1527 <p>
1528 Les modifications que vous apportez au paquet doivent être notifiées dans le
1529    fichier <file>debian/changelog</file>. Ces notes doivent donner une
1530    description concise des changements, expliquer pourquoi (si ce n'est pas
1531    clair) et indiquer si des rapports de bogue ont été clos. Il faut aussi indiquer
1532    quand le paquet a été terminé. Ce fichier sera installé dans
1533    <file>/usr/share/doc/<var>paquet</var>/changelog.Debian.gz</file> ou
1534    <file>/usr/share/doc/<var>paquet</var>/changelog.gz</file> pour un paquet
1535    natif.
1536 <p>
1537 Le fichier <file>debian/changelog</file> a une structure précise comportant
1538    différents champs. Le champ <em>distribution</em> est décrit dans <ref
1539    id="upload-dist">. Vous trouverez plus d'informations sur la structure de ce
1540    fichier dans la section «&nbsp;<file>debian/changelog</file>&nbsp;» de la
1541    <em>charte Debian</em>.
1542 <p>
1543 Les entrées du fichier <file>changelog</file> peuvent être
1544    utilisées pour fermer des rapports de bogue au moment où le paquet est
1545    installé dans l'archive. Voir la section <ref id="upload-bugfix">.
1546 <p>
1547 Par convention, l'entrée changelog d'un paquet qui contient une nouvelle version
1548    amont ressemble à&nbsp;:
1549 <example>
1550   * new upstream version
1551 </example>
1552 <p>
1553 Quelques outils peuvent vous aider à créer des entrées et à finaliser le fichier
1554    <file>changelog</file> pour une livraison &mdash; voir les sections <ref
1555    id="devscripts"> et <ref id="dpkg-dev-el">.
1556
1557
1558
1559       <sect1 id="upload-checking">Vérifier le paquet avant de l'envoyer
1560 <p>
1561 Avant d'envoyer votre paquet, vous devriez faire quelques tests de base. Vous
1562    devriez au moins faire les tests suivants (il vous faut une ancienne version
1563    du paquet)&nbsp;:
1564 <list>
1565 <item>Installez le paquet et vérifiez que le logiciel fonctionne. Si le
1566       paquet existait déjà dans une version plus ancienne, faites une mise à
1567       jour.
1568 <item>Exécutez <prgn>lintian</prgn> sur votre paquet. Vous pouvez exécuter
1569       <prgn>lintian</prgn> comme suit&nbsp;: <tt>lintian -v
1570       <var>package-version</var>.changes</tt>. Ce programme fera une
1571       vérification sur les paquets source et binaire. Si vous ne comprenez pas
1572       les messages générés par <prgn>lintian</prgn>, essayez l'option
1573       <tt>-i</tt>. Cette option rendra <prgn>lintian</prgn> beaucoup plus
1574       bavard dans sa description du problème.
1575       <p>
1576       En principe, un paquet pour lequel <prgn>lintian</prgn> génère des erreurs
1577       (elles commencent par <tt>E</tt>) <em>ne doit pas</em> être installé dans
1578       l'archive.
1579       <p>
1580       Pour en savoir plus sur <prgn>lintian</prgn>, reportez-vous à la section
1581       lintian <ref id="lintian">.
1582 <item>Faites régresser le paquet vers sa version précédente si elle existe
1583       &mdash; cela permet de tester les scripts <file>postrm</file> et
1584       <file>prerm</file>.
1585 <item>Désinstallez le paquet et réinstallez-le.
1586 </list>
1587
1588
1589       <sect1>Générer le fichier «&nbsp;changes&nbsp;»
1590 <p>
1591 Chaque nouvelle version d'un paquet installé sur les archives FTP Debian doit
1592    être accompagnée d'un fichier <file>.changes</file>. Ce fichier explique à
1593    l'administrateur de l'archive Debian ce qu'il doit faire du paquet. Il est en
1594    général créé par <prgn>dpkg-genchanges</prgn> au cours du processus de
1595    fabrication du paquet.
1596 <p>
1597 Le fichier <file>changes</file> est un fichier de contrôle qui contient les
1598    champs suivants&nbsp;:
1599 <p>
1600 &control-file-fields;
1601 <p>
1602 Tous ces champs sont obligatoires pour une installation sur les serveurs Debian.
1603    Vous pouvez consulter la liste des champs de contrôle dans la <url
1604    id="&url-debian-policy;" name="charte Debian"> pour connaître les valeurs que
1605    prennent ces champs. Vous pouvez fermer un rapport de bogue automatiquement
1606    avec le champ <tt>Description</tt> (voir <ref id="upload-bugfix">).
1607
1608
1609         <sect2>L'archive des sources amonts
1610 <p>
1611 La première fois qu'un paquet est installé dans l'archive pour une version amont
1612    donnée, le fichier <file>tar</file> de cette version amont doit être
1613    téléchargé et mentionné dans le fichier <file>.changes</file>. Par la suite,
1614    ce fichier <file>tar</file> sera utilisé pour générer les fichiers
1615    <file>diff</file> et <file>.dsc</file> et il ne sera pas nécessaire de le
1616    télécharger à nouveau.
1617 <p>
1618 Par défaut, <prgn>dpkg-genchanges</prgn> et <prgn>dpkg-buildpackage</prgn>
1619    incluront le fichier <file>tar</file> amont si et seulement si le numéro de
1620    révision du paquet source est 0 ou 1, ce qui indique une nouvelle version
1621    amont. Ce comportement peut être modifié en utilisant <tt>-sa</tt> pour
1622    l'inclure systématiquement ou <tt>-sd</tt> pour ne jamais l'inclure.
1623 <p>
1624 Si la mise à jour ne contient pas le fichier <file>tar</file> des sources
1625    originaux, <prgn>dpkg-source</prgn> <em>doit</em>, pour construire les
1626    fichiers <file>.dsc</file> et <file>diff</file> de la mise à jour, utiliser
1627    un fichier <tt>tar</tt> identique à l'octet près à celui déjà présent dans
1628    l'archive.
1629
1630
1631         <sect2 id="upload-dist">Choisir une distribution
1632 <p>
1633 Le champ <tt>Distribution</tt>, qui provient de la première ligne du fichier
1634    <file>debian/changelog</file>, indique à quelle distribution le paquet est
1635    destiné.
1636 <p>
1637 Il existe plusieurs valeurs possibles pour ce champ&nbsp;: «&nbsp;stable&nbsp;»,
1638     «&nbsp;unstable&nbsp;», «&nbsp;testing-proposed-updates&nbsp;» et
1639     «&nbsp;experimental&nbsp;». En fait, il y a deux autres possibilités&nbsp;:
1640     «&nbsp;stable-security&nbsp;» et «&nbsp;testing-security&nbsp;». Cependant,
1641     ces dernières sont utilisées par l'équipe de sécurité&nbsp;; n'envoyez pas
1642     de paquets dedans sans l'accord de celle-ci.
1643 <p>
1644 Il est techniquement possible d'envoyer un paquet dans plusieurs distributions
1645    en même temps, mais ceci n'a habituellement aucun sens d'utiliser cette
1646    fonctionnalité car les dépendances d'un paquet peuvent varier selon les
1647    distributions. En particulier, il est absurde de combiner la distribution
1648    <em>experimental</em> avec tout autre chose.
1649
1650
1651           <sect3 id="upload-stable">Mettre à jour un paquet de la distribution
1652           <em>stable</em>
1653 <p>
1654 Livrer un paquet pour la distribution <em>stable</em> signifie que le paquet
1655      sera dirigé vers le répertoire <file>stable-proposed-updates</file> des
1656      archives Debian pour y être testé avant d'être effectivement inclus dans
1657      <em>stable</em>.
1658 <p>
1659 Une livraison pour la distribution <em>stable</em> requiert des soins
1660      supplémentaires. Un paquet de cette distribution ne devrait être mis à jour
1661      que dans les cas suivants&nbsp;:
1662 <list>
1663 <item>un problème de sécurité (un avis de sécurité Debian<footnote>Debian
1664       security advisory</footnote>),
1665 <item>un problème fonctionnel vraiment critique,
1666 <item>un paquet devenu ininstallable,
1667 <item>un paquet indisponible pour une architecture.
1668 </list>
1669 <p>
1670 Il est fortement déconseillé de changer quoi que ce soit si ce
1671      n'est pas important car même une modification triviale peut provoquer un
1672      bogue. Livrer une nouvelle version amont d'un logiciel pour
1673      corriger un problème de sécurité est désapprouvé&nbsp;; dans la plupart
1674      des cas, la bonne solution consiste à prendre le correctif correspondant de
1675      la nouvelle version amont et à l'appliquer à l'ancienne (faire un
1676      rétro-portage<footnote><em>backport</em></footnote> du correctif).
1677 <p>
1678 Les paquets livrés pour <em>stable</em> doivent être compilés avec la
1679      distribution <em>stable</em> pour que leurs dépendances se limitent aux
1680      bibliothèques (et autres paquets) disponibles dans <em>stable</em>&nbsp;;
1681      un paquet livré pour la distribution <em>stable</em> qui dépend d'une
1682      bibliothèque qui n'est disponible que dans <em>unstable</em> sera rejeté.
1683      Modifier les dépendances d'autres paquets (en manipulant le champ
1684      <tt>Provides</tt> ou les fichiers shlibs) et, peut-être, rendre ces paquets
1685      ininstallables, est fortement déconseillé.
1686 <p>
1687 L'équipe responsable de la distribution<footnote><em>the Release
1688      team</em></footnote> (joignable à l'adresse &email-debian-release;)
1689      évaluera régulièrement le contenu de <em>stable-proposed-updates</em> et
1690      décidera si votre paquet peut être inclus dans la distribution
1691      <em>stable</em>. Soyez précis (et, si nécessaire, prolixe) quand vous
1692      décrivez, dans le fichier changelog, vos changements pour une livraison
1693      vers <em>stable</em>, sinon le paquet ne sera pas pris en considération.
1694
1695     <sect3 id="upload-t-p-u">Mettre à jour un paquet de la distribution
1696     <em>testing-proposed-updates</em>
1697 <p>
1698 La distribution <em>testing</em> est peuplée avec des paquets en provenance
1699      d'<em>unstable</em> selon des règles expliquées dans <ref id="testing">.
1700      Cependant, le responsable de distribution peut stopper les scripts de
1701      <em>testing</em> quand il veut geler la distribution. Dans ce cas, vous
1702      pouvez envoyer vos paquets vers <em>testing-proposed-updates</em> pour
1703      fournir des paquets corrigés durant le gel.
1704 <p>
1705 Souvenez-vous que les paquets envoyés là ne sont pas traités automatiquement,
1706      ils doivent passer entre les mains du responsable de version. Vous devez
1707      donc avoir une bonne raison pour les y envoyer. Pour savoir ce que
1708      représente une bonne raison aux yeux du responsable de version, vous
1709      devriez lire les instructions données qu'il envoie régulièrement sur
1710      &email-debian-devel-announce;.
1711 <p>
1712 Vous ne devriez pas envoyer un paquet à <em>testing-proposed-updates</em> quand
1713      vous pouvez le mettre à jour par <em>unstable</em>. Si vous ne pouvez faire
1714      autrement (par exemple, parce que vous avez une nouvelle version dans
1715      <em>unstable</em>), vous pouvez l'utiliser, mais il est recommandé de
1716      demander l'autorisation du responsable de distribution auparavant.
1717
1718       <sect1 id="uploading">Mettre à jour un paquet
1719
1720         <sect2 id="upload-ftp-master">Installer un paquet sur
1721         <tt>ftp-master</tt>
1722 <p>
1723 Pour installer un paquet, vous avez besoin d'un compte sur
1724    <ftpsite>&ftp-master-host;</ftpsite>, ce que vous devriez déjà avoir en tant
1725    que développeur Debian. Si vous utilisez <prgn>scp</prgn> ou
1726    <prgn>rsync</prgn> pour télécharger vos paquets, placez-les dans
1727    &us-upload-dir;. Si vous utilisez un FTP anonyme, placez-les dans
1728    &upload-queue;. Attention, il est préférable de transférer le fichier
1729    <tt>changes</tt> en dernier. Dans le cas contraire, votre livraison pourrait
1730    être rejetée car l'outil de maintenance de l'archive pourrait lire le fichier
1731    <tt>changes</tt> et constater que les fichiers ne sont pas tous présents. Si
1732    vous ne voulez pas vous embêter avec l'ordre de transfert des fichiers, vous
1733    pouvez tout simplement copier vos fichiers dans un répertoire temporaire de
1734    <tt>ftp-master</tt> et les déplacer ensuite vers &us-upload-dir;.
1735 <p>
1736 <em>Note&nbsp;:</em> ne téléchargez pas sur <tt>ftp-master</tt> de paquet
1737    concernant la cryptographie qui appartiendrait à <em>contrib</em> ou <em>non-free</em>.
1738    Ces logiciels doivent aller sur <tt>non-us</tt> (voir <ref
1739    id="upload-non-us">). De plus, les paquets contenant un logiciel protégé par
1740    des brevets américains ne peuvent pas être envoyés sur
1741    <tt>ftp-master</tt>&nbsp;; selon le cas, ils peuvent peut-être pourtant être
1742    envoyés vers <file>non-US/non-free</file> (le paquet est dans
1743    <em>non-free</em> à cause de problèmes de distribution et non pas à cause de
1744    la licence du logiciel). Quand vous ne pouvez télécharger sur
1745    <tt>ftp-master</tt>, vous ne pouvez pas non plus télécharger sur
1746    <tt>chiark</tt> ou <tt>erlangen</tt>. Si vous ne savez pas si votre paquet
1747    est protégé par un brevet ou s'il est soumis aux lois de contrôle des
1748    exportations américaines, posez la question sur la liste
1749    &email-debian-devel;.
1750 <p>
1751 Les paquets <ref id="dupload"> ou <ref id="dput"> pourront vous faciliter le
1752    travail lors du téléchargement. Ces programmes, bien pratiques, aident à
1753    automatiser le processus d'envoi de paquet vers Debian
1754 <p>
1755 Après avoir téléchargé votre paquet, vous pouvez vérifier ce qu'en
1756    fera le logiciel de maintenance de l'archive en exécutant
1757    <prgn>dinstall</prgn> sur votre fichier <file>.changes</file>&nbsp;: 
1758 <example>dinstall -n foo.changes</example>.
1759 Notez que <prgn>dput</prgn> peut le faire automatiquement pour vous.
1760
1761         <sect2 id="upload-non-us">Installer un paquet sur <tt>non-US</tt>
1762 <p>
1763 Comme nous l'avons dit un peu plus haut, les programmes soumis au contrôle des
1764    exportations américaines ne doivent pas être installés sur
1765    <tt>ftp-master</tt>. Installez le paquet sur
1766    <ftpsite>non-us.debian.org</ftpsite> dans le répertoire &non-us-upload-dir;
1767    (<ref id="dupload"> et <ref id="dput"> avec les options adéquates peuvent
1768    tous deux être utilisés pour cela). Par défaut, vous pouvez utiliser le même
1769    <em>login/mot de passe</em> que pour <tt>ftp-master</tt>. Si vous utilisez
1770    une connexion FTP anonyme pour le téléchargement, placez vos fichiers dans le
1771    répertoire &upload-queue;.
1772 <p>
1773 Tout comme sur <tt>ftp-master</tt>, vous pouvez vérifier votre téléchargement
1774    avec&nbsp;: <example>dinstall -n foo.changes</example>
1775 <p>
1776 Attention, les personnes résidant aux États-Unis et les citoyens américains sont
1777    soumis à des restrictions sur l'exportation des logiciels de cryptographie.
1778    Au moment où j'écris, les citoyens américains peuvent exporter quelques
1779    logiciels de cryptographie soumis à une obligation de déclaration auprès du
1780    département du commerce américain. Toutefois, cette restriction a été
1781    abandonnée pour des logiciels qui sont déjà disponibles en dehors des
1782    États-Unis. En conséquence, tout logiciel de cryptographie de la section
1783    <em>main</em> de l'archive Debian qui ne dépend d'aucun paquet d'une autre
1784    section &mdash; il ne doit pas dépendre de <em>non-US/main</em> &mdash; peut
1785    être téléchargé sur <tt>ftp-master</tt> ou l'une de ses files d'attente
1786    décrites plus haut.
1787 <p>
1788 La <em>charte Debian</em> n'empêche pas les résidents et citoyens américains de
1789    livrer des paquets sur <tt>non-US</tt> mais ils devront être vigilants en le
1790    faisant. Nous recommandons aux responsables concernés de prendre toutes les
1791    précautions nécessaires, <em>y compris la consultation d'un juriste</em>,
1792    pour s'assurer qu'ils n'enfreignent pas une loi américaine en livrant un
1793    paquet sur <tt>non-US</tt>.
1794 <p>
1795 Pour les paquets des sections <em>non-US/main</em> et <em>non-US/contrib</em>,
1796    les responsables devraient au moins suivre la <url id="&url-u.s.-export;"
1797    name="procédure décrite par le gouvernement américain">. Les responsables de
1798    paquets <em>non-US/non-free</em> devront en plus consulter les <url
1799    id="&url-notification-of-export;" name="règles de déclaration d'exportation
1800    pour les logiciels commerciaux">.
1801 <p>
1802 Cette section a pour seul but d'informer, elle n'a pas valeur de conseil
1803    juridique. Une fois encore, nous recommandons aux résidents et citoyens
1804    américains de consulter un juriste avant de livrer un paquet sur
1805    <tt>non-US</tt>.
1806
1807
1808         <sect2>Installer un paquet via <tt>chiark</tt>
1809 <p>
1810 Si votre connexion vers <tt>ftp-master</tt> est lente, vous avez plusieurs
1811    possibilités. L'une d'elles consiste à télécharger vos fichiers dans
1812    <file>Incoming</file> en passant par le serveur <tt>chiark</tt> en Europe.
1813    Pour les détails, consultez <url id="&url-chiark-readme;">.
1814 <p>
1815 Attention, ne téléchargez pas de paquet contenant un logiciel soumis aux lois de
1816    contrôle des exportations américaines sur <tt>chiark</tt>. Les paquets
1817    téléchargés sur ce serveur sont redirigés vers <tt>ftp-master</tt>, les
1818    indications de la section <ref id="upload-ftp-master"> sont applicables ici
1819    aussi.
1820 <p>
1821 Le programme <prgn>dupload</prgn> est capable de télécharger sur
1822    <tt>chiark</tt>&nbsp;; consultez la documentation de ce programme pour en
1823    savoir plus.
1824
1825
1826         <sect2>Installer un paquet via <tt>erlangen</tt>
1827 <p>
1828 Vous pouvez aussi accéder à un serveur situé en Allemagne&nbsp;: il vous suffit
1829    d'ouvrir une connexion anonyme sur <url id="&url-upload-erlangen;">.
1830 <p>
1831 Le téléchargement fait sur ce serveur doit être aussi complet que s'il était
1832    fait dans le répertoire <file>Incoming</file> sur <tt>ftp-master</tt> : il
1833    doit comporter le fichier <file>.changes</file> et tous les fichiers
1834    mentionnés dans ce dernier. Le serveur vérifie que le fichier
1835    <file>.changes</file> est bien signé avec la clé PGP d'un développeur Debian
1836    pour éviter que des faux paquets n'atteignent <tt>ftp-master</tt>. Vérifiez
1837    bien que le champ <tt>Maintainer</tt> du fichier <file>.changes</file>
1838    contient <em>votre</em> adresse électronique. De même que sur
1839    <tt>ftp-master</tt>, cette adresse est ensuite utilisée pour toutes les
1840    réponses.
1841 <p>
1842 Il n'est pas nécessaire de déplacer votre fichier dans un autre répertoire après
1843    le téléchargement, contrairement au serveur <tt>chiark</tt>. Vous devriez
1844    ensuite recevoir un courrier du serveur expliquant ce qu'il a fait de votre
1845    paquet. Normalement, il devrait avoir été déplacé vers
1846    <tt>ftp-master</tt>&nbsp;; vous serez informé par le même biais si une erreur
1847    s'est produite au cours du processus.
1848 <p>
1849 Attention, ne téléchargez pas de paquet contenant un logiciel soumis aux lois de
1850    contrôle des exportations américaines sur <tt>erlangen</tt>. Les paquets
1851    téléchargés sur ce serveur sont redirigés vers <tt>ftp-master</tt>, les
1852    indications de la section <ref id="upload-ftp-master"> sont applicables ici
1853    aussi.
1854 <p>
1855 Le programme <prgn>dupload</prgn> est capable de télécharger sur
1856    <tt>erlangen</tt>&nbsp;; consultez la documentation de ce programme pour en
1857    savoir plus.
1858
1859
1860         <sect2>Les autres serveurs
1861 <p>
1862 Un autre serveur est disponible aux États-Unis&nbsp;; c'est un bon point de
1863    repli quand il est difficile de joindre <tt>ftp-master</tt>. Livrez vos
1864    paquets à l'adresse <url id="&url-upload-samosa;"> comme vous le feriez sur
1865    <tt>erlangen</tt>.
1866 <p>
1867 Il existe aussi un serveur au Japon&nbsp;: téléchargez vos paquet par FTP
1868    anonyme sur <url id="&url-upload-jp;">.
1869
1870
1871
1872       <sect1 id="upload-announce">Annoncer une mise à jour
1873 <p>
1874 Quand un paquet est mis à jour, une annonce doit être envoyée sur l'une des
1875  listes «&nbsp;debian-changes&nbsp;». Ceci est maintenant géré automatiquement
1876  par le logiciel de gestion de l'archive quand il est exécuté (en principe, une
1877  fois par jour). Vous devez juste utiliser une version récente de
1878  <package>dpkg-dev</package> (&gt;= 1.4.1.2). Le courrier généré par le logiciel
1879  de maintenance de l'archive contiendra le fichier <file>.changes</file> signé
1880  que vous avez livré avec votre paquet. Précédemment, cette charge revenait à
1881  <prgn>dupload</prgn>&nbsp;; vérifiez que vous avez bien configuré
1882  <prgn>dupload</prgn> pour qu'il n'envoie pas ces annonces (cherchez
1883  <tt>dinstall_runs</tt> dans la documentation de <prgn>dupload</prgn>).
1884 <p>
1885 Si un paquet est mis à jour avec un champ <tt>Distribution:</tt> à
1886  <em>stable</em>, l'annonce est envoyée sur la liste &email-debian-changes;.
1887  S'il est mis à jour avec un champ <tt>Distribution:</tt> à <em>unstable</em> ou
1888  <em>experimental</em>, l'annonce est envoyée sur la liste
1889  &email-debian-devel-changes;.
1890
1891       <sect1 id="upload-notification">
1892           <heading>Notification de l'installation d'un nouveau paquet</heading>
1893 <p>
1894 Les administrateurs de l'archive Debian sont responsables de l'installation des
1895  mises à jour. La plupart des mises à jour sont gérées quotidiennement par le
1896  logiciel de gestion de l'archive <prgn>katie</prgn>. Les mises à jour de
1897  paquets sur la distribution <em>unstable</em> sont installées
1898  ainsi. Dans les autres cas et notamment dans le cas d'un nouveau paquet,
1899  celui-ci sera installé manuellement. Il peut s'écouler jusqu'à un mois entre le
1900  téléchargement d'un paquet vers un serveur et son installation effective. Soyez
1901  patient.
1902 <p>
1903 Dans tous les cas, vous recevrez un accusé de réception par courrier
1904  électronique indiquant que votre paquet a été installé et quels rapports de
1905  bogues ont été clos. Lisez attentivement ce courrier et vérifiez que tous les
1906  rapports de bogue que vous vouliez clore sont bien dans cette liste.
1907 <p>
1908 L'accusé de réception indique aussi la section dans laquelle le paquet a été
1909  installé. S'il ne s'agit pas de votre choix, vous recevrez un second courrier
1910  qui vous informera de cette différence (voir ci-dessous).
1911
1912         <sect2 id="override-file">Le fichier <em>override</em>
1913 <p>
1914 Les champs <tt>Section</tt> et <tt>Priority</tt> du fichier
1915    <file>debian/control</file> n'indiquent ni où le paquet sera installé dans
1916    l'archive Debian, ni sa priorité. Afin de conserver la cohérence de
1917    l'archive, ce sont les administrateurs qui contrôlent ces champs. Les valeurs
1918    du fichier <file>debian/control</file> sont juste des indications.
1919 <p>
1920 Les administrateurs de l'archive indiquent les sections et priorités des paquets
1921    dans le fichier <em>override</em>. Si ce fichier <em>override</em> et le
1922    fichier <file>debian/control</file> de votre paquet diffèrent, vous en serez
1923    informé par courrier électronique quand votre paquet sera installé dans
1924    l'archive. Vous pourrez corriger votre fichier <em>debian/control</em> avant
1925    votre prochain téléchargement ou alors vous pourrez vouloir modifier le
1926    fichier <em>override</em>.
1927 <p>
1928 Pour modifier la section dans laquelle un paquet est archivé, vous devez d'abord
1929    vérifier que fichier <file>debian/control</file> est correct. Ensuite,
1930    envoyez un courrier à &email-override; ou un rapport de bogue sur le
1931    pseudo-paquet <package>ftp.debian.org</package> demandant la modification de
1932    la section ou de la priorité de votre paquet. Exposez bien les raisons qui
1933    vous amènent à demander ces changements.
1934 <p>
1935 Pour en savoir plus sur les <em>fichiers override</em>, reportez-vous à <manref
1936    section="8" name="dpkg-scanpackages"> et
1937    <url id="&url-bts-devel;#maintincorrect">.
1938
1939
1940     <sect id="nmu">Mise à jour indépendante
1941 <p>
1942 Dans certaines circonstances, il est nécessaire qu'une personne autre que le
1943       responsable d'un paquet fasse une mise à jour de ce paquet. Ce type de
1944       mise à jour est désigné en anglais par l'expression <em>non-maintainer
1945       upload (NMU)</em>. Dans le présent document, nous traduisons librement
1946       cette expression par «&nbsp;mise à jour indépendante&nbsp;».
1947 <p>
1948 Ces mises à jour indépendantes de binaires font de temps en temps partie du
1949        travail normal des porteurs qui compilent les paquets pour d'autres
1950        architectures (voir <ref id="porting">). Un développeur peut aussi faire
1951        des mises à jour indépendantes quand il corrige le paquet d'un autre
1952        développeur pour éliminer un problème de sécurité ou un bogue bloquant. Cela
1953        se produit plus particulièrement en période de gel de la distribution de
1954        développement ou quand le responsable officiel du paquet ne peut pas
1955        fournir une correction dans un délai raisonnable.
1956 <p>
1957 Ce chapitre contient des informations qui vous expliqueront quand et comment
1958       faire des mises à jour indépendantes. Une distinction fondamentale doit
1959       être faite entre les mises à jour indépendantes sources et les mises à
1960       jour indépendantes binaires. Elle est explicitée dans la section suivante.
1961
1962       <sect1 id="nmu-terms">Terminologie
1963 <p>
1964 Deux nouvelles expressions sont introduites dans cette section&nbsp;:
1965  «&nbsp;mise à jour indépendante source&nbsp;» et «&nbsp;mise à jour
1966  indépendante binaire&nbsp;». Ces expressions ont une définition précise dans le
1967  monde Debian. Elles correspondent toutes deux au même type d'activité&nbsp;;
1968  elles impliquent toutes deux qu'une personne fait une mise à jour d'un paquet
1969  alors qu'elle n'est pas officiellement responsable de ce paquet. C'est pourquoi
1970  nous qualifions ces mises à jours
1971  d'<em>indépendantes</em><footnote>Contrairement à ce que pourrait laisser
1972  entendre cette traduction de <em>non-maintainer upload</em>, il n'est pas
1973  question d'agir sans prévenir le responsable au préalable (voir <ref
1974  id="nmu-guidelines">).</footnote>.
1975 <p>
1976 Une mise à jour indépendante source est une livraison de paquet faite par une
1977  personne qui n'est pas le responsable officiel de ce paquet avec pour objectif
1978  de corriger un bogue dans le paquet. Une mise à jour indépendante source
1979  implique toujours une modification des sources du paquet, même s'il ne s'agit
1980  que d'un changement dans le fichier <file>debian/changelog</file>. Ce
1981  changement peut tout aussi bien concerner la partie amont du source que la
1982  partie spécifique à Debian. Une mise à jour indépendante source peut aussi
1983  inclure des paquets spécifiques à une architecture tout comme un fichier
1984  <em>diff</em> modifié.
1985 <p>
1986 Une mise à jour indépendante binaire est constitué par la recompilation et
1987  l'archivage d'un paquet pour une architecture donnée. Il s'agit souvent du
1988  résultat d'un effort de portage. Une mise à jour indépendante binaire est la
1989  livraison d'un paquet compilé (souvent pour une autre architecture) à condition
1990  que cette compilation n'ait pas nécessité de modifications des sources. Dans de
1991  nombreux cas, les porteurs sont obligés de modifier les sources pour les rendre
1992  compilables sur leur architecture cible&nbsp;; il s'agira alors d'une mise à
1993  jour indépendante source et non d'une mise à jour indépendante binaire. Comme
1994  vous pouvez le remarquer, nous ne faisons pas de distinction entre les mises à
1995  jour indépendantes faites par des porteurs et les autres mises à jour
1996  indépendantes.
1997 <p>
1998 Les mises à jour indépendantes sources et binaires sont toutes deux couvertes
1999  par l'expression «&nbsp;mise à jour indépendante&nbsp;»
2000  (NMU<footnote><p>Non-maintainer upload</footnote>). Pourtant, cela conduit
2001  souvent à des confusions car beaucoup associent «&nbsp;mise à jour
2002  indépendante&nbsp;» et «&nbsp;mise à jour indépendante source&nbsp;». Il faut
2003  donc rester vigilant. Dans ce chapitre, si nous utilisons l'expression
2004  «&nbsp;mise à jour indépendante&nbsp;» seule, il s'agit des deux types de
2005  livraisons.
2006
2007
2008       <sect1 id="nmu-who">Qui peut faire une mise à jour indépendante&nbsp;?
2009 <p>
2010 Seuls les responsables Debian officiels peuvent faire des mises à jour
2011  indépendantes. Un responsable officiel est une personne dont la clé est dans le
2012  porte-clés Debian. Toute personne est invitée à télécharger les paquets sources
2013  pour corriger des bogues&nbsp;; au lieu de faire des mises à jour
2014  indépendantes, ils pourront soumettre les correctifs qui le méritent au système
2015  de suivi des bogues. Les responsables apprécient presque toujours les
2016  correctifs et les rapports de bogue soignés.
2017
2018
2019       <sect1 id="nmu-when">Quand faire une mise à jour indépendante
2020       source&nbsp;?
2021 <p>
2022 Les recommandations pour déterminer quand faire une mise à jour indépendante
2023  source dépendent de la distribution visée (i.e. <em>stable</em>,
2024  <em>unstable</em> ou <em>experimental</em>). Les porteurs, ayant une activité
2025  particulière, obéissent à des règles légèrement différentes (voir <ref
2026  id="source-nmu-when-porter">).
2027 <p>
2028 Quand une bogue de sécurité est détecté, l'équipe de sécurité peut faire une
2029  mise à jour indépendante. Veuillez vous reporter à <ref id="bug-security"> pour
2030  plus d'informations.
2031 <p>
2032 Pendant le cycle de mise au point (<em>release cycle</em>, voir <ref
2033  id="sec-dists">), les livraisons qui corrigent les bogues de gravité
2034  <em>sérieuse</em> (i.e. <em>serious</em>) et supérieures sont encouragées et
2035  acceptées. Même pendant cette période, vous devriez tenter d'entrer en contact
2036  avec le responsable du paquet&nbsp;; il pourrait bien être sur le point de
2037  livrer un paquet corrigé lui aussi. Comme pour n'importe quelle mise à jour
2038  indépendante source, les recommandations de la section <ref
2039  id="nmu-guidelines"> doivent être respectées. Des exceptions spéciales sont
2040  effectuées pour <ref id="qa-bsp">.
2041 <p>
2042 Envoyer des corrections de bogues vers <em>unstable</em> par une autre personne
2043  que le responsable ne devrait être fait qu'en suivant ce protocole&nbsp;:
2044 <p>
2045 <list>
2046 <item>Vérifiez que les bogues du paquet qui devraient être corrigés par la
2047       mise à jour indépendante sont bien référencés dans le système de suivi des
2048       bogues. S'ils n'y sont pas, faites des rapports de bogue
2049       immédiatement.
2050 <item>Attendez la réponse du responsable quelques jours. Si vous n'obtenez
2051       aucune réponse, vous pouvez l'aider en lui envoyant le correctif qui
2052       corrige le bogue. N'oubliez pas de marquer le bogue avec le mot-clé
2053       «&nbsp;patch&nbsp;».
2054 <item>Patientez quelques jours. Si vous n'avez toujours aucune réponse du
2055       responsable, envoyez-lui un courrier annonçant votre intention
2056       d'effectuer une mise à jour indépendante du paquet. Préparez la NMU comme
2057       décrit dans <ref id="nmu-guidelines">, testez-la soigneusement sur votre
2058       machine (cf. <ref id="upload-checking">). Re-vérifiez que votre correctif
2059       n'a aucun effet de bord inattendu. Assurez-vous que votre correctif est
2060       aussi minimaliste et non intrusif que possible.
2061 <item>Envoyez votre paquet à incoming dans <file>DELAYED/7-day</file> (cf.
2062       <ref id="delayed-incoming">), envoyez le correctif final au responsable
2063       par le BTS et expliquez-lui qu'il a 7 jours pour réagir s'il veut annuler
2064       la NMU.
2065 <item>Suivez ce qui se passe, vous êtes responsable pour tout bogue que vous
2066       auriez introduit avec votre NMU. Vous devriez probablement utiliser le
2067       <ref id="pkg-tracking-system"> (PTS) pour vous tenir informé de l'état du
2068       paquet après votre NMU.
2069 </list>
2070 <p>
2071 Parfois, le responsable de version ou un groupe organisé de
2072  développeurs peut annoncer une certaine période de temps au cours de laquelle
2073  les règles de mise à jour indépendante seront plus souples. Ceci implique
2074  habituellement une période plus courte d'attente avant d'envoyer des
2075  correctifs et une période de délai plus courte. Il est important de noter que
2076  même au cours de ces «&nbsp;chasses aux bogues&nbsp;», la personne
2077  désirant faire la mise à jour indépendante doit remplir des bogues et
2078  contacter en premier le développeur, et ensuite seulement passer à
2079  l'action.
2080
2081       <sect1 id="nmu-guidelines">Comment faire une mise à jour indépendante
2082       source&nbsp;?
2083 <p>
2084 Les règles qui suivent s'appliquent aux porteurs tant qu'ils jouent le double
2085  rôle de correcteur de bogue et de porteur. Si un porteur doit modifier le
2086  paquet source, cette mise à jour est automatiquement une mise à jour
2087  indépendante source et est soumise aux règles qui suivent. Si un porteur
2088  construit un paquet binaire recompilé, les règles sont différentes (voir <ref
2089  id="porter-guidelines">.
2090 <p>
2091 Tout d'abord, il est capital que ces mises à jour indépendantes soient aussi peu
2092  intrusives que possible. Ne faites pas de ménage, ne modifiez pas le nom des
2093  modules ou des fichiers, ne déplacez pas les répertoires&nbsp;; plus
2094  généralement, ne corrigez pas ce qui n'est pas cassé. Faites un correctif aussi
2095  petit que possible. Si certaines choses froissent votre sens de l'esthétique,
2096  parlez-en au responsable du paquet, au responsable amont ou soumettez un
2097  rapport de bogue. Quoiqu'il en soit, les changements esthétiques <em>ne doivent
2098  pas</em> être effectués lors d'une mise à jour indépendante.
2099
2100
2101         <sect2 id="nmu-version">Numéro de version pour les mises à jour
2102         indépendantes sources
2103 <p>
2104 Chaque fois que vous modifiez un paquet, le numéro de version de ce paquet doit
2105    changer, même pour la plus triviale des modifications. Notre système de
2106    gestion de paquets s'appuie sur ces numéros de version.
2107 <p>
2108 Si vous faites une mise à jour indépendante <em>(NMU)</em>, vous devez ajouter
2109    un numéro de version mineur à la partie <var>debian-revision</var> du numéro
2110    de version (la partie qui suit le dernier trait d'union). Ce numéro
2111    supplémentaire débutera à «&nbsp;1&nbsp;». Prenons pour exemple le paquet
2112    «&nbsp;foo&nbsp;» qui porte le numéro de version 1.1-3. Dans l'archive, le
2113    fichier de contrôle du paquet source serait <file>foo_1.1-3.dsc</file>. La
2114    version amont est «&nbsp;1.1&nbsp;» et la révision Debian est
2115    «&nbsp;3&nbsp;». La mise à jour indépendante suivante ajouterait le numéro de
2116    version mineur «&nbsp;.1&nbsp;» au numéro de révision Debian; le nouveau
2117    fichier de contrôle du paquet source serait alors
2118    <file>foo_1.1-3.1.dsc</file>.
2119 <p>
2120 Le numéro de révision mineur est nécessaire pour éviter de prendre un numéro de
2121    version au responsable officiel du paquet, ce qui pourrait perturber son
2122    travail. Cela a aussi l'avantage de montrer clairement que le paquet n'a pas
2123    été livré par le responsable officiel.
2124 <p>
2125 S'il n'y a pas de partie <var>debian-revision</var> dans le numéro de version du
2126    paquet, il faut en créer une en démarrant à «&nbsp;0.1&nbsp;». S'il est
2127    absolument nécessaire qu'une personne qui n'est pas responsable d'un paquet
2128    fasse une livraison basée sur une nouvelle version amont, cette personne doit
2129    choisir «&nbsp;0.1&nbsp;» comme numéro de révision Debian. Le mainteneur du
2130    paquet doit, lui, démarrer sa numérotation à «&nbsp;1&nbsp;».
2131  
2132
2133         <sect2 id="nmu-changelog">
2134             <heading>Les mises à jour indépendantes sources doivent être
2135             mentionnées dans le fichier changelog</heading>
2136 <p>
2137 Une personne qui fait une mise à jour indépendante source doit ajouter une
2138    entrée dans le fichier <file>changelog</file> qui indique les bogues corrigés
2139    et qui précise pourquoi cette mise à jour était nécessaire. Cette entrée
2140    comportera l'adresse de la personne ayant fait la mise à jour ainsi que la
2141    version livrée.
2142 <p>
2143 Par convention, dans le cas d'une mise à jour indépendante source
2144    <em>(NMU)</em>, l'entrée du fichier changelog débute par la ligne
2145
2146 <example>
2147   * Non-maintainer upload
2148 </example>
2149
2150
2151         <sect2 id="nmu-patch">Mise à jour indépendante source et système de
2152         suivi des bogues
2153 <p>
2154 Un développeur qui n'est pas responsable d'un paquet doit faire aussi peu de
2155    modifications que possible et doit toujours envoyer ses modifications au
2156    système de suivi des bogues au format diff unifié (<tt>diff -u</tt>).
2157 <p>
2158 Et si vous recompilez simplement le paquet&nbsp;? Si vous avez simplement besoin
2159    de recompiler le paquet pour une seule architecture, vous pouvez faire une
2160    NMU binaire seulement comme décrit dans <ref id="binary-only-nmu"> qui ne
2161    nécessite pas qu'un correctif soit envoyé. Si vous désirez que le paquet soit
2162    recompilé pour toutes les architectures, vous devez alors faire une NMU
2163    source et vous devrez envoyer un correctif.
2164 <p>
2165 Si la mise à jour indépendante source (<em>source NMU</em>) corrige des bogues,
2166    ceux-ci doivent être marqués <em>fixed</em> (corrigé) dans le système de
2167    suivi des bogues plutôt que clos. Par convention, seul le responsable du
2168    paquet et la personne qui a ouvert le rapport de bogue peuvent clore ce
2169    rapport. Heureusement, le système d'archivage Debian reconnaît les mises à
2170    jours indépendantes et positionne correctement le statut des bogues à
2171    <em>fixed</em> si la personne qui fait la mise à jour a listé tous les bogues
2172    dans le fichier changelog en utilisant la syntaxe <tt>Closes:
2173    bug#<var>nnnnn</var></tt> (voir <ref id="upload-bugfix"> pour en savoir plus
2174    sur la fermeture de bogue par le fichier <file>changelog</file>). Ce passage
2175    au statut <em>fixed</em> assure que chacun sait que le bogue est corrigé par
2176    une mise à jour indépendante tout en laissant le rapport de bogue ouvert
2177    jusqu'à ce que le responsable du paquet incorpore les modifications de cette
2178    mise à jour dans la version officielle du paquet.
2179 <p>
2180 Après avoir fait une mise à jour indépendante, il vous faudra aussi ouvrir un
2181    nouveau rapport de bogue qui inclura un correctif contenant toutes les
2182    modifications que vous avez faites. Sinon, vous pouvez envoyer cette
2183    information aux bogues qui sont fixés par votre NMU. Le responsable officiel
2184    pourra choisir d'appliquer le correctif, il pourra aussi employer une autre
2185    méthode pour régler le problème. Certains bogues sont corrigés dans la
2186    version amont, ce qui est une bonne raison pour annuler les modifications
2187    d'une mise à jour indépendante. Si le responsable choisit de mettre à jour le
2188    paquet plutôt que d'utiliser les correctifs de la mise à jour indépendante,
2189    il devra s'assurer que cette nouvelle version corrige effectivement chacun
2190    des bogues corrigés dans la mise à jour indépendante.
2191 <p>
2192 De plus, le responsable officiel devrait <em>toujours</em> conserver les entrées
2193    documentant une mise à jour indépendante dans le fichier
2194    <file>changelog</file>.
2195
2196
2197         <sect2 id="nmu-build">Fabriquer une mise à jour indépendante source
2198 <p>
2199 Les paquets faisant l'objet d'une mise à jour indépendante source sont
2200    construits comme les autres. Sélectionnez une distribution en utilisant les
2201    règles décrites dans la section <ref id="upload-dist"> et construisez un
2202    fichier <tt>.changes</tt> classique avec tout ce qui l'accompagne
2203    conformément à la description <ref id="uploading">. En fait, toutes les
2204    prescriptions de la section <ref id="upload"> sont applicables ici.
2205 <p>
2206 Vérifiez que vous n'avez pas modifié la valeur du champ <tt>maintainer</tt> dans
2207    le fichier <file>debian/control</file>. Votre nom, mentionné dans l'entrée du
2208    fichier <file>debian/changelog</file> concernant la mise à jour, sera utilisé
2209    pour signer le fichier <file>.changes</file>.
2210
2211       <sect1 id="ack-nmu">Valider une mise à jour indépendante
2212 <p>
2213 Si l'un de vos paquets a subi une mise à jour indépendante, vous devez récupérer
2214  les changements dans votre copie des sources. Ceci est aisé, vous avez
2215  simplement à appliquer le correctif qui vous a été envoyé. Une fois ceci fait,
2216  vous devez fermer les bogues qui ont été marqués comme fixés par la mise à
2217  jour. Vous pouvez soit les fermer manuellement en envoyant les courriers
2218  nécessaires au BTS soit ajouter les <tt>closes: #nnnn</tt> nécessaires dans
2219  l'entrée du changelog de votre prochain envoi.
2220 <p>
2221 Dans tous les cas, vous ne devriez pas être perturbé par la NMU. Une NMU n'est
2222  pas une attaque personnelle contre le responsable. C'est une preuve que le
2223  paquet est important pour quelqu'un et qu'il est désireux de vous aider dans
2224  votre travail, vous devriez donc lui être reconnaissant. Vous pouvez également
2225  lui demander s'il serait intéressé pour vous aider sur une base plus régulière
2226  comme co-responsable ou responsable de secours (cf. <ref
2227  id="collaborative-maint">).
2228
2229
2230     <sect id="porting">Le portage
2231 <p>
2232 Debian accepte un nombre croissant d'architectures. Même si vous n'êtes pas un
2233       porteur et même si vous n'utilisez qu'une architecture, il est de votre
2234       responsabilité de développeur d'être attentif aux questions de
2235       portabilité. C'est pourquoi il est important que vous lisiez ce chapitre
2236       même si vous n'êtes pas un porteur.
2237 <p>
2238 Porter un paquet consiste à faire un paquet binaire pour une architecture
2239       différente de celle du paquet binaire fait par le responsable du paquet.
2240       C'est une activité remarquable et essentielle. En fait, les porteurs sont
2241       à l'origine de la plupart des compilations de paquets Debian. Pour un
2242       paquet binaire <em>i386</em>, par exemple, il faut compter une
2243       recompilation pour chaque autre architecture, soit un total de
2244       &number-of-arches; recompilations.
2245
2246
2247       <sect1 id="kind-to-porters">Être gentil avec les porteurs
2248 <p>
2249 Les porteurs ont une tâche remarquable et difficile car ils doivent gérer un
2250  grand nombre de paquets. Idéalement, tout paquet source devrait compiler sans
2251  modification. Malheureusement, c'est rarement le cas. Cette section contient
2252  une liste d'erreurs commises régulièrement par les responsables Debian &mdash;
2253  problèmes courants qui bloquent souvent les porteurs et compliquent inutilement
2254  leur travail.
2255 <p>
2256 Ici, le mot d'ordre est de répondre rapidement aux rapports de bogues et
2257  remarques soulevées par les porteurs. Traitez-les courtoisement, comme s'ils
2258  étaient co-responsables de vos paquets (ce qu'ils sont d'une certaine manière).
2259  Merci pour votre indulgence envers des rapports de bogue succincts ou peu
2260  clairs&nbsp;; faites de votre mieux pour éliminer le problème.
2261 <p>
2262 Les problèmes les plus couramment rencontrés par les porteurs sont causés par
2263  des erreurs de mise en paquet dans le paquet source. Voici un
2264  pense-bête pour les choses auxquelles vous devez être attentif&nbsp;:
2265 <enumlist>
2266   <item>
2267         Vérifiez que les champs <tt>Build-Depends</tt> et
2268         <tt>Build-Depends-Indep</tt> du fichier <file>debian/control</file> sont
2269         corrects. Le meilleur moyen de le vérifier est d'utiliser le paquet
2270         <package>debootstrap</package> pour créer un environnement
2271         <em>unstable</em> <em>chrooté</em>. Dans cet environnement
2272         <em>chrooté</em> il faudra installer le paquet
2273         <package>build-essential</package> et tous les paquets mentionnés dans
2274         les champs <tt>Build-Depends</tt> et <tt>Build-Depends-Indep</tt>.
2275         Ensuite, vous essayerez de fabriquer votre paquet dans cet
2276         environnement. Ces étapes peuvent être automatisées en utilisant le
2277         programme <prgn>pbuilder</prgn> qui est fourni par le paquet de même
2278         nom.
2279         <p>
2280         Consultez la <url id="&url-debian-policy;" name="charte Debian"> pour en
2281         savoir plus sur les dépendances de fabrication.
2282   </item>
2283   <item>
2284         Ne choisissez pas d'autre valeur que <em>all</em> ou <em>any</em> pour
2285         le champ architecture sans avoir de bonnes raisons pour le faire. Trop
2286         souvent, les développeurs ne respectent pas les instructions de la <url
2287         id="&url-debian-policy;" name="charte Debian">. Choisir la valeur
2288         «&nbsp;i386&nbsp;» est la plupart du temps incorrect.
2289   </item>
2290   <item>
2291         Vérifiez que votre paquet source est bon. Faites <tt>dpkg-source -x
2292         <var>package</var>.dsc</tt> pour vous assurer que le paquet se
2293         décompresse correctement. En utilisant le résultat de ce test,
2294         construisez votre paquet binaire à l'aide de la commande
2295         <prgn>dpkg-buildpackage</prgn>.
2296   </item>
2297   <item>
2298         Vérifiez que les fichiers <file>debian/files</file> et
2299         <file>debian/substvars</file> ne sont pas dans votre paquet source. Ils
2300         doivent être effacés par la cible <em>clean</em> de
2301         <file>debian/rules</file>.
2302   </item>
2303   <item>
2304         Assurez-vous que vous ne vous appuyez pas sur des éléments de
2305         configuration ou des logiciels installés ou modifiés localement. Par
2306         exemple, vous ne devriez jamais appeler des programmes du répertoire
2307         <file>/usr/local/bin</file> ou de répertoires équivalents. Essayez de ne
2308         pas vous appuyer sur des logiciels configurés de manière spéciale.
2309         Essayez de construire votre paquet sur une autre machine, même s'il
2310         s'agit de la même architecture.
2311   </item>
2312   <item>
2313         Ne vous appuyez pas sur une installation préexistante de votre paquet
2314         (un sous-cas de la remarque précédente).
2315   </item>
2316   <item>
2317         Si possible, ne vous appuyez pas sur une particularité présente dans un
2318         compilateur précis ou dans une certaine version d'un compilateur. Si
2319         vous ne pouvez pas faire autrement, assurez-vous que les dépendances de
2320         fabrication reflètent bien cette restriction. Dans ce cas, vous cherchez
2321         sûrement les problèmes car quelques architectures pourraient choisir un
2322         compilateur différent.
2323   </item>
2324   <item>
2325         Vérifiez que votre <file>debian/rules</file> distingue les cibles
2326         <em>binary-arch</em> et <em>binary-indep</em> comme l'exige la charte
2327         Debian. Vérifiez que ces cibles sont indépendantes l'une de l'autre,
2328         c'est-à-dire, qu'il n'est pas nécessaire d'invoquer l'une de ces cibles
2329         avant d'invoquer l'autre. Pour vérifier cela, essayez d'exécuter
2330         <tt>dpkg-buildpackage -b</tt>.
2331   </item>
2332 </enumlist>
2333
2334
2335       <sect1 id="porter-guidelines">Instructions pour les mises à jour des
2336       porteurs
2337 <p>
2338 Si le paquet se construit tel quel sur l'architecture que vous visez, vous avez
2339  de la chance et votre travail est facile. Cette section s'applique dans ce
2340  cas&nbsp;; elle décrit comment construire et installer correctement votre
2341  paquet binaire dans l'archive Debian. Si vous devez modifier le paquet pour le
2342  rendre compilable sur votre architecture cible vous devez faire une mise à jour
2343  des sources, consultez la section <ref id="nmu-guidelines">.
2344 <p>
2345 Pour un envoi de portage, ne faites pas de changement dans les sources. Vous
2346  n'avez pas besoin de modifier les fichiers du paquet source (cela inclut le
2347  fichier <file>debian/changelog</file>).
2348 <p>
2349 La manière d'invoquer <prgn>dpkg-buildpackage</prgn> est la suivante&nbsp;:
2350  <tt>dpkg-buildpackage -B -m<var>adresse-porteur</var></tt>. Bien sûr, remplacez
2351  <var>adresse-porteur</var> par votre adresse électronique. Cette commande
2352  construira les parties du paquet qui dépendent de l'architecture, en utilisant
2353  la cible <em>binary-arch</em> de <file>debian/rules</file>.
2354
2355         <sect2 id="binary-only-nmu">
2356           Mises à jour indépendantes binaires ou recompilations
2357 <p>
2358 Parfois l'envoi du portage initial pose problème car l'environnement dans lequel
2359  le paquet a été construit n'était pas bon (bibliothèques plus à jour ou
2360  obsolètes, mauvais compilateur, etc.). Il se peut que vous ayez à le recompiler
2361  dans un environnement mis à jour. Cependant, dans ce cas, vous devez changer
2362  le numéro de version pour que les mauvais anciens paquets soient remplacés dans
2363  l'archive Debian (<prgn>katie</prgn> refuse d'installer de nouveaux paquets
2364  s'ils n'ont pas un numéro de version supérieur à celui actuellement
2365  disponible). Malgré les modifications nécessaires du changelog, ce type de mise
2366  à jour reste une mise à jour indépendante binaire &mdash; il n'est pas
2367  nécessaire de reconsidérer le statut des paquets binaires des autres
2368  architectures pour les marquer périmés ou à recompiler.
2369 <p>
2370 Ces recompilations nécessitent des numéros de version «&nbsp;magiques&nbsp;»
2371  pour que le système de maintenance de l'archive comprennent que, bien qu'il y
2372  ait une nouvelle version, il n'y a pas eu de modification des sources. Si vous
2373  ne faites pas cela correctement, les administrateurs de l'archive rejetteront
2374  votre mise à jour (car il n'y aura pas de code source associé).
2375 <p>
2376 Cette magie associée à une mise à jour par recompilation est déclenchée en
2377  utilisant un troisième nombre dans la partie debian du numéro de version. Si,
2378  par exemple, la dernière version du paquet que vous recompilez était
2379  «&nbsp;2.9-3&nbsp;», votre mise à jour portera le numéro
2380  «&nbsp;2.9-3.0.1&nbsp;». Si cette version était «&nbsp;3.4-2.1&nbsp;» votre
2381  mise à jour portera le numéro «&nbsp;3.4-2.1.1&nbsp;».
2382
2383
2384         <sect2 id="source-nmu-when-porter">
2385           Quand faire une mise à jour indépendante source pour un portage&nbsp;?
2386 <p>
2387 Les porteurs qui font des mises à jour indépendantes sources suivent
2388    généralement les instructions de la section <ref id="nmu"> tout comme les
2389    non-porteurs. Les délais d'attente sont cependant plus courts car les
2390    porteurs doivent manipuler un grand nombre de paquets. À nouveau, la
2391    situation diffère selon la distribution visée.
2392 <p>
2393 Si vous êtes porteur et faites une mise à jour pour <em>unstable</em>, les
2394    instructions précédentes sont applicables à deux différences près. Tout
2395    d'abord, le temps d'attente raisonnable &mdash; délai entre le moment où vous
2396    envoyez un rapport au système de suivi des bogues et le moment où vous pouvez
2397    faire une mise à jour indépendante <em>(NMU)</em> &mdash; est de sept jours.
2398    Ce délai peut être raccourci si le problème est crucial et met l'effort de
2399    portage en difficulté : c'est à la discrétion de l'équipe de portage.
2400    (Souvenez-vous, il ne s'agit pas d'un règlement, mais de recommandations
2401    communément acceptées)
2402 <p>
2403 Deuxième différence, les porteurs qui font des mises à jour indépendantes
2404    sources doivent choisir une gravité <em>sérieuse</em> (i.e. <em>serious</em>)
2405    ou supérieure quand ils envoient leur rapport au système de suivi des bogues.
2406    Ceci assure qu'un paquet source unique permet de produire un paquet binaire
2407    pour chaque architecture supportée au moment de la sortie de la distribution.
2408    Il est très important d'avoir un paquet source et un paquet binaire pour
2409    toutes les architectures pour être conforme à plusieurs licences.
2410 <p>
2411 Les porteurs doivent éviter d'implémenter des contournements pour des bogues de
2412    l'environnement de compilation, du noyau ou de la libc. Quelques fois, ces
2413    contournements sont inévitables. Si vous devez faire quelque chose de ce
2414    genre, marquez proprement vos modifications avec des <tt>#ifdef</tt> et
2415    documentez votre contournement pour que l'on sache le retirer une fois que le
2416    problème aura disparu.
2417 <p>
2418 Les porteurs peuvent aussi avoir une adresse où ils publient le résultat de leur
2419    travail pendant le délai d'attente. Ainsi, d'autres personnes peuvent
2420    bénéficier du travail du porteur même pendant ce délai. Bien sûr, ces
2421    adresses n'ont rien d'officiel, alors soyez sur vos gardes si vous les
2422    utilisez.
2423
2424
2425       <sect1 id="porter-automation">
2426           <heading>Infrastructure de portage et automatisation</heading>
2427           <p>
2428 Il existe une infrastructure et plusieurs outils pour faciliter l'automatisation
2429 du portage des paquets. Cette section contient un bref aperçu de cette
2430 automatisation et du portage de ces outils&nbsp;; veuillez vous reporter à la
2431 documentation des paquets ou les références pour une information complète.</p>
2432
2433           <sect2>
2434             <heading>Listes de diffusion et pages web</heading>
2435             <p>
2436 Les pages web contenant l'état de chaque portage peuvent être trouvées à <url
2437 id="&url-debian-ports;">.
2438             <p>
2439 Chaque portage de Debian possède sa propre liste de diffusion. La liste des
2440 listes de diffusion de portage peut être trouvée à <url
2441 id="&url-debian-port-lists;">. Ces listes sont utilisées pour coordonner les
2442 porteurs et pour mettre en relation les utilisateurs d'un portage donné avec les
2443 porteurs.</p>
2444           </sect2>
2445
2446       <sect2>
2447             <heading>Outils pour les porteurs</heading>
2448 <p>
2449 Les descriptions de plusieurs outils de portage peuvent être trouvés dans les
2450 <ref id="tools-porting">.</p>
2451
2452
2453         <sect2 id="buildd">
2454             <heading><package>buildd</package></heading>
2455 <p>
2456 Le système <package>buildd</package> est un système distribué pour la
2457    compilation d'une distribution. Il est habituellement utilisé en conjonction
2458    avec des automates de compilation&nbsp;; ce sont des machines
2459    «&nbsp;esclaves&nbsp;» qui récupèrent des paquets sources et tentent de les
2460    compiler. Il est aussi possible d'interagir par courrier électronique avec ce
2461    système. Cette interface est utilisée par les porteurs pour récupérer un
2462    paquet source (en général, un paquet qui ne peut être compilé
2463    automatiquement) et travailler dessus.
2464 <p>
2465 <package>buildd</package> n'est pas disponible sous forme de paquet&nbsp;;
2466    pourtant, la plupart des équipes de porteurs l'utilisent aujourd'hui ou ont
2467    prévu de l'utiliser bientôt. L'outil de construction automatisé réel est dans
2468    le paquet <package>sbuild</package>, voir la description dans <ref
2469    id="sbuild">. Le système <package>buildd</package> regroupe également un
2470    ensemble de composants très utiles, continuellement utilisés, mais non encore
2471    mis en paquet, tels que <prgn>andrea</prgn> et <prgn>wanna-build</prgn>.
2472 <p>
2473 Une partie des informations produites par <package>buildd</package> &mdash;
2474    utiles pour les porteurs &mdash; est disponible sur la toile à l'adresse <url
2475    id="&url-buildd;">. Ces informations incluent les résultats produits toutes
2476    les nuits par <prgn>andrea</prgn> (dépendances des sources) et
2477    <prgn>quinn-diff</prgn> (paquets à recompiler).
2478 <p>
2479 Nous sommes très fiers de ce système car il a de nombreux usages potentiels. Des
2480    groupes de développeurs indépendants peuvent utiliser ce système pour créer
2481    différentes saveurs de Debian &mdash; qui peuvent être ou ne pas être
2482    intéressantes pour tous (par exemple, une version de Debian compilée avec des
2483    vérifications relatives à <prgn>gcc</prgn>). Ce système nous permettra aussi
2484    de recompiler rapidement toute une distribution.
2485 </sect2>
2486
2487
2488     <sect id="collaborative-maint">
2489         Maintenance collaborative
2490 <p>
2491 «&nbsp;Maintenance collaborative&nbsp;» est un terme décrivant le partage des
2492  devoirs de la maintenance d'un paquet Debian par plusieurs personnes. Cette
2493  collaboration est presque toujours une bonne idée car il en résulte
2494  généralement une meilleure qualité et un temps de correction de bogues plus
2495  petit. Il est fortement recommandé que les paquets de priorité
2496  <tt>Standard</tt> ou qui font partie de la base aient des co-responsables.
2497 <p>
2498 Habituellement, il y a un responsable principal et un ou plusieurs
2499  co-responsables. Le responsable principal est celui dont le nom est indiqué
2500  dans le champ <tt>Maintainer</tt> du fichier <file>debian/control</file>. Les
2501  co-responsables sont tous les autres responsables.
2502 <p>
2503 Dans sa forme la plus simple, ajouter un nouveau co-responsable est assez
2504  simple&nbsp;:
2505 <list>
2506 <item><p> Donner au co-responsable un accès aux sources à partir desquelles vous
2507       construisez le paquet. Habituellement, cela implique que vous utilisiez un
2508       système de contrôle de version comme <prgn>CVS</prgn> ou
2509       <prgn>Subversion</prgn>.
2510 </item>
2511 <item><p> Ajouter les nom et adresse correctes du co-responsable au champ
2512       <tt>Uploaders</tt> dans la partie globale du fichier
2513       <file>debian/control</file>.
2514 <example>
2515 Uploaders: John Buzz &lt;jbuzz@debian.org&gt;, Adam Rex &lt;arex@debian.org&gt;
2516 </example>
2517 </item>
2518 <item><p>
2519       En utilisant le PTS (<ref id="pkg-tracking-system">), les
2520       co-responsables devraient s'inscrire eux-mêmes aux paquets sources
2521       appropriés.
2522 </item>
2523 </list>
2524
2525
2526     <sect id="archive-manip">
2527       <heading>Déplacer, effacer, changer de nom, adopter et abandonner des paquets
2528 <p>
2529 Certaines manipulations de l'archive ne sont pas accessibles avec le processus
2530       de mise à jour automatisé. Elles sont appliquées manuellement par les
2531       développeurs. Ce chapitre décrit ce qu'il faut faire dans ces situations.
2532
2533       <sect1 id="moving-pkgs">Déplacer des paquets
2534 <p>
2535 Parfois, un paquet pourra changer de section. Une nouvelle version d'un paquet
2536  de la section <tt>non-free</tt> pourrait, par exemple, être distribuée sous
2537  licence GNU GPL&nbsp;; dans ce cas, le paquet doit être déplacé dans la section
2538  <tt>main</tt> ou <tt>contrib</tt><footnote><p>Reportez-vous à la <url
2539  id="&url-debian-policy;" name="charte Debian"> pour savoir dans quelle section
2540  un paquet doit être classé.</footnote>.
2541 <p>
2542 Si vous avez besoin de modifier la section de l'un de vos paquets, modifiez les
2543  informations de contrôle du paquet pour le placer dans la section désirée et
2544  téléchargez à nouveau votre paquet dans l'archive. Reportez-vous à la <url
2545  id="&url-debian-policy;" name="charte Debian"> pour en savoir plus. Si votre
2546  nouvelle section est valide, il sera déplacé automatiquement. Si ce n'est pas
2547  le cas, contactez les ftpmasters pour comprendre ce qui s'est passé.
2548 <p>
2549 Si vous avez besoin de modifier la sous-section de l'un de vos paquets
2550  (<tt>devel</tt> ou <tt>admin</tt> par exemple), la procédure est légèrement
2551  différente. Modifiez la sous-section dans le fichier de contrôle de votre
2552  paquet et téléchargez-le. Il vous faudra ensuite demander la modification du
2553  fichier <em>override</em> comme décrit dans la section <ref
2554  id="override-file">.
2555
2556
2557       <sect1 id="removing-pkgs">Supprimer des paquets
2558 <p>
2559 Si, pour une raison ou une autre, vous avez besoin de supprimer un paquet de
2560  l'archive (disons qu'il s'agit d'une vieille bibliothèque devenue inutile, que
2561  l'on conservait pour des raisons de compatibilité), il vous faudra envoyer un
2562  rapport de bogue concernant le pseudo-paquet <tt>ftp.debian.org</tt> et
2563  demander sa suppression. N'oubliez pas de préciser de quelle distribution le
2564  paquet doit être supprimé. Normalement, vous ne devriez avoir à supprimer que
2565  des paquets de <em>unstable</em> ou de <em>experimental</em>. Les paquets de
2566  <em>testing</em> ne sont pas supprimés directement. Ils sont plutôt enlevés
2567  automatiquement après que le paquet a été supprimé de <em>unstable</em> et
2568  si aucun paquet de <em>testing</em> n'en dépend.
2569 <p>
2570 Vous devez également détailler les raisons justifiant cette demande. Ceci a pour
2571  but d'éviter les suppressions non désirées et de garder une trace de la raison
2572  pour laquelle un paquet a été supprimé. Par exemple, vous pouvez fournir le nom
2573  du paquet qui remplace celui à supprimer.
2574 <p>
2575 Vous ne pouvez demander la suppression d'un paquet que si vous en
2576  êtes le responsable. Si vous voulez supprimer un autre paquet, vous devez
2577  obtenir l'accord de son dernier responsable.
2578 <p>
2579 Si vous ne savez pas bien si un paquet peut être supprimé, demandez l'avis des
2580  autres développeurs sur la liste &email-debian-devel;. Le programme
2581  <prgn>apt-cache</prgn> du paquet <package>apt</package> pourra aussi vous être
2582  utile. La commande <tt>apt-cache showpkg <var>paquet</var> </tt> vous
2583  indiquera, entre autres, les paquets qui dépendent de <var>paquet</var>.
2584 <p>
2585 Une fois que le paquet a été supprimé, les bogues du paquet doivent être gérés.
2586  Soit ils sont réattribués à un autre paquet dans le cas où le code actuel a
2587  évolué en un autre paquet (par exemple, <tt>libfoo12</tt> a été supprimé parce
2588  que <tt>libfoo13</tt> le remplace) ou ils sont fermés si le logiciel ne fait
2589  simplement plus partie de Debian.
2590
2591         <sect2>Supprimer des paquets dans <tt>Incoming</tt>
2592 <p>
2593 Par le passé, il était possible de supprimer un paquet de <file>Incoming</file>.
2594    Cependant, ce n'est plus possible depuis la mise en place du nouveau système
2595    de file d'attente. Il vous faudra télécharger une nouvelle version de votre
2596    paquet avec un numéro de version postérieur à celui que vous voulez
2597    remplacer. Les deux versions seront installées dans l'archive mais seule la
2598    plus récente sera accessible dans <em>unstable</em> car la précédente sera
2599    immédiatement remplacée par la nouvelle. Toutefois, si vous testez
2600    correctement vos paquets, le besoin d'en remplacer un ne devrait pas être
2601    trop fréquent.
2602
2603       <sect1>Remplacer un paquet ou changer son nom
2604 <p>
2605 Il peut vous arriver de vous tromper en nommant un paquet et avoir besoin de 
2606  changer son nom. Dans ce cas, vous devrez intervenir en deux étapes. D'abord, modifiez
2607  votre fichier <file>debian/control</file> pour que votre nouveau paquet
2608  remplace et entre en conflit avec l'ancien paquet que vous voulez remplacer
2609  (Reportez-vous à la <url id="&url-debian-policy;" name="charte Debian"> pour
2610  les détails). Une fois que votre paquet est installé dans l'archive, faites un
2611  rapport de bogue concernant le pseudo-paquet <tt>ftp.debian.org</tt> et
2612  demandant la suppression du paquet mal nommé. N'oubliez pas de réattribuer
2613  correctement les bogues du paquet en même temps.
2614 <p>
2615 D'autres fois, vous pouvez commettre une erreur en construisant le paquet et
2616  désirez le remplacer. La seule façon de faire est d'incrémenter le numéro
2617  de version et d'envoyer une nouvelle version. L'ancienne version expirera de la
2618  façon habituelle. Notez que ceci s'applique à chaque partie de votre paquet, y
2619  compris les sources&nbsp;: si vous désirez remplacer l'archive source amont de
2620  votre paquet, vous devez l'envoyer avec un numéro de version différent. Une
2621  possibilité simple est de remplacer <file>foo_1.00.orig.tar.gz</file> par
2622  <file>foo_1.00+0.orig.tar.gz</file>. Cette restriction donne à chaque fichier
2623  du site ftp un nom unique ce qui garantit la consistance dans le réseau des
2624  miroirs.
2625
2626       <sect1 id="orphaning">Abandonner un paquet
2627 <p>
2628 Si vous ne pouvez plus maintenir un paquet, vous devez en informer les autres et
2629  faire le nécessaire pour qu'il soit marqué <em>abandonné</em> (i.e.
2630  <em>orphaned</em>). Vous devriez aussi remplacer votre nom par <tt>Debian QA
2631  Group &orphan-address;</tt> dans le champ <tt>maintainer</tt> du paquet et
2632  faire un rapport de bogue sur le pseudo-paquet <package>wnpp</package>. Le
2633  titre de votre rapport de bogue devrait être
2634  «&nbsp;<tt>O<footnote><p><em>Orphaned</em>&nbsp;: abandonné.</footnote>:
2635  <var>paquet</var> &mdash; <var>courte description</var></tt>&nbsp;» pour
2636  indiquer que le paquet est abandonné. La gravité du bogue sera
2637  <em>normale</em>. Si vous le jugez nécessaire, envoyez une copie à
2638  &email-debian-devel; en mettant cette adresse dans le champ X-Debbugs-CC: de
2639  l'en-tête du message. N'utilisez pas le champ CC: car de cette manière le sujet
2640  du message ne contiendra pas le numéro du bogue.
2641 <p>
2642 Si le paquet est particulièrement important pour la distribution, il vous faudra
2643  faire un rapport de bogue sur le pseudo-paquet <package>wnpp</package>,
2644  l'intituler «&nbsp;<tt>RFA<footnote><p><em>Request For Adoption</em>&nbsp;:
2645  offre d'adoption.</footnote>: <var>paquet</var> &mdash; <var>courte
2646  description</var></tt>&nbsp;» et lui affecter la gravité <em>importante</em>.
2647  Envoyez une copie de votre rapport de bogue à la liste debian-devel comme
2648  décrit ci-dessus.
2649 <p>
2650 Reportez-vous à la page WNPP<footnote><p><em>Work-needing and prospective
2651  packages</em>&nbsp;: paquets en souffrance et paquets souhaités.</footnote>
2652  <url id="&url-wnpp;"> pour en savoir plus.
2653
2654       <sect1 id="adopting">Adopter un paquet
2655 <p>
2656 Une liste des paquets en attente de nouveau responsable est disponible à la page
2657  <url id="&url-wnpp;" name="paquets en souffrance et paquets souhaités">. Si
2658  vous voulez prendre en charge un paquet de cette liste, reportez-vous à la page
2659  mentionnée ci-dessus pour connaître la procédure à suivre.
2660 <p>
2661 Prendre un paquet parce qu'il vous semble que celui-ci est négligé n'est pas
2662  correct &mdash; ce serait un détournement de paquet. Vous pouvez prendre
2663  contact avec le responsable actuel et lui demander si vous pouvez prendre en
2664  charge ce paquet. Vous ne pouvez le faire sans son accord. Qu'il vous ignore
2665  n'est pas une raison suffisante pour le faire. Si vous avez le sentiment qu'un
2666  responsable est parti sans prévenir depuis un moment, demandez-le sur la liste
2667  &email-debian-private;. Vous pouvez également informer le groupe QA (cf. <ref
2668  id="mia-qa">).
2669 <p>
2670 Si vous reprenez un vieux paquet, vous voudrez sûrement que le système de suivi
2671  des bogues indique que vous êtes le responsable du paquet. Cela se produira
2672  automatiquement une fois que vous aurez installé une nouvelle version du paquet
2673  dans l'archive avec le champ <tt>Maintainer</tt> à jour. Cela peut prendre
2674  quelques heures après le téléchargement. Si vous pensez ne pas avoir de mise à
2675  jour à faire pour un moment, vous pouvez utiliser <ref
2676  id="pkg-tracking-system"> pour recevoir les rapports de bogue. Cependant,
2677  assurez-vous que cela ne pose aucun problème à l'ancien responsable de
2678  continuer à recevoir les bogues durant ce temps.
2679
2680
2681     <sect id="bug-handling">Gérer les bogues
2682 <p>
2683 Vous trouverez souvent, en tant que responsable de paquet, des bogues dans
2684  d'autres paquets ou vous aurez des bogues rapportés sur vos paquets et qui
2685  doivent être réattribués. Les <url id="&url-bts-control;" name="instructions du
2686  BTS"> peuvent vous indiquer comment faire cela. Vous pouvez trouver plus
2687  d'informations sur la façon de faire des rapports de bogue dans <ref
2688  id="submit-bug">.
2689
2690       <sect1>Superviser les rapports de bogue
2691 <p>
2692 Si vous voulez être un bon responsable, consultez régulièrement la page du <url
2693  id="&url-bts;" name="système de suivi des bogues">. Cette page contient tous
2694  les rapports de bogue qui concernent vos paquets. Vous pouvez les vérifier avec
2695  cette page&nbsp;: <tt>http://&bugs-host;/<var>yourlogin</var>@debian.org</tt>.
2696 <p>
2697 Les responsables interagissent avec le système de suivi des bogues en utilisant
2698  l'adresse électronique <tt>&bugs-host;</tt>. Vous trouverez une documentation
2699  sur les commandes disponibles à l'adresse <url id="&url-bts;"> ou, si vous avez
2700  installé le paquet <package>doc-debian</package>, dans les fichiers locaux
2701  &file-bts-docs;.
2702 <p>
2703 Certains trouvent utile de recevoir régulièrement une synthèse des rapports de
2704  bogues ouverts. Si vous voulez recevoir une synthèse hebdomadaire relevant tous
2705  les rapports de bogue ouverts pour vos paquets, vous pouvez configurer
2706  <prgn>cron</prgn> comme suit&nbsp;:
2707 <example>
2708 # Synthèse hebdomadaire des rapports de bogue qui me concernent &cron-bug-report;
2709 </example>
2710 Remplacez <var>address</var> par votre adresse officielle de responsable Debian.
2711
2712       <sect1 id="bug-answering">Répondre à des rapports de bogue
2713 <p>
2714 Assurez-vous que toutes vos discussions concernant les bogues sont envoyées au
2715  rapporteur du bogue et au bogue lui-même (<email>123@bugs.debian.org</email>
2716  par exemple). Si vous rédigez un nouveau courrier et que vous ne vous souvenez
2717  plus de l'adresse du rapporteur de bogue, vous pouvez utiliser l'adresse
2718  <email>123-submitter@bugs.debian.org</email> pour contacter le rapporteur
2719  <em>et</em> enregistrer votre courrier dans le journal du bogue (ce qui veut
2720  dire que vous n'avez pas besoin d'envoyer une copie du courrier à
2721  <email>123@bugs.debian.org</email>).
2722 <p>
2723 Une fois que vous avez traité un rapport de bogue (i.e. que vous l'avez
2724  corrigé), marquez-le comme <em>done</em> (fermez-le) en envoyant un message
2725  d'explication à <email>123-done@bugs.debian.org</email>. Si vous corrigez un
2726  bogue en changeant et en envoyant une nouvelle versions du paquet, vous pouvez
2727  fermer le bogue automatiquement comme décrit dans <ref id="upload-bugfix">.
2728 <p>
2729 Vous ne devez <em>jamais</em> fermer un rapport de bogue en envoyant la commande
2730  <tt>close</tt> à l'adresse &email-bts-control;.Si vous le faites, le rapporteur
2731  n'aura aucune information sur la clôture de son rapport.
2732
2733       <sect1 id="bug-housekeeping">Gestion générale des bogues
2734 <p>
2735 En tant que responsable de paquet, vous trouverez fréquemment des bogues dans
2736  d'autres paquets ou vous aurez des bogues sur vos paquets qui sont en fait des
2737  bogues sur d'autres paquets. Les fonctions intéressantes du système de suivi
2738  des bogues pour les développeurs sont décrites dans la <url
2739  id="&url-bts-devel;" name="documentation du BTS pour les développeurs Debian">.
2740  Les <url id="&url-bts-control;" name="instructions du BTS"> documentent les
2741  opérations techniques du BTS, telles que comment remplir, réassigner, regrouper
2742  et marquer des bogues. Cette section contient des lignes directrices pour gérer
2743  vos propres bogues, définies à partir de l'expérience collective des
2744  développeurs Debian.
2745 <p>
2746 Remplir des rapports de bogue pour des problèmes que vous trouvez dans d'autres
2747  paquet est l'une des «&nbsp;obligations civiques&nbsp;» du responsable,
2748  reportez-vous à <ref id="submit-bug"> pour les détails. Cependant, gérer les
2749  bogues de vos propres paquets est encore plus important.
2750 <p>
2751 Voici une liste des étapes que vous pouvez suivre pour gérer un rapport de
2752  bogue&nbsp;:
2753 <enumlist>
2754   <item>
2755         Décider si le rapport correspond à un bogue réel ou non. Parfois, les
2756         utilisateurs exécutent simplement un programme de la mauvaise façon car
2757         ils n'ont pas lu la documentation. Si c'est votre diagnostic, fermez
2758         simplement le bogue avec assez d'informations pour laisser l'utilisateur
2759         corriger son problème (donnez des indications vers la bonne
2760         documentation et ainsi de suite). Si le rapport de bogue revient
2761         régulièrement, vous devriez vous demander si la documentation est assez
2762         bonne ou si le programme ne devrait pas détecter une mauvaise
2763         utilisation pour donner un message d'erreur informatif. Il s'agit d'un
2764         problème qui peut être présenté à l'auteur amont.
2765         <p>
2766         Si le rapporteur de bogue n'est pas d'accord avec votre décision de
2767         fermeture du bogue, il peut le ré-ouvrir jusqu'à ce que vous trouviez un
2768         accord sur la façon de le gérer. Si vous n'en trouvez pas, vous pouvez
2769         marquer le bogue avec <tt>wontfix</tt> pour indiquer aux personnes que
2770         le bogue existe, mais ne sera pas corrigé. Si cette situation n'est pas
2771         acceptable, vous (ou le rapporteur) pouvez vouloir demander une décision
2772         par le comité technique en réattribuant le bogue à
2773         <package>tech-ctte</package> (vous pouvez utiliser la commande
2774         <tt>clone</tt> du BTS si vous désirez garder le bogue comme rapporté sur
2775         votre paquet). Avant de faire cela, veuillez lire la <url
2776         id="&url-tech-ctte;" name="procédure recommandée">.
2777   </item>
2778   <item>
2779         Si le rapport de bogue est réel, mais est causé par un autre paquet,
2780         réattribuez simplement le bogue à l'autre paquet. Si vous ne savez pas à
2781         quel paquet il doit être réattribué, vous pouvez demander de l'aide sur
2782         &email-debian-devel; ou vous pouvez le réattribuer à
2783         <package>debian-policy</package> pour les laisser décider dans quel
2784         paquet est située l'erreur.
2785         <p>
2786         Parfois, vous devez également ajuster la gravité du bogue pour qu'elle
2787         corresponde à notre définition de gravité des bogues. C'est dû au
2788         fait que les gens tendent à augmenter la gravité des bogues pour
2789         s'assurer que leurs bogues seront corrigés rapidement. La gravité de
2790         certains bogues peut même être rétrogradée en <em>wishlist</em> (souhait)
2791         quand le changement demandé est seulement d'ordre cosmétique.
2792   </item>
2793   <item>
2794         Le rapporteur de bogue peut avoir oublié de fournir certaines
2795         informations. Dans ce cas, vous devez lui demander les informations
2796         nécessaires. Vous pouvez utiliser la marque <tt>moreinfo</tt> (plus
2797         d'info) sur le bogue. De plus, si vous ne pouvez pas reproduire le
2798         bogue, vous pouvez le marquer comme <tt>unreproducible</tt> (non
2799         reproductible). Une personne qui arriverait à reproduire le bogue est
2800         alors invitée à fournir plus d'informations sur la façon de le
2801         reproduire. Après quelques mois, si cette information n'a été envoyée
2802         par personne, le bogue peut être fermé.
2803   </item>
2804   <item>
2805         Si le bogue est lié à l'empaquètement, vous devez simplement le
2806         corriger. Si vous ne pouvez pas le corriger vous-même, marquez alors le
2807         bogue avec <tt>help</tt> (aide). Vous pouvez également demander de
2808         l'aide sur &email-debian-devel; ou &email-debian-qa;. S'il s'agit d'un
2809         problème amont, vous devez faire suivre le rapport à l'auteur amont.
2810         Faire suivre un bogue n'est pas suffisant, vous devez vérifier à chaque
2811         version si le bogue a été corrigé ou non. S'il a été corrigé, vous le
2812         fermez simplement, sinon vous devez le rappeler à l'auteur. Si vous avez
2813         les compétences nécessaires, vous pouvez préparer un correctif pour
2814         corriger le bogue et l'envoyer en même temps à l'auteur. Assurez-vous
2815         d'envoyer le correctif au BTS et marquez le bogue avec <tt>patch</tt>
2816         (correctif).
2817   </item>
2818   <item>
2819         Si vous avez corrigé un bogue sur votre copie locale ou si un correctif
2820         a été inclus dans le référentiel CVS, vous pouvez marquer le bogue avec
2821         <tt>pending</tt> (en attente) pour informer que le bogue est corrigé et
2822         qu'il sera fermé lors du prochain envoi (ajoutez le <tt>closes:</tt>
2823         dans le <file>changelog</file>). C'est particulièrement utile si
2824         plusieurs développeurs travaillent sur le même paquet.
2825   </item>
2826   <item>
2827         Une fois que le paquet corrigé est disponible dans la distribution
2828         <em>unstable</em>, vous pouvez fermer le bogue. Ceci peut être fait
2829         automatiquement, pour cela, reportez-vous à <ref id="upload-bugfix">.
2830   </item>
2831 </enumlist>
2832
2833       <sect1 id="bug-security">Gérer les bogues de sécurité
2834 <p>
2835 À cause de leur nature sensible, les bogues liés à la sécurité doivent être
2836  soigneusement traités. L'équipe de sécurité de Debian est là pour coordonner
2837  cette activité, pour faire le suivi des problèmes de sécurité en cours, pour
2838  aider les responsables ayant des problèmes de sécurité ou pour les corriger
2839  elle-même, pour envoyer les annonces de sécurité et pour maintenir le site
2840  security.debian.org.
2841
2842         <sect2 id="bug-security-you">Que faire si vous apprenez l'existence d'un
2843         problème de sécurité&nbsp;?
2844 <p>
2845 Si vous prenez connaissance d'un bogue lié à un problème de sécurité sur un
2846    paquet Debian, que vous soyez ou non le responsable, regroupez les
2847    informations pertinentes sur le problème et contactez rapidement l'équipe de
2848    sécurité à &email-security-team;. Les informations utiles incluent, par
2849    exemple&nbsp;:
2850
2851  <list compact>
2852       <item>
2853       les versions du paquet connues pour être affectées par le bogue. Vérifiez
2854       chaque version présente dans les distributions maintenues par Debian ainsi
2855       que dans <em>testing</em> et dans <em>unstable</em>,
2856       </item>
2857       <item>
2858       la nature d'une solution si elle est disponible (Les correctifs sont
2859       particulièrement utiles),
2860       </item>
2861       <item>
2862       tout paquet corrigé que vous avez vous-même préparé (envoyez seulement les
2863       fichiers <file>.diff.gz</file> et <file>.dsc</file>),
2864       </item>
2865       <item>
2866       toute information nécessaire pour l'annonce de sécurité (voir <ref
2867       id="bug-security-advisories">).
2868       </item>
2869   </list>
2870
2871         <sect2 id="bug-security-confidentiality">Confidentialité
2872 <p>
2873 À la différence de la plupart des autres activités au sein de Debian, les
2874    informations sur les problèmes de sécurité doivent parfois être gardées en
2875    privé pour un certain temps. Cette décision dépend de la nature du problème
2876    et de l'existence d'une solution correspondante et également s'il s'agit d'un
2877    fait connu publiquement.
2878 <p>
2879 Il existe plusieurs façons pour un développeur de prendre connaissance d'un
2880 problème de sécurité&nbsp;:
2881
2882 <list compact>
2883       <item>
2884       il le remarque sur un forum publique (liste de diffusion, site web, etc.),
2885       </item>
2886       <item>
2887       quelqu'un remplit un rapport de bogue,
2888       </item>
2889       <item>
2890       quelqu'un l'informe par courrier privé.
2891       </item>
2892 </list>
2893
2894 Dans les deux premiers cas, l'information est publique et il est important
2895 d'avoir une solution le plus vite possible. Dans le dernier cas, cependant, ce
2896 n'est peut-être pas une information publique. Dans ce cas, il existe quelques
2897 options possibles pour traiter le problème&nbsp;:
2898
2899 <list>
2900 <item>
2901       si le problème est trivial (comme des fichiers temporaires non sécurisés),
2902       il n'y a pas besoin de garder le secret sur le problème et une correction
2903       devrait être effectuée et diffusée,
2904 </item>
2905 <item>
2906       si le problème est grave (exploitable à distance, possibilité d'accéder
2907       aux privilèges d'administratation), il est préférable de partager cette
2908       information avec d'autres vendeurs et de coordonner une diffusion.
2909       L'équipe de sécurité garde des contacts avec les différentes organisations
2910       et individus et peut prendre soin des actions à mener.
2911 </item>
2912 </list>
2913
2914 <p>
2915 Dans tous les cas, si la personne qui indique le problème demande à ne pas
2916 diffuser l'information, cela devrait être respecté avec l'évidente exception
2917 d'informer l'équipe de sécurité (assurez-vous d'informer l'équipe de sécurité
2918 que l'information ne doit pas être révélée).
2919
2920 <p>Veuillez noter que si le secret est nécessaire, vous ne pourrez pas envoyer
2921 un correctif vers <em>unstable</em> (ou ailleurs) puisque les informations de
2922 changelog et de diff sont publiques pour <em>unstable</em>.
2923
2924 <p>Il existe deux raisons pour diffuser l'information même si le secret est
2925 demandé&nbsp;: le problème est connu depuis un certain temps ou le problème ou
2926 son exploitation est devenu public.
2927
2928         <sect2 id="bug-security-advisories">Annonces de sécurité
2929 <p>
2930 Les annonces de sécurité ne sont émises que pour la distribution actuelle
2931    diffusée <em>stable</em>, pas pour <em>testing</em> ou <em>unstable</em>.
2932    Quand elle est diffusée, l'annonce est envoyée à la liste de diffusion
2933    &email-debian-security-announce; et elle est postée sur <url
2934    id="&url-debian-security-advisories;" name="la page de sécurité">. Les
2935    annonces de sécurité sont écrites et postées par l'équipe de sécurité.
2936    Cependant, ils ne verront aucun inconvénient à ce qu'un responsable leur
2937    apporte des informations ou écrive une partie du texte. Les informations qui
2938    devraient être présentes dans une annonce incluent&nbsp;:
2939 <list compact>
2940 <item>
2941         une description du problème et de sa portée, y compris&nbsp;:
2942         <list>
2943         <item>
2944                 le type du problème (escalade de privilège, déni de service,
2945                 etc.),
2946         </item>
2947         <item>
2948                 comment il peut être exploité,
2949         </item>
2950         <item>
2951                 si le problème peut être exploité à distance ou localement,
2952         </item>
2953         <item>
2954                 comment le problème a été corrigé,
2955         </item>
2956         </list>
2957 </item>
2958 <item>
2959         les numéros de version des paquets affectés,
2960 </item>
2961 <item>
2962         les numéros de version des paquets corrigés,
2963 </item>
2964 <item>
2965         une information sur la façon de récupérer les paquets mis à jour,
2966 </item>
2967 <item>
2968         des références à des annonces amont, des identifiants <url
2969         id="http://cve.mitre.org" name="CVE"> et toute autre information utile
2970         pour recouper les références de la vulnérabilité.
2971 </item>
2972 </list>
2973
2974          <sect2 id="bug-security-building">
2975             <heading>Préparer les paquets pour corriger des problèmes de sécurité
2976 <p>
2977 Une façon d'assister l'équipe de sécurité dans ses travaux est de fournir des
2978   paquets corrigés convenables pour une annonce de sécurité pour la version
2979   <em>stable</em> de Debian
2980 <p>
2981 Quand une mise à jour de la version <em>stable</em> est effectuée, un soin
2982   particulier doit être apporté pour éviter de modifier le comportement du
2983   système ou d'introduire de nouveaux bogues. Pour cela, faites le moins de
2984   changements possibles pour corriger le bogue. Les utilisateurs et les
2985   administrateurs s'attendent à un comportement identique dans une version
2986   lorsque celle-ci est effectuée, donc tout changement qui est fait est
2987   susceptible de casser le système de quelqu'un. Ceci est spécialement vrai pour
2988   les bibliothèques&nbsp;: assurez-vous ne de jamais changer l'API ou l'ABI,
2989   quelque minimal que soit le changement.
2990 <p>
2991 Cela veut dire que passer à une version amont supérieure n'est pas une bonne
2992 solution. À la place, les changements pertinents devraient être rétro-portés
2993 vers la version présente dans la distribution <em>stable</em> de Debian.
2994 Habituellement, les développeurs amont veulent bien aider. Sinon, l'équipe de
2995 sécurité Debian peut le faire.
2996 <p>
2997 Dans certains cas, il n'est pas possible de rétro-porter un correctif de
2998 sécurité, par exemple, quand de grandes quantités de code source doivent être
2999 modifiées ou réécrites. Si cela se produit, il peut être nécessaire de passer à
3000 une nouvelle version amont. Cependant, vous devez toujours coordonner cela avec
3001 l'équipe de sécurité au préalable.
3002 <p>
3003 Il existe une autre règle de conduite liée à cela&nbsp;: testez toujours vos
3004 changements. Si une exploitation du problème existe, essayez-là et
3005 vérifiez qu'elle réussit sur le paquet non corrigé et échoue sur le paquet