Unwire with NetworkManager

Dude, it's just easier with NetworkManager...
Dude, life's just easier with NetworkManager...

I cleaned up NetworkManager’s Bluetooth PAN support (originally by Bastien) to show Bluetooth devices in the nm-applet menu.  Then I put together this walk-through to show how easy life is these days.  DUN support needs a bit more work (it’s more complicated but also more capable); but tons of phones have PAN so let’s get it out there.  The plugin support that Bastien recently added to the gnome-bluetooth wizard got us the other 25% of the way towards seamless Bluetooth networking on your desktop.

Pairing Your Phone

So <i>that's</i> what that Bluetooth icon is for!  Who'd have thought...
So that's what that Bluetooth icon is for! Who'd have thought...

Obviously we start with the Bluetooth icon, since you need to find your phone and then pair with it.

Kyle was my barista this morning...  Apparently she has a MacBook.
Kyle was my barista this morning... She has a MacBook and pulls a mean espresso.

Pick your phone.  Hopefully you remembered to turn Bluetooth on and make your phone visible, otherwise do it now and hit the “Rescan” button.  As you can see, this is more a tutorial in gnome-bluetooth than NetworkManager right now.

The Money Note

Once you’ve paired and entered the passcode, we finally get into NetworkManager territory.  nm-applet installs a gnome-bluetooth plugin that does the magic of creating a Connection for your phone in GConf.  And all it takes is checking a box.

Magic!
Magic!

Patience!  You’re one more click away from all the Facebook and Twitter and MySpace and Flickr and blogging and Googleness you crave so much.  It’s just so hard being without this Internet thing for more than a few minutes.

The default connection name wants some fixin'.
The default connection name wants some fixin'...

How easy was that?  You’ll need gnome-bluetooth >= 2.27.7.1, bluez >= 4.42, and git master of both NetworkManager and network-manager-applet.  Packages for Rawhide soon.

Die HAL Die

Time for a Stalinist purge
The purge is complete

As of a week ago or so, HAL is no longer required by either NetworkManager or ModemManager.  This helps streamline the hardware detection process and cleans up that code a lot.  It was a fun ride and a lot of other great stuff came along with the udev port, because rewriting everything to use udev pretty much required cleaning up a bunch of other stuff.  The udev parts were a lot easier than I thought they would be; what was complex was rewriting a ton of ModemManager to be more flexible and work better with multi-port modems on the one hand, and really stupid quirky hardware on the other.

For everyone in the US, have wonderful 4th of July.  To everyone who’s not, have fun at the Desktop Summit.  Had prior plans meaning I couldn’t attend, but I’m sure the Red Hat team will honor my absence by spreading the love and drinking all the liquor.  Rock on, GNOME.