Skip to content

Home > GNU/Linux > Devenir contributeur chez Mandriva

Devenir contributeur chez Mandriva

"Mandriva contributor HowTo" en Français.

Tuesday 2 May 2006, by Stéphane Téletchéa

Peu d’utilisateurs savent comment remercier les fabricants de la distribution qu’ils utilisent. Pour la plupart, nous pouvons télécharger librement la distribution sur internet, acheter un pack ou récupérer la distribution dans un magazine.

Cependant il ne faut jamais oublier que, bien que la distribution Mandriva Linux soit agencée autour d’un modèle commercial, sont succès tient tout autant à la société Mandriva qu’à la communauté qui vit autour de la société, en apportant son temps et son savoir-faire à la création des paquets de logiciels, les RPMs.

Vous trouverez dans la suite de cet article les différentes étapes que j’ai suivies pour devenir contributeur officiel de la distribution. J’espère qu’elles permettront aux plus récalcitrants à la langue de Shakespeare de suivre dans notre bonne langue de Molière ce qu’il faut faire pour améliorer encore le produit Mandriva Linux.

Les explications suivantes sont valables principalement pour la version de développement de la distribution, autrement appelée «cooker». Si néanmoins vous souhaitez réaliser des paquets pour les distributions passées, les étapes suivantes restent valables.

Il faut bien avoir à l’esprit que cet engagement est un engagement sur le long terme. Les paquets qui seront soumis pour approbation seront ensuite utilisés et si des problèmes apparaissent, ce sera au final à vous de les corriger, ou de notifier en amont (aux développeurs du logiciel) les problèmes rencontrés.

Ceci dit, voici les étapes que j’ai suivies :

  1. Définir un environnement de construction de RPM, voir sur ma page dédiée à la construction de RPM. Il y a en particulier en bas de page un certain nombre de liens disponibles pour ceux qui auraient besoin d’approfondir les explications sur RPM.
  2. Se faire connaître auprès de la communauté. Si vous êtes nouveau, vous pouvez envoyer un courriel de présentation (en Anglais) sur la liste cooker@mandrivalinux.com ou même celle des mainteneurs de paquets, maintainers@mandriva.com. De nombreux employés et contributeurs "seniors" sont aussi joignables via l’irc.
  3. Choisir un logiciel que vous connaissez et que vous utilisez. Il est inutile de prendre un logiciel que vous ne connaissez pas (surtout quand on commence) car dès qu’un problème surgira (et il surgira, à n’en point douter), vous risquez de perdre beaucoup de temps à trouver la cause. Si vous n’avez pas d’idée précise, vous pouvez toujours prendre la suite de quelqu’un. En effet, de nombreux paquets anciennement maintenus ne le sont plus (les mainteneurs sont partis ou ont abandonné ce paquet pour un autre). La liste des paquets à prendre est située à l’adresse http://qa.mandriva.com/maint_get_pkg.cgi.
  4. Une fois votre RPM créé, il faut le faire entrer dans le système de contribution de mandriva. La manière la plus propre et pérenne est de faire la demande pour devenir un contributeur officiel, en écrivant à contribs@mandriva.com (en Anglais ?) et en fournissant, en plus de la motivation de la contribution, les informations suivantes :
  5. En attendant la réponse, vous pouvez toujours mettre sur le serveur de Mandriva votre œuvre (le srcrpm), pour que tout le monde puisse le voir, le commenter, et au besoin l’accepter. Le téléchargement se fait via ftp anonyme sur ftp.mandriva.com, répertoire incoming/cooker/
  6. Après avoir reçu une réponse qui notifie votre acceptation et la création de votre compte, il faut passer aux choses sérieuses ! J’ai reçu l’acceptation de ma demande le lendemain de la demande, et la création du compte (avec les indications envoyées par mail et cryptés avec la clé que j’avais envoyé au départ) le surlendemain.
  7. Je continue maintenant sur la page de création de RPM, pour indiquer les écueils que je rencontre. Je mettrai cette page à jour pour d’autres manières de contribuer (traduction par exemple, rapport de bug, ...).

Pour mieux comprendre comment le système de soumission fonctionne, c’est une bonne idée d’aller voir du côté de la page décrivant le système de construction des rpms.

Vérification des RPMs créés et ajoutés dans la distribution

La distribution ne dispose pas d’outils spécifiques pour les contributeurs, pour recuillir les différentes informations sur les RPMs que vous avez créés (où ils sont, dans quel état, etc), il faut utiliser plusieurs listes, programmes et/ou sites web :

http://kenobi.mandriva.com/bs/output.php

http://youri.zarb.org/demo/mandriva/

iurt est un robot qui prend en charge la reconstruction automatique des paquets à partir du rpm source. Si des erreurs apparaissent, il ne manquera pas de vous les indiquer, c’est donc une bonne idée de regarder les logs de construction.

