As GNOME migrates to git, so does Gnome Developer Kit. Most packages have been built from their current git HEAD (so, should gnome:trunk be renamed to gnome:head? :), except the several ones that can't be built (yet). And since there is still some problems in the migration, say missing files, a couple of packges can't be built for now.
The process didn't take much effort. One script that we use to drive the packaging needs some modification. It looks at the revision of svn/git, the version of :source package and the version of the built package, then it decides which module needs refresh and build it. So for this migration, we simply change 'svn log http://svn.gnome..' to 'git ls-remote --heads git://git.gnome...'.
Three or four packages have 'addSvnSnapshot' hardcoded in their recipe, which need to be 'addGitSnapshot'. Easy, no? But actually we move all the 'add...Snapshot' stuff to a base class (yes it's in Python), so in the future it would be even more easy to adapt to infrastructure changes. But will GNOME change to yet another version control tool? (maybe bzr? ;-)
Group-world has been built, which contains stuff coming from both svn and git.
At the moment 98 modules are packaged regularly (means daily) in "gnome:trunk". We should be adding more in the future, which won't be difficult, at least easier than gnome-shell :) But of course we need help; only two people are currently looking at the Developer Kit. Please meet us at #foresight-devel on FreeNode no matter you want to know more about dev kit, about conary, about foresight, or you want to help out :)
It's really great that GNOME changes to git. And thanks to conary, it's faily easy to follow the change.
Sunday, April 19, 2009
Subscribe to:
Post Comments (Atom)

3 comments:
If you want something analogous to 'trunk' in git speak, it's not 'head' but 'master'.
Even if you switch branches you're on the HEAD ref. If you're doing nightly build off the head of development... you're probably building off the 'master' branch.
Yeah I am building from the master branch. Thanks for pointing out; I just thought 'master' didn't mean the head of development.
But then neither does 'trunk' in subversion mean head...Anyway 'trunk' is straightforward, and we may continue with it.
That makes http://live.gnome.org/GnomeDeveloperKit/BuildingPackages slightly off now.
I want to edit the source code of a package, but it is not in source/cache anymore. How does it work now?
Post a Comment