Development Update
Isn’t a new development release always exciting? We are six weeks into the cycle and things are ticking on quite nicely. Today we will reach Feature Definition Freeze, so all the feature specifications should be written and approved, giving us a clear direction where to go this cycle. Next week we will release Alpha 1, so it will be a nice opportunity to download an ISO, test it and file some bugs to give our developers a bit more to do.
For those of you who are adventurous or who would like to participate in development, this will be good news: Colin Watson, long-time Debian and Ubuntu developer, started the discussion around a team dedicated to development release maintenance. What does this mean? This time the development release should be more likely to be buildable, installable, upgradeable and generally sane during the Alpha and Beta stages. This will make it much easier to run it for development or testing. If you want more information read the specs: Priorities of the +1 maintenance team and discussed infrastructure changes. All of this said: if it says “Alpha” it means Alpha, so if you’re not comfortable with dealing with occasional breakage, better wait until Beta or the final release. If you are interested you might find the page on using development releases and fixing problems a good read.
Events
We had our first Ubuntu Community Appreciation Day last week and it was great. There was so much positivity spread, let’s hope we will keep this spirit alive until the next one. Thanks again Ahmed Shams for setting it up. If you missed out on the action, here is a few folks who participated: James Gifford, Bilal Akhtar, Michael Hall, Juha Siltala, Dario Cavedon (Italian), Mark Shuttleworth, Daniel Holbach, Joey Sneddon at OMG!Ubuntu!, Benjamin Kerensa, Jorge Castro, Amber Graner, Jono Bacon, Elizabeth Krumbach and many many more. The Facebook page, the Google+ search or Twitter search should give you an idea how wide-spread this all was.
Also we decided the date of the next Ubuntu Developer Week! The schedule is not sorted out yet, so here’s your chance to request a topic for a session in the comments below. Ubuntu Developer Week is going to happen from 31st January to 2nd February. It’s going to be great!
Things that need to get done
If you want to get involved in packaging and bug fixing, there’s still a lot of bugs that need to get fixed:
- There’s Merges that need to be done (main, restricted, universe, multiverse).
- Also is the Ubuntu Mozilla team looking for help, so if you’re excited about Mozilla and what’s happening there, join IRC, talk to the guys on #ubuntu-mozillateam on irc.freenode.net.
- And then there’s Security bugs you can take a look at, the team is a friendly bunch and they’re incredibly helpful in getting your patch reviewed.
- There are bitesize bugs.
First timers!
We have somebody who got their first (code) contribution into Ubuntu: it’s Achraf Fouwad. Thanks a lot and keep up the good work!
Spotlight: discussing bug fixes
One piece of feedback we got at UDS was that it would be nice to have more bug fixes examined and explained in a detailed fashion to explain what developing the Ubuntu platform actually entails. So without further ado a few recent bugs that were fixed in ‘precise’:
- Bug: python-zeitgeist is missing a Replaces on zeitgeist-core (trying to overwrite ‘/usr/share/pyshared/zeitgeist/__init__.py’) noticed by Michael Bienia
Change: lp:zeitgeist revision 20
What happened here? The error message in the bug report is pretty clear: at some stage during the upgrade process, a file that was being installed by package A was already installed by package B.
This is what Debian policy 7.6.1 has to say about this: “It is usually an error for a package to contain files which are on the system in another package. However, if the overwriting package declares that it Replaces the one containing the file being overwritten, then dpkg will replace the file from the old package with that from the new. The file will no longer be listed as “owned” by the old package and will be taken over by the new package.”
The fix was simple: add the Replaces: instruction to debian/control. Done. What you might have to make sure is: did the file really move or do both package A and B ship it? Also you have to find out the version number when the file moved first.
Problem fixed by: Didier Roche.
- No bug filed, but the problem was that kerneloops.org is currently offline.
The fix was pretty straight-forward if you know where to look. The file shipped as /etc/default/kerneloops contains a setting called enabled. This needed to be set to 0.
Change: lp:kerneloops revision 28.
Problem fixed by: Martin Pitt. - No bug filed, but the problem was that the build of the previous upload did not succeed.
If you have a look at the build log of 0.7.0-1ubuntu1, you can see in the last quarter the following error message:checking for Python with Avahi, Twisted and XMPP protocol support... false configure: error: Python with twisted support is needed for avahi twisted tests make: *** [debian/stamp-autotools] Error 1
To resolve this you had to add two packages to the list of Build-Depends, which means packages necessary to build the package.
Change: lp:telepathy-salut revision 23.
Problem fixed by: Ken van Dine. - Bug: Gnote prevents itself from showing in Dash, noticed by Matthew Babbs.
This bug was filed and fixed by Matthew Babbs. He seemed to have figured out the problem beforehand already, because the bug description already contained the location of the problem. Comment 1 contained the fix: in a list of desktop environments where the icon is shown, Unity needed to be added to the list of GNOME;XFCE.
Luckily Andrew Starr-Bochicchio picked up the fix and integrated it into the package. - No bug filed, but the issue was that the ubuntu-mono package still made use of the old imagemagick3-extra package. In precise version ImageMagick 6.6.9 was introduced which changed the SONAME and thus the package name from imagemagick3-extra to imagemagick4-extra. This happens fairly often and is one of the cases of library transitions. Eventually the old version will be removed, so all the packages which rely on the old package need to get updated.
The fix simply involved changing the package name from imagemagick3-extra to imagemagick4-extra in the Build-Depends field.
Change: lp:ubuntu-mono revision 33.
Problem fixed by: Michael Terry.
Get Involved
- Read the Introduction to Ubuntu Development. It’s a short article which will help you understand how Ubuntu is put together, how the infrastructure is used and how we interact with other projects.
- Follow the instructions in the Getting Set Up article. A few simple commands, a registration at Launchpad and you should have all the tools you need, and you’re ready to go.
- Check out our instructions for how to fix a bug in Ubuntu, they come with small examples that make it easier to visualise what exactly you need to do.
Find something to work on
Pick a bitesize bug. These are the bugs we think should be easy to fix. Another option is to help out in one of our initiatives.
- Help out with fixing packages that don’t build anymore.
- Help out with security bugs.
In addition to that there are loads more opportunities over at Harvest.
Getting in touch
There are many different ways to contact Ubuntu developers and get your questions answered.
- Be interactive and reach us most immediately: talk to us in #ubuntu-motu on irc.freenode.net.
- Follow mailing lists and get involved in the discussions: ubuntu-devel-announce (announce only, low traffic), ubuntu-devel (high-level discussions), ubuntu-devel-discuss (fairly general developer discussions).
- Stay up to date and follow the ubuntudev account on Facebook, Google+, Identi.ca or Twitter.