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