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