Bazaar .deb packaging through PPAs - pros and cons
Martin Pool
mbp at sourcefrog.net
Wed Dec 19 02:45:04 GMT 2007
Launchpad.net has a new feature called PPA (Personal Package Archive),
which is basically a way of easily making an apt archive containing
your own packages rebuilt for various machine architectures and
distributions.
http://news.launchpad.net/ppa/personal-package-archives-for-everyone
Since Robert is on leave, I am building 1.0 debs, and I thought I
would try both PPAs and building them myself here. In general they do
pretty well, so I was thinking about what it would take to use them
for all packaging, or whether we should do that.
There are three main phases to making Bazaar deb packages available:
making the source package, building it into binaries, and then putting
them into an archive. PPA automates the second two. None of them is
very hard, although there is a moderate thicket of interacting tools
involved in each of them.
Our PPA is here:
https://edge.launchpad.net/~bzr/+archive
If we do keep it around, some people will think it's definitive, so it
ought to either be up to date, or not visible at all.
Pros:
* Somewhat less setup for a new person who wants to build packages -
although the pbuilder script actually makes it fairly trivial. Most
of the knowhow is in making the package though, so this doesn't save
much.
* Anyone in the ~bzr group can upload a new source package;
authentication is done through the usual mechanism. So there's less
latency in waiting for a particular person to update the package, or
upload it into the archive.
* It can build amd64 packages for people who only have an i386
machine (like me.)
* I'm generally interested in dogfooding the PPA facility and making it better.
* I'd rather not deal with the minor hassle of maintaining our own
archive, getting people access to write to it, etc.
Cons:
* There's more latency waiting for the actual thing to build: locally
building a binary takes about a minute whereas pushing to ppa and
waiting for a response seems to take 10 minutes or so, and might be
more if people are busy building many things.
* It can only build i386 and amd64 packages at present - no ppc or
other things. And although there's interest in adding more
architectures, it doesn't seem like it will happen soon.
* Also, at the moment it only builds for Ubuntu, not Debian. (Though
again, there seems to be interest in supporting both.)
* There's no way to put packages in to the archive other than having
PPA build them - so if someone else wanted to build ppc packages, they
wouldn't be available from the same place. And, in general, if we
need anything removed or fixed that needs to be done through a request
to Launchpad staff. I guess we could have Launchpad do the builds and
then mirror them into another archive.
So for this release at least, I'm inclined to let PPA build all the
packages, and then copy them into the repository in bazaar-vcs.org,
keeping that as the definitive location.
--
Martin
More information about the bazaar
mailing list