My first linux contribution is a disaster

by paul on January 24, 2010

So I recently submitted a patch to the NetworkManager component: https://bugzilla.gnome.org/show_bug.cgi?id=607731  - but it turns out to be a duplicate because this problem was addressed in https://bugzilla.gnome.org/show_bug.cgi?id=600779 - by default Bugzilla doesn’t seem to include ‘resolved’ defects in the search results. You have to go to advanced search and select all statuses.

So, if my patch wasn’t needed, and this issue has been resolved, then why doesn’t the source code in trunk have this change? Bug 600779 mentions that service providers is deprecated, but by what? Ubuntu 9.10 still uses it, because when I edited /usr/share/mobile-broadband-provider-info/serviceproviders.xml it worked fine for me.

If service providers is deprecated, then why isn’t there something on the homepage? Bugzilla doesn’t seem to report which source files were changed in a bug - something I quite like in JIRA. See comment #1:

VirginInternet would still be used for tethering a phone, but I've added
VirginBroadband.  Thanks!

But what got changed? That would give me a clue.

Checking the version I’m running:

paul@paul-laptop:~$ dpkg -s mobile-broadband-provider-info
Package: mobile-broadband-provider-info
Status: install ok installed
Priority: extra
Section: admin
Installed-Size: 180
Maintainer: Ubuntu MOTU Developers <ubuntu-motu@lists.ubuntu.com>
Architecture: all
Version: 20091009-0ubuntu1
Breaks: libmbca0
Description: database of mobile broadband service providers
Contains service provider specific settings of mobile broadband providers in
different countries.
Homepage: http://live.gnome.org/NetworkManager/MobileBroadband/ServiceProviders
Original-Maintainer: Antti Kaijanmäki (Wellark) <antti@kaijanmaki.net>

So if Ubuntu are still using it then why wouldn’t there be patches and maintenance releases?

Now, searching for Ubuntu specific information turns up NetworkManager provider information which doesn’t have the Virgin APN I need. So how do I fix this? Well, it says:

If you discover you need provider information from here or elsewhere, please file a bug against the mobile-broadband-provider-info package so we can improve the experience for all users to a level where all providers Just Work out of the box. https://bugs.launchpad.net/ubuntu/+source/mobile-broadband-provider-info

As today (16/01/09) bug #317860 at Launchpad cover a lot of Service Providers missing. (https://bugs.edge.launchpad.net/ubuntu/+source/mobile-broadband-provider-info/+bug/317860)

I’m was stunned to find out that this type of generic information was window manager specific (GNOME) now it looks like it is distribution specific (Ubuntu). If anyone can tell me the reasoning behind this, I’d love to know. Because right now, it looks crazy to me. Especially from a point of view that I just want to contribute something. It’s kind of weird that it’s even Operating System specific really, it really just should be a web service available to anyone and everyone, and the Operating Systems just update from it. Anyway… continuing the saga…

This bug report makes interesting reading. Apparently everything was fixed last year: https://bugs.launchpad.net/ubuntu/+source/mobile-broadband-provider-info/+bug/280490

It also says that the Virgin website documents the APN being VirginBroadband. But that page doesn’t exist any more. I can only find one reference to APN on their site, and thats the wrong one.

So, I’ve updated the Ubuntu wiki to add the Virgin APN to the list of providers. I wasn’t sure whether to update the Mobile Broadband Cards section with the Huawei e160e, since they’ve already got the 160 and 160g. But I can’t find any source code - I got as far as finding this: http://packages.ubuntu.com/source/lucid/mobile-broadband-provider-info - but the trail ends there.

Anyway, I’ve spent way too long on this. What started out as a simple patch has only shown me how little I know about the Linux environment, packages, and how the source is maintained. Maybe over time I’ll get more familiar with it all.

{ 0 comments }

Week in Review - 2010-03

January 22, 2010

Getting my Virgin Mobile Broadband working, vlc media player rocks, playing with Wordpress, and reading up on Joomla.

Read the full article →

Ubuntu, Virgin Mobile Internet Pre-paid (in Sydney), and the Huawei e160e

January 21, 2010

How I got my Huawei e160e USB 3G modem working with Virgin Mobile Internet, and Ubuntu 9.10 in Australia (Sydney).

Read the full article →

A bit of xmas admin support

December 29, 2009

A simple request to install Photoshop Elements on Vista leads to much frustration and time wasting. How can the non-technical users deal with this complexity?

Read the full article →

A simple task queue

November 25, 2009

I’m working on a little sample framework - really only to keep my sanity and practice my chosen craft - that allows you to string together tasks in a pipeline for processing. To exercise that framework - to flush out the pros and cons of the implementation - I’m writing a sample application.
The basic idea [...]

Read the full article →

Rapache on Ubuntu 9.10

November 15, 2009

I’ve just now stumbled across Rapache, a useful GUI tool that makes configuring apache easy. I found it by accident in the Ubuntu Software Center, but unfortunately it would freeze while trying to add a new domain. I searched the web for answers, and found a bug report.
This didn’t specifically reference Ubuntu 9.10 (rather, 9.04) [...]

Read the full article →

Tagging with Appengine DataStore

November 7, 2009

I’ve been looking into how to implement a tagging mechanism with Appengine (Python). By using a StringListProperty, you can associate a list of tags with an entity. The model would look something like this:

from google.appengine.ext import db

class Sample(db.Model):
name = db.StringProperty(required=True)
tags = db.StringListProperty()

Now, assuming we want to find the entities tagged with [...]

Read the full article →

No module named _multiprocessing

October 26, 2009

I’m getting back into appengine at the moment, and I came across this error:
No module named _multiprocessing
A google search turned up this error report:
http://code.google.com/p/googleappengine/issues/detail?id=1504
which lead to this post:
http://code.google.com/p/soc/wiki/GettingStarted

The problem was of-course, that I was using Python 2.6 instead of 2.5.
I love Linux, the solution is trivial:
The workaround for this is to install Python 2.5 [...]

Read the full article →

Amazon web services via Grails

October 10, 2009

I just recently noticed that Amazon have changed the way you invoke their Product Advertising API - you now need to sign requests as described in the Example REST Requests.
I obviously haven’t been reading my emails, since the first clue came when I saw:
<Error><Code>MissingParameter</Code><Message>The request must contain the parameter Signature.</Message></Error>
Luckily, they have a java example [...]

Read the full article →

Locked subversion working copy

October 9, 2009

I don’t know how it happened, but my local working copy got locked. This meant that every time I tried to commit, I got a ‘working copy is locked’ error.
The solution was easy, after I found a reference in the FAQ:
svn cleanup <directory>

Read the full article →