From Mageia wiki
Jump to: navigation, search


Drakconf multiflag.png
Autres langues
Deutsch ; English ; Français ;

Accueil [en] Accueil Équipes Packageurs Les outils d’empaquetage Mageia Mgarepo


Résumé :
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 quel est 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 à 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 version cauldron.

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

Mettre à jour un paquet dans cauldron

  1. Téléchargez la version depuis Mageia grâce à la commande « $ mgarepo co foo ».
  2. Faites les changements 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 du dépôt 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 – 'message explicatif en anglais' »
  5. Demandez une nouvelle construction du paquet avec « $ mgarepo submit foo ».

NB : quand vous souhaitez ajouter un message sur plusieurs lignes, séparez toutes les entrées avec le caractère « – ». Comme :

- Bumped release — Added foo.patch

Ceci 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 lignes, laissez la première ligne incomplète (sans le guillemet fermant le message, appuyez sur Entrée, vous venez d’ajouter une ligne à votre message). Vous validerez l’envoi en appuyant sur Entrée après le 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 de la politique de mises à jour pour plus de détails quant aux paquets à mettre dans ce dépôt.

Par exemple les mises à jour 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 des fichiers sources dans votre spec, vous pouvez faire « $ mgarepo sync » pour les ajouter/supprimer de 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 changements : « $ mgarepo ci -m 'mes changements expliqués 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 droit 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 les dépôts Tainted et Nonfree

Pour utiliser bm (BuildManager) avec les dépôts tainted, utilisez la ligne de commande suivante :

bm --define 'distro_section tainted'

Prenez garde aux simples guillemets et aux espaces, c’est ce qu’accepte rpmbuild.

Pour soumettre il dit :

mgarepo submit --define section=tainted/release

Vous pouvez remplacer « tainted » par « nonfree » dans les deux lignes précédentes selon vos désirs.

Par défaut, le système de construction utilise la section utilisée lors de la dernière soumission. Aussi, pour construire dans la section standard (core), il peut être nécessaire d’utiliser :

mgarepo submit --define section=core/release