From Mageia wiki
Jump to: navigation, search
m (Utiliser mgarepo anonymement pour vérifier des paquets: -trad)
m (Utiliser mgarepo anonymement pour vérifier des paquets: -crr)
Line 74: Line 74:
 
   <tt>mkdir ~/.mgarepo; cp /etc/mgarepo.conf ~/.mgarepo/config</tt>
 
   <tt>mkdir ~/.mgarepo; cp /etc/mgarepo.conf ~/.mgarepo/config</tt>
  
Éditez ce fichier de configuration pour l'utilisateur courant ''~/.mgarepo/config'' en décommentant la ligne :
+
Éditez ce fichier de configuration pour l'utilisateur courant ''~/.mgarepo/config'' en dé-commentant la ligne :
 
   mirror = svn://svn.mageia.org/svn/packages/
 
   mirror = svn://svn.mageia.org/svn/packages/
  

Revision as of 10:21, 27 May 2018

Template:Bandeau multi-langues-fr Accueil [en] Accueil Équipes Packageurs Les outils d'empaquetage Mageia Mgarepo


Mgarepo est un outil sur la station du développeur qui communique avec les dépots de Mageia. Il sépare le dépôt des fichiers binaires (contenant les sources en amont) et le dépôt des fichiers de constructions pour Mageia (contenant les Specs et les correctifs appliqués).

Ajouter un nouveau paquet

  1. Vérifier sur cette page si le status du paquet que vous souhaitez ajouter.
  2. Construisez le SRPM (par exemple avec "$ bm -sl" ).
  3. Importez le paquet avec "$ mgarepo import foo.src.rpm" . Soyez sûr de lancer cette commande a travers votre session ssh, sinon l'import échouera.
  4. Soumettre le paquet à construire pour Mageia : "mgarepo submit foo"

Par défaut, mgarepo agit avec la cauldron.

Le status de la soumission peut être visualisé ici.

Mettre à jour un paquet dans la cauldron

  1. Téléchargez la version sur Mageia grâce à la commande "$ mgarepo co foo".
  2. Faites les changement localement, testez les en construisant le paquet avec "$ bm -b -l" ou "$ rpmbuild --define "_topdir $PWD" -ba SPEC/*.spec", installez le et jouez avec.
  3. Si vous avez ajouté ou supprimé un correctif ou des fichiers sources à votre spec, vous pouvez utiliser "$ mgerapo sync" pour les ajouter/supprimer d'SVN (pour les fichiers de constructions) ou binrepo (pour les "fichiers binaires", les sources). Autrement, vous pouvez utiliser "$ mgarepo upload fichier" ou "$ mgarepo del fichier" pour agir sur un seul fichier.
  4. Soumettez vos changements avec "$ svn ci -m 'message explicatif en anglais'"
  5. Demandez une nouvelle construction du paquet avec "$ mgarepo submit foo".

NB: quand vous souhaitez ajouter un message sur plusieurs ligne, séparez toutes les entrées avec le caractère "-". Comme :

- Bumped release
- Added foo.patch

C'est optionnel pour les messages sur une simple ligne car il est automatiquement ajouté s'il n'est pas présent. Pour créer un message sur plusieurs ligne, laissez la première ligne incomplète (sans la guillemet simple fermant le message, appuyez sur entré, vous venez d'ajouter une ligne à votre message). Vous validerez l'envoie en appuyant sur entré après la simple guillemet fermant. Autrement, vous pouvez écrire votre message dans un fichier et l'ajouter à votre soumission avec l'option -F (svn ci -F fichierMessage ou mgarepo ci -F fichierMessage).

Soumettre un paquet dans Updates Testing pour une révision stable

Le dépôt update testing est là où l'on place les mises-à-jour candidates. Regardez la page des consignes de mise à jour (en) pour plus de détails quant aux paquets à mettre dans ce dépôt.

Par exemple les mises-à-jours avec le dépôt Mageia 5 core :

  1. Télécharger le paquet foo avec : "$ mgarepo co 5/foo" ou "$ mgarepo co -d 5 foo"
  2. Faites vos changements localement, testez la construction du paquet avec "$ bm -b -l", installez le et jouez avec.
  3. Si vous avez ajouté ou supprimé des correctifs ou fichiers sources dans votre spec, vous pouvez faire "$ mgarepo sync" pour les ajouter/supprimer d'SVN (pour les fichiers de constructions) ou binrepo (pour les sources). Autrement vous pouvez utiliser "$ mgarepo upload fichier" ou "$ mgarepo del fichier" pour respectivement ajouter ou supprimer un fichier précis.
  4. Soumettez vos changement : "$ mgarepo ci -m 'mes changements expliqué en anglais'"
  5. Demandez une reconstruction : "$ mgarepo submit 5/foo --define section=core/updates_testing -t 5"

Rétro-porter un paquet

Backports policy: https://wiki.mageia.org/en/Backports_policy

Voir qui maintient un paquet

Vous pouvez connaitre le nom du mainteneur d'un paquet à cette page (remplacez "[paquet]" par le nom du paquet intéressé) : http://maintdb.mageia.org/[paquet]

Autrement, vous pouvez demander à Sophie sur un des canaux Mageia sur IRC :

:maint NomDuPaquet

Si vous êtes mainteneur, vous pouvez utiliser la commande mgarepo suivante :

mgarepo maintdb get NomDuPaquet

La base de donnée complète des mainteneurs des paquets est disponible ici : http://pkgsubmit.mageia.org/data/maintdb.txt

Devenir mainteneur d'un paquet

Cette action est possible uniquement si le paquet courant est maintenu par personne (autrement dit maintenu par personne, "nobody") :

 mgarepo maintdb set NomDuPaquet VotreIdentifiant

Cette commande n'est disponible que par les empaqueteurs, les apprentis n'ont aucun droits sur les commandes maintdb.

Ne plus maintenir un paquet

Vous pouvez utiliser commande suivante :

 mgarepo maintdb set NomDuPaquet nobody

Utiliser mgarepo anonymement pour vérifier des paquets

Vous devez éditer le fichier de configuration mgarepo. Copier pour l'utilisateur courant un fichier de configuration par défaut :

 mkdir ~/.mgarepo; cp /etc/mgarepo.conf ~/.mgarepo/config

Éditez ce fichier de configuration pour l'utilisateur courant ~/.mgarepo/config en dé-commentant la ligne :

 mirror = svn://svn.mageia.org/svn/packages/

Gérer mes dépôts Tainted et Nonfree

To use bm with the tainted repository, use the following command-line invocation:

 bm --define 'distro_section tainted'

Note the quotes and the space (that's what rpmbuild accepts - we just work here).

To submit it say:

 mgarepo submit --define section=tainted/release

You can also use "nonfree" instead of "tainted" in both examples above.