- [http://kenobi.mandriva.com/bs/output.php] est l’outil officiel de la distribution
- youri en est un autre outil fait par un autre contributeur

C’est aussi une bonne idée de s’abonner à la liste Changelog pour savoir quels sont paquets sont acceptés et téléchargés sur les miroirs (les vôtres comme ceux des autres contributeurs et employés de Mandriva).

Globalement, pour vérifier où en est votre paquet après l’avoir soumis par ftpcontrib, voici la démarché à suivre :

  1. Regarder sur le cluster si votre paquet apparaît dans /SRPMS/contrib/
  2. Regarder ce qui est dit dessus dans la liste de diffusion Changelog (cf plus haut pour la souscription)

Problèmes qui surgissent

- Le premier problème que j’ai rencontré est le statut de mainteneur du paquet. En effet, comme j’avais proposé sur le site ftp incoming (cf ci-dessus) les premiers paquets que j’avais fait, ceux-ci ont été mis à disposition de la communauté, et c’est celui qui a mis à disposition ces paquets qui est devenu automatiquement le mainteneur.

Pour ces deux paquets, j’ai pu lui demander qu’il me donne le statut de mainteneur, par mail (et j’ai pu le contacter sur l’irc aussi), ce qu’il a fait immédiatement, je le remercie ici.

Cet échange se fait via la page principale du Bugzilla de Mandriva, en bas, dans la section Maintainers. Vous pouvez transférer ou devenir mainteneur d’un paquet.

Après la création de mon compte sur le cluster, j’ai pensé (naïvement) que les paquets que je créerais me seraient automatiquement attribués. En fait, Non !

Il sont attribués à qa@mandriva.com qui est un mainteneur virtuel. Je ne sais pas pourquoi cela fonctionne comme cela, a priori, quand on demande à devenir contributeur interne, c’est que l’on veut s’impliquer (et pour moi maintenir les paquets que l’on met à disposition me paraît naturel ...).

Actuellement, si une personne rapporte un problème sur le paquet, le problème est adressé à qa@mandriva.com et cooker@mandrivalinux.org, donc virtuellement à personne en particulier. De plus le fait qu’ils soient indiqués comme maintenus par qa@mandriva.com fait que d’autres contributeurs y participent naturellement (normalement un contributeur qui modifie/améliore le travail d’un autre contributeur le notifie des changements), ce qui m’est arrivé, et des changements que l’autre contributeur et ceux que j’avaient effectués se sont téléscopés.

Enfin, être mainteneur signifie aussi avoir le contrôle sur son paquet, pour par exemple le supprimer, modifier l’architecture cible (restreindre), etc. Plus de détails sur la page wiki de rpmctl.

Pour l’instant, je n’ai toujours pas le contrôle automatique des paquets que j’ai téléchargés depuis mon accession au cluster, ce qui fait que je me suis arrêté dans mes contributions, j’attends que la situation soit régularisée pour continuer. J’ai contacté par irc la personne qui est sensée pouvoir débloquer la situation la semaine dernière, mais toujours pas de nouvelles.
Dire que le premier courriel à contribs avait conduit à l’ouverture de mon accès le lendemain de son expédition ...

Mise à jour : 10 jours après avoir informé sur irc, et 3 jours après en avoir informé par courriel le responsable pour la modification du statut de mainteneur, j’ai été avisé ce matin par un message intitulé «[QA] Your packages list» que j’étais maintenant le mainteneur des paquets que j’avais mis à disposition sur ftpcontrib.

Reste à savoir si quand je télécharge un nouveau paquet, je suis bien automatiquement le mainteneur ;-)

Quelques liens

Tentative d’organisation du wiki
Page intéressante sur l’organisation globale de cooker

P.S.

Mise à jour le 26 février suite commentaire sur le forum : liens brisés, informations obsolètes.

6 Forum posts

  • Devenir contributeur chez Mandriva 2 May 2006 at 12:57, by christophe

    Bonne idée que cet article en français !

    Je voulais faire quelques remarques/questions :
    * Tu ne parles pas de Cooker. Pourtant j’avais compris qu’on ne pouvait proposer des rpms que pour cooker ?
    * Tu donnes deux adresses e-mail, on peut leur écrire en français ?
    * La liste des paquets sans mainteneur est apparemment seulement accessible à ceux faisant partie des mainteneurs.
    * Dans le droit fil de ma première question, y a-t-il des possibilités de contribution pour ceux qui désirent rester sur la version stable de la Mandriva ?

    Voilà, je crois que c’est tout :p

    Reply to this message

    • Devenir contributeur chez Mandriva 2 May 2006 at 12:58, by christophe

      Mince, désolé pour la mise en page désastreuse...

      Reply to this message

      • Devenir contributeur chez Mandriva 2 May 2006 at 13:23, by Stéphane Téletchéa

        Et bien je ne pensais pas que l’article serait si vite lu :-)

        Pour les réponses aux questions :
        - les messages sur cooker sont en Anglais.
        - pour l’inscription sur contrib, j’ai écrit en Français, mais tes commentaires me rappellent que j’aurais dû le faire en Anglais ...
        - concernant les versions stables, il me semble que tu peux faire des paquets pour les versions supportées et le développement (donc actuellement, il s’agit de faire un paquet pour cooker puis de le ’backporter’ sur 2006 et 2005). Tu peux le vérifier en allant sur ftp://ftp.mandriva.com/incoming. Tu verras que là il y a des versions pour 2005, 2006 et cooker.

        Je mettrais à jour cette page dès que j’en saurais plus, je vais aussi préciser les points qui n’ont pas semblé assez clairs (pour l’Anglais et cooker par exemple).

        A bientôt,

        Reply to this message

  • Devenir contributeur chez Mandriva 25 February 2007 at 21:22

    Bonjour !

    Problème de lien pour le répertoire de travail (paragraphe 1.). Ce lien fonctionne : http://www.steletch.org/spip.php?article19, mais le lien en place renvoie vers une ancienne page je pense.

    Reply to this message

    • Corrigé ! 26 February 2007 at 16:09, by Stéphane Téletchéa

      D’autres liens n’étaient plus à jour, j’ai rafraichi l’article en conséquence.

      Merci.

      Reply to this message

Comment on this article