As Dobey mentioned, in order for a patch to be accepted into an already released version of Ubuntu, it must got through the Stable Release Update (SRU) process. The bar to entry for SRUs is quite high. A simple way to sum up the thinking behind the process might be: "The bug we know is better than the bug we don't know about." In practice, that means that only targeted bug fixes are allow and no changes that are too "intrusive."
There are a number of requirements that must be met in order to proceed with an SRU:
- The bug is fixed in the current development release (i.e. quantal).
- The bug report's description must be updated to include a justification for why the fix is needed in the stable release, a test case to reproduce the bug and verify it has been fixed, and a discussion of the fix's regression potential.
- The Launchpad team
ubuntu-sru
should be subscribed to the bug report.
- The package is then uploaded to release
-proposed
In order for this to happen, you will need to go through the sponsorship process (more info below).
After all that has occurred, the SRU team will verify that the package in -proposed
resolves the bug. Then the package will be pushed into -updates
after it passed a minimum aging period of 7 days.
Finding the right person
Your question hints at the fact that sometimes Launchpad seems like it is where patches go to die. Sadly, if you don't know the process it can feel like that, but I swear it's not really that bad. Luckily, the main thing you need to know is simple. Check out the sponsorship process for all the details and some hints, but the most important part is to subscribe the ubuntu-sponsors
team to the bug report. That ensures that it will show up in the sponsorship queue and get looked at by an honest to god Ubuntu developer.
If you need to talk something over in real time, #ubuntu-devel
on Freenode IRC will do the trick. Check the channel topic for the current patch pilot. They're there to help you. If there's no pilot on duty, feel free to ask for help in the channel, but please be patient.
Getting everything ready to go
In order to make the process go as quickly as possible there are a few things to do.
Update the bug description to look like:
[Impact]
Here's an explanation of the impact of the bug on users and a
justification for backporting the fix to the stable release
[Test Case]
Step
By
Step
Instructions
To Verify
The Fix
[Regression Potential]
Here's a discussion of any potential for
regressions.
[Original Report]
Every thing that used to be in the description is
retained below.
Next, prepare your patches. Things will go much quicker if you provide debdiffs that take care of all the packaging bits rather than a patch against the upstream source. This includes using the packages patch system if it uses one. Luckily add-patch
from ubuntu-dev-tools
can take care of that for you.
Let's walk through this. First grab the source and the patch in the bug report:
$ pull-lp-source compiz precise
$ wget https://bugs.launchpad.net/ubuntu/+source/compiz/+bug/974242/+attachment/3141645/+files/fix-974242.patch
Now we'll add the patch to the source package:
$ cd compiz-0.9.7.8/
$ add-patch ../fix-974242.patch
This will add the patch to debian/patches
and run dch
prompting you to add a new entry to debian/changelog
Adjust the entry to target proposed and increment the version number so that it will be below the next version uploaded to the development release. Like so:
compiz (1:0.9.7.8-0ubuntu1.1) precise-proposed; urgency=low
* debian/patches/fix-974242.patch: [DESCRIBE CHANGES HERE]
-- Your Name <you@example.com> Mon, 11 Jun 2012 17:37:59 -0400
The file at debian/patches/fix-974242.patch
also has some headers that you might want to edit:
## Description: add some description
## Origin/Author: add some origin or author
## Bug: bug URL
Now build your new source package:
$ debuild -S -us
And create the debdiff:
$ cd ..
$ debdiff compiz_0.9.7.8-0ubuntu1.dsc compiz_0.9.7.8-0ubuntu1.1.dsc > sru-for-lp-974242.debdiff
You can now attach the resulting debdiff
file to your bug report.
Best Answer
File a bug report on Launchpad and tag it with the 'upgrade-software-version' tag.
For other tags see: https://wiki.ubuntu.com/Bugs/Tags