When I set up the network-manager trunk PPA I also planned to provide daily builds at some point. I don’t want to go into depth, but dailies are really a great way to get a better working upstream relationship as they can just commit fixes to the branch they care about most (yeah, developers usually live for the trunk) and users will instantly be able to verify it the next day. Further it helps upstreams, because they now can tap the (impressively huge) ubuntu community more effectively. Also with a bunch of users running your dailies, upstream gets instant feedback on regressions they introduce, which usually reduces the required debugging to a minimum.
How was it done?
After thinking about it for a bit I found that I don’t want to setup my own daily bot and asked
Fabien (fta) – who already runs the daily builds of the ubuntu mozilla and chromium teams – what it would take to include our network manager packages in his daily build bot. The requirements were rather easy to satisfy:
- ensure that no one not fully trusted has write access to the branches
- provide a get-orig-source rule that produces proper orig.tar.gz from latest git snapshot
- provide a LOCAL_BRANCH feature which allows the bot to just update a local copy of the upstream git tree on every update rather than cloning the full git every day
You can look at the debian/rules of our
network-manager packaging branch to see how we implemented the required get-orig-source and
LOCAL_BRANCH feature for git.
After fixing our branches to match those requirements, Fabien swiftly added our network-manager, network-manager-applet and modemmanager branches to his build bot and now daily builds come out of it every day! Yay!
How to enable the daily PPA?
Add the ppa lines to your apt sources.list:
deb http://ppa.launchpad.net/network-manager/trunk/ubuntu karmic main
and import the
PPA key:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BC8EBFE8
Next run
sudo apt-get update; sudo apt-get dist-upgrade
which should bring you the latest NM trunk dailies; reboot after uprade has finished.
Who should use dailies like this?
- All advanced users that run the current ubuntu development release (e.g. karmic for now) that also want to focus their testing efforts on network-manager
- Users that have filed a bug against NM which then got fixed upstream can verify the fix by trying our daily build.
- Since we are targeting 0.8 for karmic the dailies reflect what will go into karmic soon. So if you like to run the bleeding edge and like to report issues right when they happen, this PPA is meant for you too.
- We also have jaunty builds, but those are not yet fully tested. If you want and run jaunty please try them and report your findings back (of course, be sure that you know how to recover from not having network-manager network)
What to do if there is a regression?
You can find me (asac) and other NM developers in the #nm channel on irc.freenode.net.
Update: easier way to add the ppa on karmic is to just run (thx to Dominic Evans – oldmanuk for pointing this out):
sudo add-apt-repository ppa:network-manager/trunk