Nouvel agencement des paquets PEAR
+
Par Remi le mardi 21 août 2012, 10:10 - HowTo - Lien permanent
Le dossier /usr/share/pear, utilisé pour l'installation des extensions PEAR sous Fedora et Enterprise Linux contient beaucoup de fichiers qui n'ont pas leur place ici. En particulier parce que ce dossier fait partie de l'include_path par défaut.
A partir de Fedora 18, cela s'améliore.
1. Documentation
Les extensions stockent leur documentation dans /usr/share/pear/doc.
Ce dossier est déplacé (depuis Fedora 15) dans /usr/share/doc/pear (valeur de la macro %{pear_docdir}).
Pas d'incidence sur les paquets existant, puisque par définition, la documentation n'est pas nécessaire lors de l'utilisation.
2. Méta-données des RPM
Les paquets RPM stockent leur méta-données, une copie du package.xml du projet, pour l'enregistrement de l'extension dans le dossier /usr/share/pear/.pkgxml.
Ce dossier est désormais déplacer dans /var/lib/pear/pkgxml (valeur de la macro %{pear_xmldir}).
Aucune incidence sur les anciens paquets, puisque le chemin est stocké en dur dans le RPM (évalué lors de sa construction).
3. Tests unitaires
Les tests unitaires fournis avec chaque extension s'installent dans /usr/share/pear/test.
Ce dossier est désormais déplacer dans /usr/share/tests/pear (valeur de la macro %{pear_testdir}).
Aucune incidence sur les anciens paquets, puisque ces fichiers ne sont pas nécessaire à l'utilisation. Une reconstruction des paquets est tout de même préférable.
4. Données
Les données des extensions sont stockées dans /usr/share/pear/data.
Ce dossier est désormais déplacer dans /usr/share/pear-data (valeur de la macro %{pear_datadir}).
Aucune incidence sur les anciens paquets ou les extensions installées manuellement, en effet cette valeur est évaluée lors de la construction du RPM ou de l'installation manuelle d'une l'extension, et est stocké en dur dans les scripts. Et, évidement, le contenu existant est conservé. Une reconstruction des paquets est aussi préférable.
5. Méta-données PEAR
L'installeur PEAR stocke ces méta-données dans plusieurs dossiers : /usr/share/pear/.registry, .channels, .depdb, et .filemap.
S'agissant de données vivantes, elles n'ont clairement pas leur place ici. Voir la FHS.
Leur déplacement vers /var/lib/pear est prévu, et à fait l'objet d'une RFC auprès du projet PEAR, car cela demande une modification significative du code.
Donc, actuellement elles ne sont pas déplacées.
6. Conclusion
Modification réalisée dans php-pear-1.9.4-11.
Un gros travail de nettoyage vient d'être réalisé dans Fedora 18 (et sera prochainement rétro-porté dans le dépôt remi). Plus d'une centaine d'extensions empaquetées utilisant "test" ou "data" ont été reconstruites.
Il reste encore du travail pour les méta-données, en particulier pour assurer une mise à jour sans problème depuis la version actuelle. On verra quand cela sera possible (Fedora 18 ou 19), en fonction des réponses du projet PEAR, des délais de réalisation, et du planning de la distribution.
À suivre...
Commentaires
Je viens de terminer le rétro-portage, les paquets sont donc disponibles dans :
Je compte sur vous pour me signaler d’éventuels problèmes sur le forum.
Je viens de basculer la dernière version de remi-test vers remi.