Quelques traductions supplémentaires : devel/cvs_packages.wml devel/dmup.wml devel/incoming_mirrors.wml Merci d'avance pour les relectures. A+, Christian.
#use wml::debian::template title="Utiliser CVS avec les paquets Debian" #use wml::debian::translation-check translation="1.4" maintainer="Christian Couder" <p>Ce court document est seulement destiné à donner une petite aide à la conversion de paquets pour qu'ils puissent être gérés avec CVS. Cela n'intéressera probablement que les quelques personnes qui ne connaissent pas très bien CVS et la gestion des versions. Aussi, il y a un script dans <code>/usr/doc/cvs-buildpackage</code> appelé <code>cvs-pkginit</code> (à la fois le script et la page de manuel sont gzippées), qui affichera un synopsis de ce HOWTO. <p>Par exemple, pour convertir un paquer foo, version bar1, révision Debian 3, essayez : <pre> % cvs-pkginit foo bar1 3 </pre> et regardez le synopsis. <pre> Oldenburg, 6/2/97 Joey (joey@debian.org) / Martin Schulze / Mobile, Manoj Srivastava srivasta@debian.org </pre> <p>Note : dans la discussion suivante, les éléments entre les signes < et > doivent être remplacés suivant le contexte, tout le reste doit être pris litéralement. Par exemple, si vous parlez d'un paquet dont la version originale est 2.1.82, alors « <$version> » doit être remplacé par « 2.1.82 », et « upstream_version_<$version | tr . _> » par « upstream_version_2_1_82 ». <ol> <li>Configurer CVS <pre> $ CVSROOT=/où/va/se/trouver/votre/référentiel $ export CVSROOT $ cvs init $ mkdir $CVSROOT/debian </pre> <p>Ceci vous permet de séparer vos paquets Debian de tout le reste dans votre référentiel CVS. Même si vous pensez que vous n'aurez pas besoin de CVS pour autre chose, c'est plus facile de ranger les choses correctement tout de suite que de devoir le faire plus tard (car c'est compliqué de déplacer des choses dans un référentiel). <p>Si plusieurs personnes doivent utiliser CVS, vous devrez être sûr qu'elles peuvent modifier le référentiel avec CVS. Choisissez un groupe (ou un ensemble de groupes) qui pourra avoir accès à une partie du référentiel, et mettez les permissions : <pre> \# chgrp <archive> $CVSROOT/debian \# chmod g+ws $CVSROOT/debian </pre> <p>Cela garantit que les membres du groupe archive peuvent créer le référentiel. Maintenant vous devez faire en sorte que les bons groupes de personnes puissent modifier certaines parties du référentiel. <pre> \# mkdir $CVSROOT/debian/<paquet1> \# chgrp <group1> $CVSROOT/debian/<paquet1> \# chmod g+ws $CVSROOT/debian/<paquet1> \# mkdir $CVSROOT/debian/<paquet2> \# chgrp <group2> $CVSROOT/debian/<paquet2> \# chmod g+ws $CVSROOT/debian/<paquet2> </pre> <p>En tant qu'utilisateur normal vous devriez aussi rendre votre répertoire CVS public, soit en utilisant <kbd>« -d /où/va/se/trouver/votre/référentiel »</kbd> soit en mettant dans votre fichier profile du code comme celui-ci : <pre> $ CVSROOT=/où/va/se/trouver/votre/référentiel $ export CVSROOT </pre> <li>Utiliser les modules <pre> \# cvs checkout CVSROOT \# cd CVSROOT \# vi modules </pre> <p>Dans ce qui suit, <paquet> doit être le nom du paquet comme dans le fichier debian/changelog. <p>Ajoutez les lignes suivantes, la première étant essentielle, la seconde pouvant être dupliquée et s'expliquant toute seule : <pre> modules CVSROOT modules <paquet> debian/<paquet> </pre> <pre> \# cvs commit -m 'Definit les premiers modules' </pre> <li>Préparer l'utilisation de CVS <p>Ajoutez votre arborescence source avec les commandes suivantes (en supposant que vous l'avez déjà débianisée, et qu'il y a un fichier orig.tar.gz). Notez que les sources originales sont importées avec -ko (qui prend soin des fichiers binaires), mais pas les changements que nous faisons en local. Merci de noter que les numéros d'époque (nombre de secondes écoulées depuis 1970) sont ignorés lorsque l'on détermine le nom de la marque CVS (ils sont utilisés d'habitude pour changer l'ordre des paquets vu par dpkg, et ne sont généralement pas pertinent pour les marques CVS). <p>Mettez vous dans le répertoire dans lequel vous avez votre arborescence des sources debianisées de développement n'étant pas encore en CVS, que nous allons mettre sous CVS (pas dans CVSROOT, habituellement). <p>JE LE REPETE: Dans ce qui suit, <paquet> doit être le nom du paquet identique à celui qui se trouve dans le fichier debian/changelog. <pre> $ cd /où/se/trouve/votre/arborescence/des/sources $ tar zvfx <paquet>_<version>.orig.tar.gz $ cd <paquet>_<version>.orig $ cvs import -ko -m 'Import des sources' \ debian/<paquet> source-dist upstream_version_<version|tr . _> </pre> <p>Vous pouvez remplacer la marque de la branche source-dist par ce que vous voulez. (Le responsable de cvs-buildpackage utilise généralement la marque « upstream » (ce qui est un exemple de redondance ;-) ). <p>Si vous avez installé CVS en tant que root, et n'avez pas donné les droits d'écriture au groupe, vous devez créer $CVSROOT/debian/<paquet> en tant que root et modifier l'utilisateur et le groupe propriétaire dans le référentiel. L'import CVS affichera un warning disant qu'il ne peut pas créer le répertoire debian/<paquet>, mais ça ne pose pas de problèmes. <p>L'étape suivante est de récupérer l'ensemble de l'arborescence et d'y incorporer vos modifications. <pre> $ cd /où/va/se/trouver/votre/arborescence/des/sources $ cvs checkout <paquet> </pre> <p>Si vous avez déjà créé une version debianisée mais n'avez pas utilisé CVS avant cela, vous pouvez lancer les commandes suivantes pour incorporer vos modifications. Après cela, vous devriez mettre une marque sur cette version pour pouvoir la récupérer plus tard si nécessaire. <pre> $ cd /où/se/trouve/votre/arborescence/des/sources/<paquet>-<version> $ diff -qrBbw . /où/va/se/trouver/votre/arborescence/des/sources/<paquet>/ | grep -v CVS $ FICHIERS_MODIFIES_LOCALEMENT="<résultats de la commande ci-dessus>" $ tar cf - $FICHIERS_MODIFIES_LOCALEMENT | \ tar -C /où/va/se/trouver/votre/arborescence/des/sources/<paquet> -xvpf - $ cd /où/va/se/trouver/votre/arborescence/des/sources/<paquet> </pre> <p>Merci de vérifier que le fichier debian/rules est bien exécutable, car de cette façon il sera aussi exécutable une fois exporté, et il n'y aura pas de problèmes au lancement de dpkg-buildpackage sur les sources exportées. En général, vérifiez que *tous* les fichiers ont les bonnes permissions avant de les ajouter au référentiel CVS. <pre> $ cd /où/va/se/trouver/votre/arborescence/des/sources/<paquet> $ cvs add debian <tout autre fichier à ajouter> </pre> <p>Merci aussi de noter que vous devez ajouter à la main tout autre fichier qui doit se trouver dans le référentiel, en particulier tous les fichiers du sous-répertoire debian. Et merci aussi de noter que la commande cvs add ne fonctionne pas de façon récursive, vous devez donc ajouter à la main tout sous-répertoire que vous avez. (cd debian; cvs add *) <p>Une bonne chose à savoir est que la commande cvs update vous montrera le status de tous les fichiers du répertoire. <pre> $ cd /où/va/se/trouver/votre/arborescence/des/sources/<paquet> $ cvs update </pre> <p>Le résultat ressemble à ceci : <pre> cvs update: Updating . M Makefile cvs update: Updating debian A rules ? exemple1 </pre> M signifie modifié (doit être committé), A signifie ajouté (doit être committé), ? signifie que CVS ne connait pas ce fichié (doit peut-être être ajouté). Quand vous êtes satisfaits, que rien n'a été oublié, et que tous les fichiers ont les bonnes permissions, vous êtes paré à committer <pre> $ cd /où/va/se/trouver/votre/arborescence/des/sources/<paquet> $ cvs commit -m 'Modifications relatives à Debian' $ cvs tag debian_version_<version|tr . _>-<debian-revision|tr . _> . </pre> <p>La nouvelle arborescence des sources se trouvera dans un répertoire qui ne contient pas le numéro de version. Ce n'est pas un problème, comme nous le verrons plus tard. <p>Si au contraire vous créez le répertoire à partir de zéro (peut-être plus simple, bien que moins automatisé) <pre> $ mkdir debian </pre> <p>Créez tous les fichiers Debian nécessaires et ajoutez les dans l'outil de gestion des sources. <pre> $ cvs add debian $ cd debian $ cvs add * </pre> <p>Après cela, le prochain commit incluera tous vos fichiers. <pre> $ cd /où/va/se/trouver/votre/arborescence/des/sources/<paquet> $ cvs commit -m <un message> </pre> <li>Préparer une nouvelle version <p>Avant de lancer les commandes Debian qui construiront un paquet, vous devez récupérer le module sans les autres sous-répertoires CVS. Ceci est fait par la commande `export'. Mais tout d'abord vous devez enregistrer dans le référentiel CVS toutes vos modifications et y aposer une marque contenant le numéro de version. <pre> $ cvs commit -m <message> $ cvs tag debian_version_<version|tr . _>-<debian-revision|tr . _> </pre> <li>Faire une nouvelle version <p>Vous pouvez soit utiliser la mécanique de cvs-buildpackage (ce qui est solution recommandée), soit un export manuel. Tout d'abord testez cvs-buildpackage à blanc (soyez certain que les marques correspondent) comme ceci (vous devez avoir configuré /etc/cvsdeb.conf) : <pre> $ cvs-buildpackage -d -n -rsudo </pre> <p>Ensuite lancez le pour de bon, en supposant que sudo est un programme avec lequel vous pouvez avoir un accès root, avec : <pre> $ cvs-buildpackage -rsudo </pre> <p>Ou, pour faire tout à la main : <p>Récupérez le paquet. <pre> $ cvs export -d <paquet>-<version> \ -r debian_version_<version|tr . _>-<debian-revision|tr . _> \ <paquet> </pre> <p>Maintenant vous pouvez continuer avec le mécanisme d'export normal pour faire de nouvelles versions. <hr> <p>Vous avez fini ! Bravo ! Voici quelques actions que vous pouvez faire sur votre arborescence de sources : <hr> <li>Supprimer ou renommer un fichier <p>La façon normale de déplacer un fichier est de copier ANCIEN vers NOUVEAU, et ensuite de lancer les commandes CVS normales pour supprimer ANCIEN du référentiel, et d'y ajouter NOUVEAU. (A la fois ANCIEN et NOUVEAU peuvent contenir des chemins relatifs, par exemple `foo/bar.c'). <pre> $ mv ANCIEN NOUVEAU $ cvs remove ANCIEN $ cvs add NOUVEAU $ cvs commit -m "ANCIEN renommé en NOUVEAU" ANCIEN NOUVEAU </pre> <p>Ceci est la façon la plus simple de déplacer un fichier, elle n'est pas sujette à beaucoup d'erreurs, et elle préserve l'historique de ce qui a été fait. Notez que pour accéder à l'historique du fichier vous devez spécifier l'ancien ou le nouveau nom, suivant à quelle portion de l'historique vous voulez accéder. Par exemple, « cvs log ANCIEN » donne l'historique jusqu'au moment où le fichier a été renommé. <li>Mettre à jour un module avec la commande « import » <p>Quand une nouvelle version des sources est disponible, vous l'importez dans le référentiel avec la même commande « import » que vous utilisez pour installer le référentiel la première fois. La seule différence est que vous spécifiez une marque de version différente cette fois ci, et un message différent. <pre> $ cd /où/va/se/trouver/votre/arborescence/des/sources/<nouveau répertoire des sources> $ cvs import -m 'Import d'une nouvelle version' debian/<paquet> source-dist \ upstream_version_<version|tr . _> </pre> <p>Maintenant, nous devons incorporer dans la nouvelle version les modifications que nous avons faites. La meilleure façon de faire est de mettre de côté notre copie de travail (basée sur l'ancien code source original), et de récupérer une nouvelle copie du paquet *incorporant* les modifications faites dans les sources originales. Voici la façon de procéder : <pre> $ cd /où/va/se/trouver/votre/arborescence/des/sources $ mv <paquet> <paquet>.old $ cvs checkout -jsource-dist:yesterday -jsource-dist <paquet> $ cd /où/va/se/trouver/votre/arborescence/des/sources/<paquet> </pre> <p>La commande ci-dessus va récupérer la dernière révision du <paquet>, en fusionnant les modifications faites sur la branche originale « source-dist » depuis hier dans la copie de travail. Si un conflict se produit pendant la fusion, il doit être résolu de la façon normale. Ensuite les fichiers modifiés peuvent être committés. <p>L'utilisation d'une date, comme suggérée plus haut, suppose que vous n'importiez pas plus d'une version d'un produit par jour. Si c'est votre cas, vous pouvez toujours utiliser à la place quelque chose comme ceci : <pre> $ cvs checkout -jupstream_version_<oldversion|tr . _> \ -jupstream_version_<newversion|tr . _> <paquet> </pre> <p>Dans le cas courant, les deux commandes ci-dessus sont équivalentes. <p>Pour les fichiers qui n'ont pas été modifiés en local, la révision qui vient d'être créée devient la révision principale (« head »). <p>Donc, vérifiez bien que tous les fichiers ont été correctement mis à jour. En particulier, n'oubliez pas de modifier le fichier debian/changelog ! <p>Quand vous êtes satisfait, vous pouvez supprimer la veille version du répertoire de travail. Soyez bien certain que vous supprimez le bon répertoire ! <pre> $ rm -rf ../<paquet>.old </pre> <p>Maintenant vous êtes prêt à créer une nouvelle version. <li>Supprimer l'arborescence source pour préserver de l'espace disque <p>Pour supprimer l'arborescence des sources courante il vous est conseillé de ne pas utiliser rm -rf mais d'utiliser la commande CVS qui vérifie s'il y a des modifications en local qui n'ont pas été commitées. <pre> $ cd /où/se/trouve/votre/arborescence/des/sources $ cvs release -d <paquet> </pre> <li>Glossaire <pre> Marques noms symboliques pour les révisions ( <i>« tags »</i> ) Référentiel archive des fichiers sources ( <i>« repository »</i> ) </pre> <li>Appendice: <p>A: CONVENTIONS POUR LES MARQUES CVS <pre> |====================================================================================| | Version originale | <version> | | Révision Debian | <revision> | | Nom de fichier original | paquet_<version>.orig.tar.gz | | Nom de paquet Debian | paquet_<version>-<revision>_<arch>.deb | | Marque CVS originale | upstream_version_<version | tr . _> | | Marque CVS courante | debian_version_<revision | tr . _> | |====================================================================================| </pre> <p>Exemples : <pre> |===========================================================================| | | sources originales | paquet Debian | |===========================================================================| | Version originale | 2.76 | 3.38 | | Révision Debian | 1.2 | | | Nom de fichier original | make_2.76.orig.tar.gz | | | Nom de paquet Debian | make_2.76-1.2_i386.deb | kpkg_3.38_i386.deb | | Marque CVS originale | upstream_version_2_76 | upstream_version_3_38 | | Marque CVS courante | debian_version_2_76-1_2| debian_version_3_38 | |===========================================================================| </pre> <p>Notez que les numéros d'époque sont ignorés pour déterminer le nom de la marque CVS (ils sont généralement utilisés pour modifier l'avis de dpkg sur l'ordre des paquets, et ne sont généralement pas pertinents pour les marques CVS). </ol>#use wml::debian::template title="Règles d'usage des machines Debian" NOHEADER=yes #use wml::debian::translation-check translation="1.3" maintainer="Christian Couder"
En bref :
Ce document contient deux parties : les règles et les recommandations. Les règles à proprement parler vous engagent et ne doivent pas être violées. Les recommandations peuvent éventuellement être violées si nécessaire mais non préfèrerions qu'elles ne le soient pas.
Les connections en attente sont tuées après une heure; ceci est facilement contourné, mais merci de ne pas le faire sans une bonne raison.
Faire un mirroir par un quelconque moyen privé d'une partie quelconque des archives publiques est strictement interdit sans consentement préalable du miroir maître existant. Les développeurs sont libres d'utiliser n'importe quel forme d'accès publiquement disponible.
Les pages web commerciales ne sont pas permises.
Vous êtes responsable du contenu des pages web, y compris obtenir les permissions légales pour tout ce qu'elles contiennent et vous assurer que le contenu de ces pages ne viole pas les lois qui s'appliquent à l'endroit où se trouve le serveur.
Vous êtes responsable et acceptez la responsabilité de tout matériel diffamatoire, confidentiel, secret ou propriétaire disponible à travers les pages web.
Vous ne devez pas faire de la publicité pour vos pages web, ou pousser une autre personne à en faire, en utilisant des techniques qui seraient considérées comme des abus si elles étaient mises en oeuvre à partir d'un compte Debian. Ceci inclue, l'envoi massif de mail et le postage excessif sur des groupes de discussion. De telles actions pourront être traitées suivant la règle de la DMUP comme si elles avaient été commises à partir d'un compte, ou comme une violation de la DMUP, ou comme les deux à la fois.
Si un développeur devient injoignable pendant une période prolongée son compte, ses données et le transfert/filtrage/etc de son courrier seront peut-être désactivés jusqu'à ce qu'il réapparaisse.
N'utilisez pas les ressources Debian d'une façon qui constitue un abus du réseau. Debian n'a pas de serveur de nouvelles usenet. Il se peut que quelques machines Debian aient accès à de tels serveurs de nouvelles, mais leur utilisation à travers des machines Debian est strictement interdit.
Exemples de ce que nous considérons comme un abus du réseau :
Comme de nombreux utilisateurs d'Internet passent par une liaison téléphonique et paient le temps qu'ils passent en ligne, cela leur coûte de l'argent de recevoir du courrier. La réception de publicités non solicitées leur coûte donc de l'argent et est particulièrement malvenue.
Il devrait être noté qu'un utilisateur n'exprime pas un intérêt par le simple fait de poster un article dans un forum usenet, sauf si bien sûr il a fait une demande spécifique pour que des informations lui soient envoyées.
C'est aussi le cas lorsque l'on s'arrange pour que les réponses à un message soient envoyées à un autre utilisateur ou une autre machine.
Cependant, dans les deux cas, si la permission vous a été donnée par l'autre utilisateur ou par l'administrateur de l'autre machine, alors il n'y a pas de problème, et bien sûr des chemins de retour vers « null » peuvent être utilisés comme il est défini dans les RFC pertinentes.
A cause du temps qu'il faut pour télécharger le message, l'envoi d'un long message à des sites sans accord préalable peut être considéré comme un déni de service ou d'accès à la messagerie au site destinataire. Notez que si des attachements binaires sont ajoutés à un message, cela peut considérablement augmenter sa taille. Si aucun accord préalable ne le permet, un tel message sera extrèmement malvenu.
#use wml::debian::template title="Notes sur le répertoire Incoming" #use wml::debian::translation-check translation="1.10" maintainer="Christian Couder" <p>Incoming est le répertoire où les nouveaux paquets sont téléchargés avant d'être ajoutés à la distribution Debian. <p>Les paquets se trouvant dans Incoming ne sont absolument pas testés (excepté peut-être par le responsable du paquet) aussi il est possible qu'ils contiennent des erreurs de mise en paquets ou des bogues dans les exécutables qui rendent votre machine inutilisable. De plus, les fichiers de ce répertoire <em>n'ont pas</em> été vérifiés avec md5sum ou pgp pour s'assurer de leur intégrité ou que c'est bien un développeur Debian répertorié qui les a téléchargé. Vous pouvez, cependant, récupérer le paquet <tt>devscripts</tt> et utiliser le script <em>dscverify</em> pour vérifier la validité de base d'un paquet. <p>Nous recommendons de ne pas faire de miroir d'Incoming. Pour accéder au répertoire Incoming, utilisez <a href="http://incoming.debian.org/">http://incoming.debian.org/</a> <p>Vous avez été prévenus.