From Mageia wiki
Revision as of 19:26, 15 May 2018 by Jibz (talk | contribs) (Mettre à jour un paquet dans la cauldron: -trad)
Jump to: navigation, search

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

The updates testing is the repository where update candidates are submitted. Check the updates policy page for more details about what can go in that repository.

For example with Mageia 5 core repository updates :

  1. do a checkout : mgarepo co 5/foo or mgarepo co -d 5 foo
  2. Make your changes locally, test them by building the package using bm -b -l, installing it and then playing with it.
  3. If you added or removed patches or source files in your spec you can use mgarepo sync to add/remove them from the svn (for text files) or binrepo (for binary files). Alternatively you can use mgarepo upload file or mgarepo del file to upload or remove a file.
  4. commit your changes : mgarepo ci -m 'my changes explained'
  5. ask for a build : 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

The maintainer name of a package is available at this URL (replace "[package]" with the package name in the URL): http://maintdb.mageia.org/[package]

Alternatively you can ask Sophie on IRC:

:maint [packagename]

If you are a packagers, you can use the following mgarepo command:

mgarepo maintdb get [packagename]

The full content of the maintainers database is also available at http://pkgsubmit.mageia.org/data/maintdb.txt

Devenir mainteneur d'un paquet

You can only do this if the package is currently maintained by nobody :

mgarepo maintdb set [packagename] [yourlogin]

(this can be done only by packagers, apprentices have no rights to the maintdb command)

S'arrêter de maintenir d'un paquet

You can use the following mgarepo command :

mgarepo maintdb set [packagename] nobody

Utiliser mgarepo anonymement pour vérifier des paquets

You need to edit the mgarepo configuration file :

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

edit ~/.mgarepo/config and uncomment the following line :

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.