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

[DDR] wml://devel/debian-intaller/gtk-frontend.wml



le dernier du répertoire etle plus gros !
-- 
#use wml::debian::template title="Frontal Gtk de l'installateur Debian" NOHEADER="true"
#use wml::debian::translation-check translation="1.5" maintainer="Nicolas Bertolissio"


<h1>Page d'état pour le frontal Gtk de l'installateur Debian</h1>


<h3>Brèves</h3>

<ul>
  <li><b>19&nbsp;juin&nbsp;2003</b>&nbsp;:
      Enfin une nouvelle mise à jour, malheureusement il ne s'est pas passé
      grand chose ces deux derniers mois. Au moins, tous les micro-paquets ont
      été téléchargés et semblent fonctionner. Merci à tous les responsables
      impliqués. Vikram Singh a écrit un <a
      href="http://www.mmweg.rwth-aachen.de/~sebastian.ley/d-i/partitioner/partition.png";>\
      outil de partitionnement graphique</a> qui pourrait être utile si nous
      trouvons une manière d'intégrer de tels éléments visuels dans la
      conception de cdebconf&nbsp;</li>

  <li><b>28&nbsp;mars&nbsp;2003</p>&nbsp;:
      Une nouvelle version de libgtk-directfb est disponible, elle n'entre plus
      en conflit avec libgtk, elle devrait donc être prête et a besoin d'être
      testée. Une première construction de cdebconf et du frontal Gtk a
      réussi&nbsp;;</li>

  <li><b>25&nbsp;mars&nbsp;2003</b>&nbsp;:
      Un travail important a été réalisé sur le frontal lui-même. Il est
      désormais capable d'afficher un nombre quelconque de questions d'un coup,
      supporte les sauvegardes et peut afficher des barres de progression. <a
      href="http://www.mmweg.rwth-aachen.de/~sebastian.ley/d-i/screenshots/";>\
      Voir les captures d'écran ici</a>&nbsp;;</li>

  <li><b>17&nbsp;mars&nbsp;2003</b>&nbsp;:
      Le problème avec pthread a été résolu par une nouvelle version de libc
      qui contient désormais la bibliothèque&nbsp;;</li>

  <li><b>12&nbsp;mars&nbsp;2003</b>&nbsp;:
      Une nouvelle version de gtk+-directfb a été ajoutée, elle est basée sur
      le travail d'Alastair McKinstry. Une nouvelle version de libdirectfb a
      aussi été ajoutée, elle incorpore certaines idées de Thomas Viehmann et
      comprend une rustine qui corrige une erreur de segmentation lors de
      l'appel de libdirectfb par le frontal Gtk. Les commentaires sont
      bienvenus&nbsp;;</li>

  <li><b>11&nbsp;mars&nbsp;2003</b>&nbsp;:
      Nous progressons&nbsp;: voici la première <a
      href="http://www.mmweg.rwth-aachen.de/~sebastian.ley/d-i/screenshots/gtk-frontend.old.png";>\
      capture d'écran</a>&nbsp;;</li>

  <li><b>7&nbsp;mars&nbsp;2003</b>&nbsp;:
      Une nouvelle version de libfontconfig est disponible sont forme de
      micro-paquet, veuillez envoyer vos rustines au système de gestion des
      bogues&nbsp;;</li>

  <li><b>7&nbsp;mars&nbsp;2003</b>&nbsp;:
      Libdirectfb a été légèrement modifiée, une rustine a été fournie au
      responsable&nbsp;;</li>

  <li><b>7&nbsp;mars&nbsp;2003</b>&nbsp;:
      Akira Tagoh a téléchargé atk, glib et pango&nbsp;; freetype a aussi été
      téléchargée&nbsp;;</li>

  <li><b>6&nbsp;mars&nbsp;2003</b>&nbsp;:
      Les règles des micro-paquets de développement ont été modifiées&nbsp;:
      les bibliothèques devraient être installées dans /usr/lib/udeblib au lieu
      d'un sous-répertoire dépendant du nom de la bibliothèque&nbsp;;</li>

  <li><b>5&nbsp;mars&nbsp;2003</b>&nbsp;:
      Les micro-paquets de libexpat et libfontconfig sont fait&nbsp;;</li>

  <li><b>4&nbsp;mars&nbsp;2003</b>&nbsp;:
      Pango utilise désormais libfontconfig comme dorsal freetype. Il faut donc
      l'empaqueter aussi, et comme il utilise libexpat, cela fait un autre
      candidat... Les volontaires sont bienvenus&nbsp;;</li>

  <li><b>4&nbsp;mars&nbsp;2003</b>&nbsp;:
      La section sur les contraintes d'espace a été ajoutée&nbsp;;</li>

  <li><b>4&nbsp;mars&nbsp;2003</b>&nbsp;:
      Les micro-paquets de zlib et libpng ont été mis à jour, des rustines ont
      été envoyées au système de gestion des bogues&nbsp;;</li>

  <li><b>3&nbsp;mars&nbsp;2003</b>&nbsp;:
      Un lien vers les micro-paquets de pango d'Akiras a été
      ajouté&nbsp;;</li>

  <li><b>3&nbsp;mars&nbsp;2003</b>&nbsp;:
      Les recommandations pour l'empaquetage des micro-paquets de bibliothèque
      ont été mises à jour, vous pouvez les trouver en bas de cette page.
      Elles ont été envoyées à debian-boot pour critique, tout commentaire sera
      grandement apprécié&nbsp;;</li>

  <li><b>3&nbsp;mars&nbsp;2003</b>&nbsp;:
      Un rapport de bogue a été rempli contre libc-udeb (n°&nbsp;183155), car
      pthread est nécessaire. Les responsables de glib n'étaient par très
      heureux, nous devons examiner si la gestion des processus légers est
      vraiment nécessaire&nbsp;;</li>

  <li><b>2&nbsp;mars&nbsp;2003</b>&nbsp;:
      La documentation concernant ce qui est important pour l'empaquetage de
      micro-paquets de bibliothèque a débuté. Elle sera postée sur debian-boot
      pour critique.</p>


