Differences between revisions 9 and 10
Revision 9 as of 2013-03-18 16:05:09
Size: 4281
Editor: zequence
Revision 10 as of 2013-03-18 16:10:42
Size: 4323
Editor: zequence
Deletions are marked like this. Additions are marked like this.
Line 103: Line 103:
bzr get-orig-source
Line 114: Line 115:
bzr get-orig-source

  • When to do stable release update
  • How to do stable release update

Fix Bug and do a SRU

Find Bug Fix

Add full description here

Find the upstream fix. Then, create a patch of it.

Create bzr branch with the new fix

Get the source for the development version. You'll always start by fixing the development version first. Using jackd2 as example.

bzr branch ubuntu:jackd2

You'll also want to get the source for all releases where you want to add the fix, going back one release at the time (if the development release includes the fix, just skip it).

bzr branch ubuntu:quantal/jackd2 jackd2-quantal
bzr branch ubuntu:precise/jackd2 jackd2-precise

We'll start by creating a debian patch using edit-patch. Decide the name for the patch (some packages have a convention for how to name patches). Use a name that describes what the patch fixes.

edit-patch jackdbus-stop-fix.patch

edit-patch will create a temporary folder in /tmp/. While in there, apply your upstream patch doing:

patch -p1 < /path/to/jackd2-upstream-fix.patch

Hopefully your patch was well applied. If not, you may need to add changes manually, which will require for you to know a bit about the code used for that package.

Once changes were applied, use Ctrl+D to exit edit-patch. This will create the debian/patches/patch, and opens debian/changelog. Adjust it to contain the correct info. Rename RELEASE to the release in question (precise, in this case), and describe what the patch does (here I just add which bug it fixes).

jackd2 (1.9.8~dfsg.1-1ubuntu2) precise; urgency=low

  * debian/patches/jackdbus-stop-fix.patch: [fixes LP: #956438]

 -- Kaj Ailomaa <>  Mon, 18 Mar 2013 16:25:32 +0100

When ready, close down the editor. You'll be asked if to commit. Answer No. We still need to update the patch description.

OK to commit? [Y/n/e]

To edit the patch description, open your patch with your text editor of choice:

nano debian/patches/<yourpatch>.patch

At the top, you see a header, looking something like this:

## Description: add some description
## Origin/Author: add some origin or author
## Bug: bug URL

Follow the Debian Patch Tagging Guidelines on what to add. For example:

## Description: This patch, consisting of two upstream git commits, fixes an issue where jackdbus is left unresponsively, running in the background, when attempting to stop it.
## Origin/Author: upstream,$
## Bug:
## Applied-Upstream: 1.9.9

We're all done with changes. Let's commit now, so that the changes stay permanent, using debcommit:


That will have created a bzr commit based on your additions to debian/changelog.

Test your fix

You may either test your fix locally, or upload it to a PPA.

Upload to PPA

Upload to PPA. Make sure you have a GPG signing key ready.

sudo apt-get build-dep jackd2
bzr get-orig-source
fakeroot debian/rules clean
debuild -S -sa
dput ppa:<username>/<ppa>

Build locally

Build package locally. There are a few ways to do that. One way is (will build for this release and arch):

sudo apt-get build-dep jackd2
bzr get-orig-source
fakeroot debian/rules clean
debuild -S -sa

Upload your branch, and create a merge request

First, let's make sure the bzr branch is clean

bzr revert

Then, push it to a new branch, based on the original package name and release, like so:

bzr push lp:~<yourlpid>/ubuntu/<release>/<package>/<branchname>

For example:

bzr push lp:~zequence/ubuntu/precise/jackd2/fix-for-956438

Then, open launchpad in a browser and create a merge request by doing:

bzr lp-propose

UbuntuStudio/StableReleaseUpdates (last edited 2013-05-17 01:34:08 by zequence)