Bazaar .deb packaging through PPAs - pros and cons

John Arbash Meinel john at arbash-meinel.com
Wed Dec 19 14:19:42 GMT 2007


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Thanks for the nice summary. I've wondered about PPAs.


Martin Pool wrote:
...

> Our PPA is here:
> 
>   https://edge.launchpad.net/~bzr/+archive

Is it only on edge, or can it be accessed from:

https://launchpad.net/~bzr/+archive

(I would assume the latter, but I didn't know if PPA was still for beta-testers
only.)


> 
> 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.

Agreed.

> 
> 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.

pbuilder is a local side script?

> 
>  * 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.

In the past we were rather casual at who we let into the ~bzr group. I know you
changed it to a moderated group. I'm just curious about permission levels,
though. It is one thing to have someone able to join a group to let them have
access to marking bugs closed/triage them. As well as to get automatic emails
for all bugs related to the project.

It is a bit different to give them write permission on the "official" Bazaar
branches. And then again to give them write permission on the official release
archive. Though if they have write perms to ~bzr/bzr/trunk, I'm fine giving
them write perms to ~bzr/+archive.

I guess this is more that there should be some granularity between having
permissions to handle bugs, and having permissions to define what is official
code from the project. (Bugs can be trivially re-triaged, releasing a version
of code with a back-door in it is a project injuring thing.)

> 
>  * It can build amd64 packages for people who only have an i386
> machine (like me.)

That is nice. Though why dpkg/etc can't cross-build seems a little strange. gcc
has supported target platforms for a long time.

> 
>  * I'm generally interested in dogfooding the PPA facility and making it better.

I agree, it is good to be using it.

> 
>  * I'd rather not deal with the minor hassle of maintaining our own
> archive, getting people access to write to it, etc.
> 

Also nice. Especially when we have RMs that are not Canonical employees. It
means less of my time uploading packages for other people.

> 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.
> 

The normal latency for "release bazaar X.XX" to the time we get a package for
it is measured in *days* not in minutes. So 10min isn't a big deal if it means
we can hit the "package this" button.

>  * 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.

I believe Ubuntu PPC has moved to community supported. I guess since Mac
switched to Intel laptops anyway, the PPC market is dwindling. (I run PPC, but
I don't run Ubuntu on it.)


> 
>  * Also, at the moment it only builds for Ubuntu, not Debian.  (Though
> again, there seems to be interest in supporting both.)
> 

This is probably a bigger issue. Though don't the Debian people have their own
archive on one of the official debian sites?


>  * 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.

We can. Though as I mentioned if we aren't building packages for other
platforms *today* there is no real loss here.

> 
> 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.
> 

I think this is a decent transitional step. The more we can get automated and
fostered off into other systems, the happier I am.

John
=:->

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (Darwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFHaSh+JdeBCYSNAAMRAkeYAJ9Ksi1oVQtPWqcVwM/J7KjLP88NdwCglb1b
nJKieAzUo+WgcwxdPUbjMSI=
=Gwwh
-----END PGP SIGNATURE-----



More information about the bazaar mailing list