<h3>Vue d'ensemble</h3>

<p>L'installateur Debian est en cours de réécriture avec l'objectif d'être
modulaire et plus flexible que le système actuel des disquettes de démarrage.
Pour les problèmes généraux veuillez vous référer à la <a href="index">page
d'accueil de l'installateur Debian</a>. Cette page est dédiée au frontal Gtk du
nouvel installateur. Si vous souhaitez participer, c'est un bon endroit pour
commencer. Veuillez vous assurer d'avoir lu la documentation du cvs de
l'installateur Debian.</p>

<p>Si vous avez quoi que ce soit à ajouter ou souhaitez suggérer des
corrections, écrivez-moi (en anglais)&nbsp;: <email
"sebastian.ley@mmweg.rwth-aachen.de">.</p>


<h2>Ce qui est à faire</h3>

<ul>
  <li>Créer un frontal pour cdebconf, utilisant Gtk.  Michael Cardenas a
  commencé, il est disponible dans le cvs de l'installateur Debian&nbsp;;</li>
  <li>Créer des modules pour l'installateur (des micro-paquets) fournissant une
  bibliothèque Gtk qui fonctionne directement avec le tampon vidéo ainsi que
  les bibliothèques dont dépend Gtk. Veuillez vous référer à l'état des paquets
  individuels ci-dessous&nbsp;;</li>
  <li>Le noyau de l'installateur doit fournir la gestion du tampon
  vidéo&nbsp;;</li>
  <li>Imaginer un concept pour l'intégration du frontal Gtk&nbsp;;</li>
  <li>Détailler les instructions pour tester le frontal Gtk&nbsp;;</li>
  <li>Trouver une manière d'intégrer des éléments visuels plus spécialisés dans
  le modèle actuel&nbsp;;</li>
  <li>Autre chose&nbsp;?</li>
</ul>


<h3>Comment participer</h3>

<p>Si vous souhaitez aider au frontal Gtk, veuillez vous assurer d'avoir lu la
documentation qui se trouve sur le cvs de l'installateur. Jetez un oeil à la
liste des micro-paquets ci-dessous et examinez-les. La plupart d'entre eux ne
satisfont pas aux spécifications, recherchez les erreurs et proposez des
rustines. L'empaquetage de bibliothèques dans des micro-paquets entraîne
quelques complications. Vous pouvez trouvez des astuces à la fin de ce
document. Si vous découvrez des erreurs dedans, veuillez m'envoyer un message
(en anglais). Les discussions ont lieu sur la liste de diffusion
debian-boot.</p>


<h3>Question de taille</h3>

