From Mageia wiki
Revision as of 14:33, 20 December 2015 by Papoteur (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Summary

Rewrite mgarepo, with git support and new maintainers db

Owner

  • Name: boklm
  • Email: boklm@mars-attacks.org

Resources

boklm, colin, xrg + other people interested

Current status

  • Targeted release: Mageia 4
  • Last updated: 2024/03/28
  • Percentage of completion: 0%

Detailed Description

Create a new version of mgarepo, to be used by packagers, and on build system, with following features :

  • git repositories to store packages instead of svn
  • command for the creation of a new repository (to import a new package)
  • binrepo (same as in current version)
  • sending of binrepo files using an URL instead of upload
  • packaging software without binary tarballs, the sources are stored in a git branch, the tarball is created automatically by mgarepo
  • new maintainers database, with support for maintainers groups
  • automatic assignement of packages bugs to maintainer(s) on bugzilla
  • sending of commit notifications to package maintainer

Packaging of software without binary tarballs work like this :

  • push the upstream sources to a branch/tag in the git repository
  • add a Sources line in the spec file like this:
Source0: git:[githash]/[directory-name]/[tarball-name].tar.xz
  • run mgarepo getsources to generate or download the missing tarballs (from git branch, or from binrepo)

Why it would be good for Mageia to include it

  • using git makes it easier to manage different branches (for different distributions / medias)
  • we need maintainers group support

Test case

Software / Packages Dependencies

mgarepo and build system

What could disrupt development of this new feature

lack of time

Planning

  • development of mgarepo, conversion scripts and testing until the release of Mageia 7
  • deployement after Mageia 7 release, before reopening cauldron (if everything is ready)

Contingency

Release Notes

Documentation