Packaging/SourceBuilds/Draft

Not logged in - Log In / Register

Revision 2 as of 2010-08-18 10:08:00

Clear message

Launchpad Help > Packaging > Source package branches

lp-diamond-16.png Source package recipes in Launchpad

Home

Getting Started

Knowledge Base

List of Daily Builds

Overview

Launchpad can build Debian-style packages for Ubuntu directly from Bazaar branches hosted in Launchpad.

You can configure Launchpad to perform these builds once a day (if the source has changed) or when you request them through the web interface or Launchpad's API.

audacity-daily-builds.png

A PPA containing daily builds

How source package branches work

1. You tell Launchpad where to find the source code you want to build.

2. You write a recipe that tells Launchpad where to find packaging instructions and how to apply them.

3. You tell Launchpad when you want the builds to happen

  • each day (if there has been a change in the source)

  • or only when you ask for one (either through the web or API).

4. Launchpad builds a source package.

5. Launchpad builds the source package into a binary and puts it in the PPA you specify.

Launchpad can now build directly from source code, creating a source package and then creating binary packages from the source package. You can configure Launchpad to perform these builds daily (if the source has changed), run them manually, or script them yourself using the Launchpad API. The terms "Source Build" and "Daily Build" are more or less interchangeable.

The build results can be discarded if a build-test is all that is wanted, but usually they are kept and made available so that they can be tested in use as well. Obviously, as there is automation involved in the process the resulting packages can be risky as they haven't had human verification. This means that there has to be some care taken with them, and the project and packager should do their best to ensure that the risks are minimized. They are also not something that an average user should be using. With due diligence the benefits can certainly outweigh the risks though.

Why Daily Builds?

There could be some downsides to having daily builds, so they may not be suitable for your project.

< Packaging

Getting started >

Setting up a daily build

If you would like to set up a daily build then see BzrBuilder for one way to do this. Be sure to also check out GoodDailyBuilds for some tips on how to ensure that the daily build will be most useful. Running daily builds are not maintenance-free, you need to follow upstream development so that if the upstream project adds or removes dependencies your builds don't break.

Available daily builds

See AvailableDailyBuilds for a list of some of the daily builds available. Builds on this page should adhere to the principles in GoodDailyBuilds.

< Packaging

Getting started with source package branches >