<p>En aucune façon tous les fichiers nécessaires à l'installateur graphique ne
rentreront dans un disque de 1,44&nbsp;Mo, et pas plus dans un de 2,88&nbsp;Mo,
qui est la limite supérieure pour le standard ElTorito lors du démarrage à
partir d'un CD.</p>

<p>En conséquence, les micro-paquets doivent être chargés dans un disque
virtuel à partir du réseau ou d'un dépôt sur un CD. La taille d'un disque
virtuel est bien sûr limitée et ce serait bien si l'installateur graphique
pouvait fonctionner également avec un petit disque virtuel. Aussi une des
principales priorités est de garder les choses petites, de supprimer ce qui
n'est pas nécessaire et d'éliminer les dépendances inutiles lorsque c'est
possible.</p>


<h3>États des micro-paquets</h3>

<p>La couleur des états a la signification suivante&nbsp;:</p>

<ul>
<li><b>rouge</b>&nbsp;: le paquet a besoin de travail pour fonctionner avec
    l'installateur Debian ou pour fonctionner tout court&nbsp;;</li>
<li><b>jaune</b>&nbsp;: le paquet devrait être prêt, il a besoin d'être testé
    et téléchargé&nbsp;;</li>
<li><b>vert</b>&nbsp;:  le paquet a été testé et fonctionne comme prévu,
    peut-être a-t-il besoin de quelques modification esthétiques, mais il
    fournit les bonnes fonctionnalités.</li>
</ul>

<table border="1">

<tr><th>Paquet</th><th>Paquet préliminaire</th><th>Personnes impliquées
</th><th>Téléchargé</th><th>Liste des choses à faire, commentaires</th></tr>

<tr bgcolor="ffff99">
<td>gtk+-directfb</td>
<td>http://www.mmweg.rwth-aachen.de/~sebastian.ley/d-i/udebs</td>
<td><a href="mailto:mbc@debian.org";>Michael Cardenas</a>,<br>
    <a href="mailto:sebastian.ley@mmweg.rwth-aachen.de";>Sebastian Ley</a></td>
<td>oui</td>
<td>le micro-paquet devrait être prêt, il a besoin d'être testé</td>
</tr>

<tr bgcolor="ffff99">
<td>libdirectfb</td>
<td>http://www.mmweg.rwth-aachen.de/~sebastian.ley/d-i/udebs</td>
<td><a href="mailto:sebastian.ley@mmweg.rwth-aachen.de";>Sebastian Ley</a></td>
<td>oui</td>
<td>le micro-paquet devrait être prêt, il a besoin d'être testé</td>
</tr>

<tr bgcolor="ffff99">
<td>libpango</td>
<td>non disponible</td>
<td><a href="mailto:tagoh@debian.org";>Akira Tagoh</a></td>
<td>oui</td>
<td>le micro-paquet devrait être prêt, il a besoin d'être testé</td>
</tr>

<tr bgcolor="ffff99">
<td>glib</td>
<td>non disponible</td>
<td><a href="mailto:tagoh@debian.org";>Akira Tagoh</a></td>
<td>oui</td>
<td>le micro-paquet devrait être prêt, il a besoin d'être testé</td>
</tr>

<tr bgcolor="ffff99">
<td>libatk</td>
<td>non disponible</td>
<td><a href="mailto:tagoh@debian.org";>Akira Tagoh</a></td>
<td>oui</td>
<td>le micro-paquet devrait être prêt, il a besoin d'être testé</td>
</tr>

<tr bgcolor="ffff99">
<td>zlib</td>
<td>non disponible</td>
<td>non disponible</td>
<td>oui</td>
<td>le micro-paquet devrait être prêt, il a besoin d'être testé</td>
</tr>

<tr bgcolor="ffff99">
<td>libpng</td>
<td>http://www.mmweg.rwth-aachen.de/~sebastian.ley/d-i/udebs</td>
<td><a href="mailto:sebastian.ley@mmweg.rwth-aachen.de";>Sebastian Ley</a></td>
<td>oui</td>
<td>le micro-paquet devrait être prêt, il a besoin d'être testé</td>
</tr>

<tr bgcolor="ffff99">
<td>libc</td>
<td>non disponible</td>
<td>non disponible</td>
<td>oui</td>
<td>le micro-paquet devrait être prêt, il a besoin d'être testé</td>
</tr>

<tr bgcolor="ffff99">
<td>libfreetype</td>
<td>non disponible</td>
<td>non disponible</td>
<td>oui</td>
<td>le micro-paquet devrait être prêt, il a besoin d'être testé</td></tr>

