FM Radio Tuners in Feisty

  • Post author:
  • Post category:Uncategorized

I upgraded to Feisty about a month or so ago, and it has been a nice improvement so far. One regression I noticed though was that my USB FM radio tuner had stopped working (or at least, Gnomeradio could no longer tune it).

It turns out that some time between the kernel release found in Edgy and the one found in Feisty, the dsbr100 driver had been upgraded from the Video4Linux 1 API to Video4Linux 2. Now the driver nominally supports the V4L1 ioctls through the v4l1_compat, but it doesn’t seem to implement enough V4L2 ioctls to make it usable (the VIDIOCGAUDIO ioctl fails).

To work around this, I ported the tuner code in Gnomeradio over to V4L2. The patch can be found attached to bug 429005. I don’t know if this patch will go in as is though, since it only works for drivers supporting V4L2. Perhaps it’d be worth supporting both APIs, using V4L2 if both are supported.

Launchpad 1.0 Public Beta

  • Post author:
  • Post category:Uncategorized

Today we unveiled the Launchpad 1.0 User Interface, which has been in private beta for the last few months. As well as the improved visual appearance, there are a number of new features such as the ability to add your own branding to Launchpad pages associated with your project (for example, Ubuntu’s pages).

As mentioned in the press release, we’ve got two new high profile projects using us for bug tracking: The Zope 3 Project and The Silva Content Management System. As part of their migration, we imported all their old bug reports (for Zope 3, and for Silva). This was done using the same import process that we used for the SchoolTool import. Getting this process documented so that other projects can more easily switch to Launchpad is still on my todo list.

As Launchpad is a user of Zope 3 technology, it is great being able to provide the bug tracking infrastructure for the project. It should also make it easier to collaborate on bugs that affect both Launchpad and Zope.

ZeroConf support for Bazaar

When at conferences and sprints, I often want to see what someone else is working on, or to let other people see what I am working on. Usually we end up pushing up to a shared server and using that as a way to exchange branches. However, this can be quite frustrating when competing for outside bandwidth when at a conference.

It is possible to share the branch from a local web server, but that still means you need to work out the addressing issues.

To make things easier, I wrote a simple Bazaar/Avahi plugin. It provides a command “bzr share“, which does the following:

  • Scan the directory for any Bazaar branches it contains.
  • Start up the Bazaar server to listen on a TCP port and share the given directory.
  • Advertise each of the branches via mDNS using Avahi. They are shared using the branch nickname.

For the client side, the plugin implements a “bzr browse” command that will list the Bazaar branches being advertised on the local network (the name and the bzr:// URL). Using the two commands together, it is trivial to share branches locally or find what branches people are sharing.

I am not completely satisfied with how things work, and have a few ideas for how to improve things:

  1. Provide a dummy transport that lets people pull from branches by their advertised service name. This would essentially just redirect from scheme://$SERVICE/ to bzr://$HOST:$PORT/$PATH.
  2. Maybe provide more control over the names the branches get advertised with. Perhaps this isn’t so important though.
  3. Make “bzr share” start and stop advertising branches as they get added/removed, and handle branch nicknames changing (at this point, it is pretty much blue sky though).
  4. Perhaps some form of access control. I’m not sure how easy this is within the smart server protocol, but it should be possible to query the user over whether to accept a connection or not.

It will be interesting to see how well this works at the next sprint or conference.

SchoolTool Moves to Launchpad

  • Post author:
  • Post category:Uncategorized

Recently, the SchoolTool project has migrated to Launchpad for their bug tracker.

We performed an import of all their previous bug reports using a new bug importer I wrote. This was the third Launchpad bug importer I’d written (the previous ones being for the Ubuntu Bugzilla import and a SourceForge importer), so I wanted this one to be the last. So the design of this importer was to have a simple XML format as an intermediate step. That way we only need to target the XML format to support a new bug tracker. This will also make it possible for projects to provide their bug data in a form we can consume for the cases where they want to migrate their bugs to Launchpad but Canonical doesn’t have the resources to do the migration.

For the SchoolTool migration, Jean-François Roche put together a simple Roundup exporter.

We should have some documentation about the intermediate XML format available at some point for projects interested in moving to Launchpad.

American Hoax

One of the books I read over the holidays was American Hoax by Charles Firth. This book is apparently what he was working on while the rest of the Chaser guys were doing The Chaser’s War on Everything.

The book is an exploration of different aspects of U.S. politics from an outsider’s perspective. Of course, it is a bit difficult to get a good view of the different political movements from the outside, so he creates a number of characters representing different points on the political spectrum as a way to become part of the various movements. Each of these characters was given a suitable back story, including Wikipedia articles for some and websites for others.

The book is definitely worth a read. I am not sure if it has been released outside of Australia yet, but is available from Dymocks.