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