<tr bgcolor="ffff99">
<td>ttf-freefont</td>
<td>non disponible</td>
<td>non disponible</td>
<td>oui</td>
<td>le micro-paquet a besoin d'être réduit, des polices doivent être supprimées</td></tr>

<tr bgcolor="ffff99">
<td>libfontconfig</td>
<td>http://www.mmweg.rwth-aachen.de/~sebastian.ley/d-i/udebs</td>
<td><a href="mailto:sebastian.ley@mmweg.rwth-aachen.de";>Sebastian Ley</a></td>
<td>oui</td>
<td>le micro-paquet devrait être prêt, il a besoin d'être testé</td>
</tr>

<tr bgcolor="ffff99">
<td>libexpat</td>
<td>non disponible</td>
<td>non disponible</td>
<td>oui</td>
<td>le micro-paquet devrait être prêt, il a besoin d'être testé</td></tr>

</table>


<h3>Intégration du frontal Gtk</h3>

<p>Comme toutes les bibliothèques requises par le frontal Gtk ne tiendront
jamais dans un disque, il faut trouver une solution pour utiliser le frontal.
Pour le moment, deux approches sont étudiées&nbsp;:</p>

<ul>
<li>pour une installation à partir d'un cd, détecter le cdrom sans intervention
de l'utilisateur, configurer anna et lui faire charger les bibliothèques
nécessaire automatiquement&nbsp;; enfin passer au frontal Gtk&nbsp;;</li>
<li>démarrer l'installation avec le frontal texte ou slang (ou un autre), et
permettre à l'utilisateur de configurer le médium d'installation&nbsp;; enfin
lui fournir la possibilité de passer au frontal Gtk&nbsp;.</li>
</ul>

<p>Ce ne sont que des idées, aucun travail n'a encore commencé à ce sujet.</p>


<h3>Empaquetage des bibliothèques dans des micro-paquets</h3>

<em>Il ne s'agit que d'une proposition basée sur mon expérience. Veuillez
m'envoyer vos commentaires (en anglais) ou en discuter sur debian-boot (en
anglais aussi).</em>

<p>D'abord, veuillez vous assurer d'avoir lu les instructions générales sur la
manière de créer des micro-paquets, elles se trouvent dans le cvs de
l'installateur. Les problème suivants sont spécifiques aux
bibliothèques&nbsp;:</p>

<p>Lors de l'empaquetage de modules de bibliothèques, il faut prendre des
précautions supplémentaires. Ce document fournit des informations de base à ce
sujet.</p>

<p>Avant de lire ceci, il n'est pas inutile d'avoir lu tout le reste de la
documentation à propos du projet de l'installateur. Le <a
href="http://www.netfort.gr.jp/~dancer/column/libpkg-guide/libpkg-guide.html";>\
Guide d'empaquetage de bibliothèques</a> de Junichi Uekawa fournit des
informations <!-- practics ? ---> générales sur l'empaquetage de bibliothèques.
L'avoir lu n'est pas inutile non plus.</p>


<h4>Nom</h4>

<p>Les modules de bibliothèques devraient avoir le même nom que le paquet dont
ils sont issus, avec l'ajout de la chaîne «&nbsp;-udeb&nbsp;» à la fin. Par
exemple libc6 donne libc6-udeb et libglib2.0-0 devient libglib2.0-0-udeb. Il
est important d'inclure le nom d'objet partagé (<i>soname</i>) dans le nom du
module car une modification de l'interface binaire d'application (ABI) cassera
tous les modules dépendants de cette bibliothèque ainsi que les installations
par le réseau jusqu'à la reconstruction de ces modules.</p>


<h4>Dépendances</h4>

<p>La manière habituelle de trouver les dépendances d'un paquet Debian est le
système shlibs. Chaque bibliothèque installée fournit un fichier shlibs qui
indique dans quel paquet se trouve cette bibliothèque. Cela ne fonctionne pas
pour trouver les dépendances d'un module de l'installateur car les fichiers
shlibs pointent sur le paquet Debian fournissant la bibliothèque en question,
pas sur le module de l'installateur correspondant.</p>

<p>Pour pouvoir continuer à utiliser dh_shlibdeps, chaque module de
bibliothèque devrait ajouter une ligne «&nbsp;Provides:&nbsp;» fournissant le
nom du paquet Debian correspondant à la bibliothèque. Par exemple, libc6-udeb
devrait fournir libc6.</p>


