[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[RFR] wml://ports/hurd/hurd-devel-debian.wml



Salut,

Toujours pas de repos pour le Hurd, quelques ajouts sur la page de
développement, par avance merci pour vos relectures.

Amicalement

David

Index: ports/hurd/hurd-devel-debian.wml
===================================================================
RCS file: /cvs/webwml/webwml/french/ports/hurd/hurd-devel-debian.wml,v
retrieving revision 1.23
diff -u -r1.23 hurd-devel-debian.wml
--- ports/hurd/hurd-devel-debian.wml	29 Jul 2011 04:54:57 -0000	1.23
+++ ports/hurd/hurd-devel-debian.wml	31 Aug 2011 02:50:28 -0000
@@ -1,6 +1,6 @@
 #use wml::debian::template title="Debian GNU/Hurd – Développement" NOHEADER="yes"
 #include "$(ENGLISHDIR)/ports/hurd/menu.inc"
-#use wml::debian::translation-check translation="1.43" maintainer="David Prévot"
+#use wml::debian::translation-check translation="1.46" maintainer="David Prévot"
 
 # Translators:
 # Mohammed Adnène Trojette 2005-2007.
@@ -41,8 +41,8 @@
 <p>
 La construction du paquet se fait dans le nouveau répertoire
 d'empaquetage Debian <code>package-version</code> avec
-la commande <code>dpkg-buildpackage -B -rsudo "-mMonNom
-&lt;MonCourrierÃ?lectronique&gt;"</code>. Vous pouvez utiliser
+la commande <code>dpkg-buildpackage -B -rsudo "-mMonNom &lt;MonCourrierÃ?lectronique&gt;"</code>.
+Vous pouvez utiliser
 <code>-b</code> au lieu de <code>-B</code> si vous voulez aussi compiler
 les parties indépendantes de l'architecture du paquet. Vous pouvez
 utiliser <code>-rfakeroot</code> au lieu de <code>-rsudo</code> si vous
@@ -60,7 +60,9 @@
 qui sont visibles sur le graphique de dépendance des paquets
 <url "http://people.debian.org/~sthibault/graph-radial.pdf";>
 mis à jour quotidiennement ou sur la liste des paquets les plus demandés
-<url "http://people.debian.org/~sthibault/graph-total-top.txt";>,
+<url "http://people.debian.org/~sthibault/graph-total-top.txt";> (c'est
+la liste des demandes à long terme, la liste des demandes à court
+terme est <url "http://people.debian.org/~sthibault/graph-top.txt";>),
 mais vous pouvez aussi en prendre un au hasard
 parmi les paquets manquants, surveiller les journaux
 des processus d'empaquetage automatique sur la liste de diffusion
@@ -141,7 +143,7 @@
 
 <ul>
   <li>
-    <code>Dépendance de libc6 cassée</code>
+    <code>Broken libc6 dependency</code>
     <p>
       Certains paquets dépendent par erreur de <code>libc6-dev</code>.
 
@@ -159,12 +161,31 @@
       et de mettre « en dur » (« hardcode ») le soname, ou mieux,
       utiliser un OU logique.
 
-      Par exemple : <code>libc6-dev | libc6.1-dev |
-      libc0.3-dev | libc0.1-dev | libc-dev</code>.
+      Par exemple : 
+<code>libc6-dev | libc6.1-dev | libc0.3-dev | libc0.1-dev | libc-dev</code>.
 
       <code>libc-dev</code> est un paquet virtuel qui
       fonctionne pour n'importe quel soname, mais il
       ne faut le placer qu'en dernière option.
     </p>
   </li>
+
+<li>
+<code>undefined reference to snd_*, SND_* undeclared</code>
+<p>
+Certains paquets utilisent ALSA même sur les architectures non Linux.
+
+Le paquet oss-libsalsa fournit quelques émulations sur OSS, mais
+il est limité au 1.0.5, et certaines fonctionnalités ne sont pas
+fournies, comme par exemple toutes les opérations de séquenceur.
+</p>
+<p>
+Si le paquet le permet, la prise en charge d'ALSA devrait être
+désactivée pour les architectures <code>!linux-any</code> (par exemple
+à l'aide d'une option de <code>configure</code>), un qualificatif
+<code>[linux-any]</code> ajouté au <code>Build-Depends</code> d'alsa,
+et l'inverse ajouté à <code>Build-Conflicts</code>, comme par exemple
+<code>Build-Conflicts: libasound2-dev [!linux-any]</code>.
+</p>
+</li>
 </ul>
#use wml::debian::template title="Debian GNU/Hurd&nbsp;&ndash;&nbsp;Développement" NOHEADER="yes"
#include "$(ENGLISHDIR)/ports/hurd/menu.inc"
#use wml::debian::translation-check translation="1.46" maintainer="David Prévot"

# Translators:
# Mohammed Adnène Trojette 2005-2007.
# David Prévot, 2010, 2011.

<h1>
Debian&nbsp;GNU/Hurd</h1>
<h2>
Développement de la distribution</h2>
<h3>
Disques d'amorçage</h3>
<p>
Actuellement, nous ne travaillons pas sur des disques d'amorçages
natifs. Nous nous reposons toutefois sur certaines des bases nécessaires
à cela, et portons parfois individuellement des paquets nécessaires à
cet effet. Si vous voulez aider, travaillez sur le projet d'installateur
Debian et assurez-vous que ses composants fonctionnent sur le Hurd.</p>

<h3>
Porter des paquets Debian</h3>
<p>
Si vous souhaitez le portage Debian&nbsp;GNU/Hurd, vous devriez
vous familiariser avec le système d'empaquetage de Debian. Une fois
que vous l'aurez fait en lisant la documentation disponible et en
visitant le <a href="$(HOME)/devel/">Coin du développeur</a>, vous devriez
savoir comment extraire les paquets source Debian et empaqueter
un paquet Debian. Voici un cours intensif pour les personnes très
paresseuses&nbsp;:</p>

<h3>
Obtenir le source et empaqueter des paquets</h3>
<p>
Extraire un paquet source Debian requiert le fichier
<code>package_version.dsc</code> et les fichiers qui y sont listés.
Vous créez le répertoire d'empaquetage Debian avec la commande
<code>dpkg-source -x package_version.dsc</code>.</p>

<p>
La construction du paquet se fait dans le nouveau répertoire
d'empaquetage Debian <code>package-version</code> avec
la commande <code>dpkg-buildpackage -B -rsudo "-mMonNom &lt;MonCourrierÃ?lectronique&gt;"</code>.
Vous pouvez utiliser
<code>-b</code> au lieu de <code>-B</code> si vous voulez aussi compiler
les parties indépendantes de l'architecture du paquet. Vous pouvez
utiliser <code>-rfakeroot</code> au lieu de <code>-rsudo</code> si vous
utilisez le paquet fakeroot. Vous pouvez le faire sans <code>-r</code>
si vous empaquetez en tant que superutilisateur. Vous pouvez ajouter
<code>-uc</code> pour éviter de signer le paquet avec votre clé pgp.</p>

<h3>
Choisissez un paquet</h3>
<p>
Sur quels paquets faut-il travailler ? � vrai dire,
tous les paquets qui ne sont pas encore portés, mais qui en ont besoin.
Cela change constamment, alors il est conseillé de se focaliser
d'abord sur les paquets ayant beaucoup de dépendances inverses,
qui sont visibles sur le graphique de dépendance des paquets
<url "http://people.debian.org/~sthibault/graph-radial.pdf";>
mis à jour quotidiennement ou sur la liste des paquets les plus demandés
<url "http://people.debian.org/~sthibault/graph-total-top.txt";> (c'est
la liste des demandes à long terme, la liste des demandes à court
terme est <url "http://people.debian.org/~sthibault/graph-top.txt";>),
mais vous pouvez aussi en prendre un au hasard
parmi les paquets manquants, surveiller les journaux
des processus d'empaquetage automatique sur la liste de diffusion
debian-hurd ou utiliser la liste de wanna-build en
<url "http://people.debian.org/~sthibault/failed_packages.txt.gz";>.
</p>

<p>
Vérifiez également si le travail a déjà été fait sur
<url "https://alioth.debian.org/tracker/?atid=410472&amp;group_id=30628&amp;func=browse";>,
<url "https://alioth.debian.org/tracker/?atid=411594&amp;group_id=30628&amp;func=browse";>,
et sur le BTS.
</p> 

<h4>
Paquets qui ne seront pas portés</h4>
<p>
Quelques paquets parmi ceux qui suivent, ou des parties de ces paquets,
seront peut-être portables plus tard, mais ils sont actuellement
considérés comme non portables au moins.</p>

<ul>
<li>
<code>base/update</code>, parce que le Hurd n'a pas besoin d'un démon
de mise à jour (les systèmes de fichiers se synchronisent eux-mêmes).
Pour changer l'intervalle de synchronisation, vous pouvez utiliser
<code>fsysopts</code> pour ajuster l'option <code>--sync</code>. Vous
pouvez choisir des intervalles de synchronisation différents pour chaque
système de fichiers&nbsp;!
Pour le faire vous-même, utilisez l'utilitaire <a
href="hurd-doc-utils#syncfs"><code>syncfs</code></a>.</li>
<li>
<code>base/makedev</code>, parce que le Hurd apporte ses propres versions
de ce script. Le paquet source Debian ne contient qu'une version
spécifique à Linux.</li>
<li>
<code>base/ld.so</code>, parce que le Hurd utilise l'éditeur de liens
qui est fourni par la bibliothèque GNU&nbsp;C.</li>
<li>
<code>base/modconf</code> et <code>base/modutils</code>, parce que
les modules sont un concept spécifique à Linux.</li>
<li>
<code>base/netbase</code>, parce que le reste qui s'y trouve
est hautement spécifique au noyau Linux. Le Hurd utilise
<code>inetutils</code> à la place.</li>
<li>
<code>base/pcmcia-cs</code>, parce que le Hurd ne gère pas le PCMCIA
(et même s'il le faisait, ce paquet est probablement spécifique à
Linux).</li>
<li>
<code>base/procps</code>, parce que ce code est spécifique au système de
fichiers «&nbsp;proc&nbsp;» de Linux.</li>
<li>
<code>base/ppp</code> et <code>base/pppconfig</code>, parce que le Hurd
ne gère pas le PPP (et même s'il le faisait, ce paquet est probablement
spécifique à Linux).</li>
<li>
<code>base/setserial</code>, parce que c'est spécifique au noyau Linux.
Cependant, avec le portage des pilotes de caractères Linux sur GNU Mach,
nous pourrons peut-être les utiliser.</li>
</ul>

<h3><a name="porting_issues">
Problèmes généraux de portage</a></h3>

<p>
  Une <a href=http://www.gnu.org/software/hurd/hurd/porting/guidelines.html>liste
  des problèmes courants</a> est disponible sur le site amont.

  Les problèmes courants suivants sont spécifiques à Debian.
</p>

<p>
Avant d'essayer de corriger quoi que ce soit, vérifiez si le
portage kfreebsd* n'a pas déjà préparé des correctifs, qui
demandent juste à être adaptés pour convenir aussi à hurd-i386.
</p>

<ul>
  <li>
    <code>Broken libc6 dependency</code>
    <p>
      Certains paquets dépendent par erreur de <code>libc6-dev</code>.

      C'est inexact parce que <code>libc6</code> est
      spécifique à certaines architectures GNU/Linux.

      Le paquet GNU correspondant est <code>libc0.3-dev</code>, mais
      les autres systèmes d'exploitation en utilisent de différents.

      Le problème est situé dans le fichier
      <code>debian/control</code> de l'arborescence source.

      Parmi les solutions typiques, il est possible de détecter
      le système d'exploitation avec <code>dpkg-architecture</code>
      et de mettre « en dur » (« hardcode ») le soname, ou mieux,
      utiliser un OU logique.

      Par exemple : 
<code>libc6-dev | libc6.1-dev | libc0.3-dev | libc0.1-dev | libc-dev</code>.

      <code>libc-dev</code> est un paquet virtuel qui
      fonctionne pour n'importe quel soname, mais il
      ne faut le placer qu'en dernière option.
    </p>
  </li>

<li>
<code>undefined reference to snd_*, SND_* undeclared</code>
<p>
Certains paquets utilisent ALSA même sur les architectures non Linux.

Le paquet oss-libsalsa fournit quelques émulations sur OSS, mais
il est limité au 1.0.5, et certaines fonctionnalités ne sont pas
fournies, comme par exemple toutes les opérations de séquenceur.
</p>
<p>
Si le paquet le permet, la prise en charge d'ALSA devrait être
désactivée pour les architectures <code>!linux-any</code> (par exemple
à l'aide d'une option de <code>configure</code>), un qualificatif
<code>[linux-any]</code> ajouté au <code>Build-Depends</code> d'alsa,
et l'inverse ajouté à <code>Build-Conflicts</code>, comme par exemple
<code>Build-Conflicts: libasound2-dev [!linux-any]</code>.
</p>
</li>
</ul>

Attachment: signature.asc
Description: OpenPGP digital signature


Reply to: