Ubuntu packaging in bzr
A while ago there was talk of moving all (or at least some?) of the packaging effort to bzr branches on launchpad. I seem to remember there were a number of benefits mentioned, such as making it easier for new developers/packagers to contribute.
Can anyone update me on whether this happened and what the benefits would be? (I might have got completely the wrong end of the stick on this, so feel free to correct me...)
I don't have a current count, but I think most are imported. You can try to checkout packages with bzr branch lp:ubuntu/PACKAGENAME
or lp:ubuntu/maverick/PACKAGENAME
, for a couple examples.
Of course, replace PACKAGENAME
with the package you are looking for, and you can replace maverick
with the release you are looking for, lucid, karmic, etc. You can make changes and push to your own bzr branches for sponsorship.
Everything for which imports did not fail is in bzr right now. KDE branches have tended to fail due to being massive, but I think that's being worked on.
The benefits would be that we don't have debdiffs sitting in Launchpad that all have overlapping version numbers and conflict. Instead everyone can nicely merge into a single branch, reducing "oops, your patch no longer applies" round-trips.
As others have mentioned, you can checkout packages with bzr branch lp:ubuntu/PACKAGENAME
for the current developmental release or lp:ubuntu/lucid/PACKAGENAME
, if you are looking for the source from Lucid for instance. Source packages from Debian are also imported. These can be fetched with lp:debian/PACKAGENAME
or lp:debian/lenny/PACKAGENAME
This also allows us to easily browser the source of any Ubuntu or Debian package on-line via bazzar.launchpad.net. For instance, here is the banshee source package:
http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/maverick/banshee/maverick/files
The vast majority of packages in Ubuntu are availiable as bzr branches. As of this writting, only 597 of the thousand in Ubuntu are currently not up-to-date (This can be tracked on http://package-import.ubuntu.com/status/).
One of the major bennifits of distributed version control is that it can help with merging. Tasks such as viewing history and annotating to find who made a specific change and why are also made easier.
A good introduction to the Ubuntu Distributed Development project can be found here:
https://wiki.ubuntu.com/DistributedDevelopment/About
Documentation and how-tos can be found here:
https://wiki.ubuntu.com/DistributedDevelopment/Documentation