<h4>Contenu</h4>

<p>Le module doit contenir la bibliothèque elle-même, bien sûr, ainsi qu'un
lien symbolique du nom d'objet partagé de la bibliothèque renvoyant à la
bibliothèque. Le lien pour le développement et les fichiers d'outils .la <!--
libtools .la files ---> ne sont pas nécessaires. Si la bibliothèque fournit des
modules ou des données (rangés dans /usr/share), il est bon d'examiner si tous
sont nécessaires ou pas et d'en supprimer si possible.</p>


<h4>Modification des options de compilation</h4>

<p>Parfois, il peut être nécessaire de modifier les options de compilation de
la bibliothèque en module et donc de casser la compatibilité avec les binaires.
Toutes les modifications des options de compilation n'engendrent pas une
modification de l'interface binaire d'application, par exemple utiliser un
drapeau -O différent est sans risque.</p>

<p>Une modification de l'interface binaire d'application a par exemple été
nécessaire pour libdirectfb, car la bibliothèque du paquet Debian était
compilée avec la gestion de SDL et X qui aurait encombré l'installateur sans
raison.</p>

<p>Quand la compatibilité binaire est cassée, le nom d'objet partagé de la
bibliothèque doit être modifié afin de refléter cette situation. Il est
recommandé d'ajouter la chaîne «&nbsp;udeb&nbsp;» à ce nom. Modifier ce nom
peut être simple, si la bibliothèque est construite par libtool et utilise
autoconf. Veuillez vous référer au <a
href="http://www.gnu.org/software/libtool/manual.html";>Manuel de libtool</a> et
au<a href="http://www.gnu.org/manual/autoconf-2.57/autoconf.html";>Manuel
d'autoconf</a>.</p>

<p>Empaqueter la nouvelle bibliothèque dans un module de l'installateur n'est
pas suffisant. Si un autre module contient des programmes qui sont liés avec
cette bibliothèque, elle doit être présente sur le système de construction.</p>

<p>Comme les modules ne devraient pas être installés sur un système normal, il
est nécessaire qu'un paquet Debian fournisse cette bibliothèque ainsi que les
liens de développement requis. Ce paquet devrait être nommé libtoto-udeb-dev et
dépendre de libtoto-dev. Les seuls fichiers que libtoto-udeb-dev devrait
fournir sont la bibliothèque avec l'interface binaire d'application modifiée et
les liens symboliques nécessaires. Comme le lien pour le développement est
identique à celui de libtoto-dev, la bibliothèque et les liens devraient être
installés dans le répertoire <code>/usr/lib/udeblib</code>.</p>

<p>Si maintenant un programme pour l'installateur doit être lié à la
bibliothèque avec l'interface binaire d'application modifiée, il faut fournir à
l'éditeur de lien l'option «&nbsp;<kbd>-L/usr/lib/udeblib</kbd>&nbsp;» pour lui
indiquer où débuter la recherche du lien pour le développement pour libtoto.
Cette procédure devrait être indiquée dans le fichier README.Debian de
libtoto-udeb-dev.</p>

<p>Pour que tout soit géré correctement par le système shlibs quelques
paramétrages <!-- tweaking --> mineurs doivent être effectués. Pour obtenir les
dépendances correctes pour les modules de l'installateur qui dépendent de
libtoto-udeb, il faut fournir au paquet libtoto-udeb-dev un fichier shlibs qui
pointe sur le paquet libtoto-udeb. Ainsi, pour libdirectfb-udeb-dev le fichier
shlibs contient&nbsp;:</p>

<p align="center">
        libdirectfb-0.9-udeb 16 libdirectfb-0.9-16-udeb
</p>

<p>Il reste un dernier problème. Si un module de l'installateur libtata-udeb
dépend de libtoto-udeb, et qu'il a un libtata-udeb-dev à cause
d'incompatibilités de binaires, libtata-udeb-dev dépendra de libtoto-udeb, qui
est un module de l'installateur et ne doit pas être installé sur le système de
construction. Par résoudre ce problème, chaque micro-paquet de développement
devrait fournir le micro-paquet correspondant, par exemple libdirectfb-udeb-dev
devrait avoir une ligne&nbsp;:</p>

<p align="center">
               Provides: libdirectfb-0.9-16-udeb
</p>

Attachment: pgprhxor8pHZq.pgp
Description: PGP signature


Reply to: