(Courriels de diversion: <prononces@appliquaient-deleguerons.com> <berlines@repertorie-anticipees.com> <vouerai@relies-tricherai.com> <ridiculiserai@ressemblerions-jumellerais.com> <epouse@capes-coquettes.com> <trafiquee@cauterisation-mobiliers.com> <defibrer@terminez-peignes.com> <programmais@remplirons-rassasiez.com> <enregistrerait@entierete-dialectique.com> <coloniserons@soupconnee-rurale.com> )


On Tue, 2 Dec 2003 16:18:45 +0100
Georges Khaznadar <gekhajofour@netinfo.fr> wrote:> Guilhem BONNEFILLE a écrit :
> > DATADIR
> > -------
> > Aujourd'hui il vaut "$prefix/$NAME/data".
> > Autoconf propose une valeur par défaut telle que "$prefix/share" (soit /usr/local/share). Il faut que je me documente encore un peu car je ne comprends pas comment au final ce type de données se retrouvent sous /usr/local/share/<projet> sur ma Debian (est-ce à moi de gérer l'ajout du "<projet>" ?).
> 
> Ce comportement est conforme au FHS (Filesystem Hierarchy Standard).

Je viens effectivement de m'imprimer ce document pour en apprendre un peu plus ;-).

> Pour un paquet debian, $prefix se règle automatiquement à /usr.

En fait, la question que je me pose est sensiblement différente (je m'aperçoit en me relisant que j'ai été un peu confus).
Avec autoconf/automake, si j'ai bien compris, mon seul travail consiste à déclarer que tel fichier est un fichier de donnée (une simple affectation dans le Makefile.am). Du coup, c'est autoconf/automake qui produit les règles d'installation de ce fichier dans le répertoire des données. Or, :
- datadir semble se positionner par défaut à /usr/share,
- sous Debian ces fichiers semblent être déployés sous /usr/share/package,
- la doc du créateur de package Debian dit que tout se fait tout seul lorsque le projet utilise autoconf/automake,
- je ne trouve pas trace (dans mes essais perso de packaging Debian plus simples) de l'application de l'option '--datadir' lors de la phase de configuration.

> > 
> > Par contre, cela signifie qu'il va falloir supprimer l'utilisation de la variable $LLIAPHON. En effet, la valeur de $datadir sera intégrée au code source à chaque "configuration" (ce qui est plus classique pour des applications à destination de l'utilisateur final).
> 
> Tu fais la suppression dans les sources pour debian (donc tu vas avoir
> dans le paquet source : une fichier .orig.tar.gz qui contient
> l'intégralité de la source originale, et un fichier .diff.gz qui fait
> les modifications.

En première approche, j'étais plutôt dans l'optique de modifier directement les sources car je pense que mes modifications aideront à la création pour d'autre sysème d'empaquetage.

> Rien n'empêche cependant de laisser un test dans les sources : si
> $LLIAPHON est différent de vide, on revient au fonctionnement
> traditionnel de lliaphon, sinon on utilise une valeur
> /usr/share/lliaphon, câblée pour la distrib debian.

Cette idée est intéressante.

> > 
> > CFGDIR
> > ------
> > Aujourd'hui il vaut $prefix/$NAME.
> > J'ai identifié que cette variable se rapproche le plus de la variable Autoconf $sysconfdir. Celle-ci à pour valeur par défaut $prefix/etc. Ici aussi il faut que je me documente un peu plus (autres projets) afin de déterminer pourquoi sur ma Debian je ne trouve rien sous /usr/local/etc, mais que /etc contient beaucoup de fichiers.
> 
> Pour la distrib debian, la norme est /etc/package.conf pour un fichier
> de configuration unique, et /etc/package/... pour un ensemble de
> fichiers de configuration. Exemples : /etc/apache/httpd.conf et
> /etc/apache/srm.conf pour le paquet apache, /etc/lilo.conf pour lilo.

Merci pour cette information qui va m'éviter des heures de recherches dans les docs pour comprendre ce qu'on met dans /etc et comment.


A ce sujet, j'ai jeté un oeil (trop) rapide sur le paquetage que cous avez réalisé pour la version 0.3.1. Dans celui-ci, il me semble avoir compris que vous aviez décidé de mettre les données et config dans "/usr/lib/lliaphon".
J'ai déjà constaté que certains paquetage installe effectivement des informations dans cette arborescence bien que les fichiers installés ne soient pas des librairies dynamiques (.so). Par exemple, "locale" y dépose des fichiers de messages compilés.
J'ai bien l'intention de fouiller le FHS pour comprendre comment on choisit entre "/usr/lib" et "/usr/share", mais si vous aviez déjà une réponse... ;-))

> 
> > LES MODALITES
> > =============
> > En fait, je m'interroge sur la façon de procéder pour faire les modifications. Je vois deux solutions :
> > - je fais mes modifs, je teste et je vous soumet un patch relatif a la version 0_3_1 du CVS ;
> > - je crée un utilisateur sur TuxFamilly et j'incorpore directement mes modifications dans le CVS (après que vous m'ayez donné les droits de le faire).
> > 
> > C'est à vous de me dire ;-)
> 
> La tradition : c'est de faire un paquet debian proprement, donc le
> .diff.gz va être généré automatiquement. Le développeur principal décide
> ensuite en son âme et conscience s'il fait remonter des modifications
> depuis le patch dans le tronc commun de développement. Cette solution a
> l'avantage d'être souple, et de partager justement le travail entre
> développeur et empaqueteur.

Merci beaucoup pour ces informations concernant la tâche de mainteneur de paquet Debian. J'avais posé récemment cette question à un autre Mainteneur Debian (comme quoi, même le monde électronique est bien petit).

En vous remerciant pour toutes ses informations,
-- 
Guilhem BONNEFILLE
-=- #UIN: 15146515 -=- JID: guyou@jabber.org guyou@amessage.be-= mailto:guilhem.bonnefille@laposte.net mailto:guilhem.bonnefille@free.fr-= http://nathguil.free.fr/ http://home.tele2.fr/nathguil/