I have a laptop (eeePC 900) running standard Ubuntu Hardy Heron 8.04, which I used for on-the-go computing. To get connected to the internet, I used one of these connection, depending on where I am:
- wired network via ethernet (sometimes, at home)
- WiFi (mostly at home, sometimes in wireless@sg area)
- Mobile 3G network via Bluetooth to my Nokia N95 (all other places; see here for the setup)
This is great; I could be online almost anywhere. However, there is one slightly annoying problem. Currently, there is a “bug” in Ubuntu Hardy (see here). Basically, the 3G dial-up is not recognized by the network manager. A few applications will then launched in offline mode.
Previously, I have only been surfing the internet on the 3G network. When Firefox launched in offline mode, it is a simple two clicks to turn it to online mode. Slightly annoying but not a problem. Then, I started using Evolution as well to check my mails on-the-go. Another two clicks for that to enable online mode.
Now however, I got the same problem with Pidgin. Only thing is, it is four clicks for each IM network, not two clicks for the entire application. For instance, to turn MSN from offline to online, I need to disable it, then enable it. Same for Googletalk. Same for IRC. A minor annoyance became a big pain-in-the-hindquarter.
Fortunately, there is a simple workaround (a smart guy posted the workaround in the launchpad bug page). It does not apply to every scenario, but it worked well enough for my situation.
What is this workaround? I just need to take my wired connection off roaming mode and set to DHCP instead. When I do this, the network manager will not try to be “smart” anymore and assume there is always a network running. So, the applications no longer thought there is no network and try to be “smart” in turn, but going into offline mode.
Incidentally, this bug illustrate the problem when you try to make a piece of software “smarter”. Inevitably, you might miss corner cases and cause breakage for some users.
For completeness, here is a step-by-step GUI for the workaround.
1. Left click the network manager applet in the notification area, select “Manual configuration…”
Top Panel Menu > System > Administration > Network
The “Network Settings” dialogbox will open.
2. Click “Unlock” and enter your sudoer password. Then, select the “Wired connection”.
3. Click “Properties”. The “Properties” dialogbox will open. Uncheck “Enable roaming mode”, select “Automatic Configuration (DHCP)”.
4. Click “OK”. It will take a few seconds to change the configuration.
And this is the final “Network Settings” dialogbox.
That’s it, simple steps. Now, the applications no longer start in offline mode.