Other languages Deutsch ; English ; Français ; |
Contents
- 1 I want to add a new package
- 2 I want to update a package in cauldron
- 3 I want to submit a package in updates testing for a stable release
- 4 I want to backport a package
- 5 I want to see who is the maintainer of a package
- 6 I want to be set as maintainer of a package
- 7 I want to stop being the maintainer of a package
- 8 I don't have a packager account and want to do an anonymous checkout using mgarepo
- 9 I want to handle the tainted and nonfree repositories
I want to add a new package
- Check the Pending packages page to what the status of the package is
- Build the SRPM (for example using bm -sl).
- Import the packages with mgarepo import foo.src.rpm. Be sure to run this command under your ssh-agent, otherwise import will fail.
- Submit package to be built for Mageia: mgarepo submit foo
By default, mgarepo will work with cauldron.
The status of the submit can be visualized
I want to update a package in cauldron
- Do a checkout : mgarepo co foo.
- Make your changes locally, test them by building the package using bm -b -l or rpmbuild --define "_topdir $PWD" -ba SPECS/*.spec, installing it and then playing with it.
- 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.
- Commit your changes: svn ci -m 'my changes explained'
- Request a new build: mgarepo submit foo
NB: when adding multi-line commit messages, every seperate entry must begin with the '-' character. Like
- Bumped release - Added foo.patch
This is optional for single line messages, as in that case it's automatically added if not present. To create a multi-line message simply leave the current line unterminated (no final quote mark) and hit ENTER and continue writing. Finally terminate the last line with a quote mark. Or write the commit messages into a file and use the -F option for svn ci / mgarepo ci.
I want to submit a package in updates testing for a stable release
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 :
- do a checkout : mgarepo co 5/foo or mgarepo co -d 5 foo
- Make your changes locally, test them by building the package using bm -b -l, installing it and then playing with it.
- 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.
- commit your changes : mgarepo ci -m 'my changes explained'
- ask for a build : mgarepo submit 5/foo --define section=core/updates_testing -t 5
I want to backport a package
Backports policy: https://wiki.mageia.org/en/Backports_policy
I want to see who is the maintainer of a package
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 packager, 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
I want to be set as maintainer of a package
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)
I want to stop being the maintainer of a package
You can use the following mgarepo command :
mgarepo maintdb set [packagename] nobody
I don't have a packager account and want to do an anonymous checkout using mgarepo
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/
I want to handle the tainted and nonfree repositories
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.
By default, the build is done in the section used for the last submission. Thus, it can be necessary to define the core section like:
mgarepo submit --define section=core/release