[Mageia-dev] Distributed packaging for a community distro
P. Christeas
p_christ at hol.gr
Sun Sep 19 11:32:33 CEST 2010
Hello,
There is no better time than now, to lay good foundations for the new distro.
Among those, to choose the right tools to work with.
Obviously, I'd like to bring back the issue of using *git* for Mageia.
It is not a new idea. My argument against mandriva has long been that it had
been a bad idea to have a centralized, closed repo for packaging. It was a bad
idea that anybody would need an account to practically contribute to the
distro. You may notice that the scripts are now 1.5yr old.
Here is a synopsis of the suggestion:
- We are decentralized. Anybody can easily clone the necessary (not big)
repos and try packaging things. If they have anything useful, they contribute
it back by any means, to the core team. All this, with minimal
resources/effort.
- No need for a central, huge, server to support the distro.
- Have *per package* git repositories that will contain the upstream source +
mageia extensions, patches, specs. Sometimes they may even be identical to the
upstream or simply branches in their git repos.
- Have one "master" repository, where each package will be a git /submodule/.
The "master" repo may even contain some trivial distro-packaging stuff, like
the release notes etc. Not more than that, however. Practically, the master
repo will be a few MBytes in size, with all history, Mandriva pre-history etc.
Easy to clone.
- Package repos could be hosted all over the internet. Git hashes make sure
we have the exact versions that the core team has approved.
- If needed, the build services can rebuild what the contributors submit, by
hash.
- Working with source trees instead of patch sets means upstream projects
will have easy access to our work (=improvements). We thus collaborate better
with the projects, keep closer to upstream.
- Other distros may use the same system (Debian, to some extent, already
does) and share with Mageia.
Cons:
- People w/o git experience will need a few days to familiarize themselves
with Git. (it is worth it, IMHO).
- We will need to add 3-4 lines per .spec . One time only, forever. (then we
forget about changelogs, touching specs for %version-%release etc).
http://git.hellug.gr/?p=xrg/gitscripts;a=summary
http://git.hellug.gr/?p=xrg/tar;a=commitdiff;h=3e690d39faa72652a6f46
--
Say NO to spam and viruses. Stop using Microsoft Windows!
More information about the Mageia-dev
mailing list