OpenNMS in China (update)

Final Update: We asked a client of ours who speaks Chinese to look at this, and this is his reply:

It’s graduation project composed by students in Tungnan University. I think the video shows they were doing oral defense for their graduation project.

So it’s Taiwan, not Japan, and it’s a student project – cool.

[Note: Google initially told me this was Japanese. I now have confirmation it is in Chinese, so I have updated this post]

During this holiday, Markus made an interesting discovery on YouTube:

It appears to be a long presentation in Chinese on OpenNMS. At the moment we don’t have any official partners in China, so it was cool to see someone take the trouble to put on this demonstration, complete with OpenNMS logo gift bags.

It has been a long time since I was in China, and I didn’t go for OpenNMS so I don’t know any of the people in this video. I must admit that the CEO in me is a little nervous about the use of our trademark, but overall anything that promotes the team’s work is a Good Thing(tm).

If any of my three readers can shed some light on what’s going on in this video, I’d appreciate it.

#noapple – or There and Back Again

Okay, so back in the summer I decided to attempt to wean myself from Apple and to migrate to a Linux desktop. This is a much overdue post on how that went and how it is going. The TL;DR version is that I used Ubuntu 11.04 (Naughty Nightnurse) and liked it okay, then was excited to upgrade to 11.10 (Onanistic Oedipus) only to be somewhat disappointed with many of the changes. So I tried out Kubuntu, got frustrated and ran screaming back to Apple. I upgraded to Lion, realized that Lion really, truly sucks – sucks enough to make me rethink my decision to switch back. Then I find out that Debian testing (wheezy) now supports Gnome 3, so I loaded it up and I am extremely happy with it (and I’ve downgraded all of my Lion partitions back to Snow Leopard).

Okay, first some background. I use three main systems: a Desktop at the office (a 24-inch iMac (iMac9,1 to be exact) and an identical iMac at home (I bought them both, cheap, from B&H in New York). When I travel I take a second generation Macbook Air (Macbook3,1). The key to being able to use three different machines is that most of what I do is centralized on servers that I maintain. I am e-mail centric, and IMAP makes it really easy to access the same information on all three machines.

In order to start this migration, I needed some more IMAP-like services for things such as Calendar and Contacts. I found a solution in the SOGo project, which I talked about earlier. I’m still a big fan of it after several months.

Now, when it comes to Linux Desktop operating systems, there are basically two main choices: Fedora and Ubuntu. Since I was “gettin’ my freetard on” I would have preferred Debian, but they tend to lag a bit when it comes to new and shiny. Since Red Hat is headquartered nearby and I know a lot of the Fedora folks, I started out there.

Now, back in 2001 when I first started playing with Linux desktops, I was much more of a fan of KDE than Gnome, so I loaded up the KDE spin of Fedora 15. Now the biggest hurdle with getting Linux installed on Mac hardware is that for the last few years the graphics card of choice has been NVIDIA, and until recently open source support on NVIDIA was lacking. I found out in short order that the kernel option “nomodeset” is your friend in such situations. With it, I was able to get Fedora to boot enough to add the RPMFusion repos so I could load in the proprietary drivers.

Things went well for a couple of days until Fedora released a kernel upgrade, which broke my drivers, and RPMFusion didn’t have updated packages available. This lasted several days and made me frustrated enough to try out Ubuntu.

So I loaded up Ubuntu 11.04 with its fancy Unity interface. Again, I had to use the “nomodeset” kernel option to get it to load initially, but Ubuntu makes it extremely easy to add proprietary drivers. Like it is advertised, Ubuntu really tries to take the Linux desktop to the masses.

I should note here that both Fedora and Ubuntu (or more specifically, KDE and Unity) are downright beautiful. Compared to the Linux desktops I remember, they are gorgeous, and I believe they give both OS X and Windows 7 a run for their money.

I liked Unity, but wasn’t in love with it. There are still a number of issues (sometimes I launch programs that don’t show up in the Launcher) and it is plain that they are trying to emulate to some extent the OS X dock.

After using Ubuntu for several weeks, I noticed that my now aging iMac was a little slow. So when woot.com offered up a nice HP desktop for $500, I decided to buy it. The main selling point was an ATI graphics card, so I figured that it would be easier to install and run as a Linux desktop, and I wasn’t wrong. What really struck me was how much power I got for $500. If you’ve been paying the Apple tax as long as I have, you don’t realize how expensive their gear really is. Now, don’t get me wrong, I love the design and weight of my Macbook Air, but for desktops I’m not so sure the value is there.

Anyway, it was easy to migrate to the new system, and I was relatively happy until Ubuntu 11.10 was released. If you’ll remember, this was about the same time as the iPhone 4S was announced, and I could have cared less about that. With Ubuntu I was very excited, since I had become something of an Ubuntu fanboy, but I found 11.10 to be a disappointment.

They made a number of changes that impacted me negatively. First, Thunderbird, which worked well against SOGo in 11.04, was upgraded to version 7 on Mozilla’s questionable rapid release cycle. Unfortunately, SOGo isn’t able to keep its connector updated with so many releases and I lost my Address Book integration (Thunderbird doesn’t support CardDav and doesn’t appear to have plans to do so in the future). I also get frustrated with Ubuntu’s decisions to switch default apps somewhat willy-nilly. First it is Rhythmbox, then Banshee, and now apparently in 12.04 it will be Rhythmbox again.

For mail I tried to switch to Evolution, but for some reason I wasn’t able to get it to talk to SOGo either (that was probably an error on my end instead of Ubuntu, however). I was also surprised that they eliminated the screensaver, but I found out later that it was more a change to gnome-screensaver versus a decision by Ubuntu. Still, if you want to own the desktop market, a little stability is in order (and may arrive with the longterm release 12.04, Porky Paedophile).

In a fit of pique I decided to base the box and run Kubuntu. I always liked KDE and I figured that perhaps with the backing of Ubuntu for things like proprietary drivers, that would work for me.

So I set up Kmail, and Kontact and all that other good stuff (KDE has a specific option to connect to SOGo). I was a little shocked by how ugly Kontact was – they add these huge 800×800 pixel QR codes while not inheriting the system font size so the information you actually need is often hard to read, but overall the desktop was decent. If you like customizing your options to death, then this is the desktop for you.

However, I was frustrated by a number of little things. KDE kept complaining that it couldn’t connect to SOGo with these little, growl-like pop-up messages and I could not for the life of me figure out how to turn them off nor could I discover a log file that might help me diagnose the problem. All these things started to add up, but the straw that broke the camel’s back was a two hour stretch where I could not get a WebEx session with a client to work. This was impacting my productivity too much and I was so frustrated that I went and grabbed my old iMac out of the training room and resumed being an OS X desktop user.

Since I had decided that my experiment was a failure, I figured that if I was going to suck at the Apple teat I might as well go all in. I downloaded Lion and upgraded my systems, and sat back, a bit resigned, but knowing that my productivity was once again safe.

That was until I discovered that OS X Lion sucks.

I’m serious – I’ve been extremely happy with every release from Jaguar on (I missed Puma), but this one is just horrible. In Apple’s attempt to reduce the amount of thinking the user had to do, they’ve gone a bit overboard. Mail.app – my main application – seemed buggy and almost kludgy (I hate the way it defaults to threaded, or “conversation” view”). Since Apple wants to know all about your communications, they don’t add a way to encrypt your e-mail with GPG, or even a decent API. The folks over at GPGTools have responded by stripping almost every useful option out of their Lion release, which meant that I was constantly being prompted for my GPG key. Apple seems to insist on restoring every single session, application and tab once you close (or shut down) and to relaunch them with no visible method for disabling that behavior. Gone is the “Save As” function, now replaced by “Save a version” or “Export” in many programs, and be careful if you touch a file that hasn’t been accessed in awhile – it will be “locked” until you click a button in a dialog box. Sheesh – and they had the gall to knock Windows for having too many security pop ups – I touch numerous older files every hour and this gets annoying, fast.

And let’s not start in on the Address Book or Calendar. What’s with the vomit yellow-tan faux leather? The old apps were clean and sparse – making it easy to find what you need. Who actually uses a wall calendar anymore, much less needs to reminisce about flipping a page over to access the next month? What’s next, a rotary dial on the iPhone?

What I was pleasantly surprised about was the most talked about change in Lion – the “natural scrolling” feature. It is more natural, and I grew to like it almost immediately. But hey, want it in Snow Leopard? Download “Scroll Reverser“. Want it on X? Simply add a file to your home directory and restart X:

$ cat .Xmodmap
pointer = 1 2 3 5 4 6 7 8 9 10 11 12

(note the “5” and the “4” are reversed)

So now I was in a funk. A certifiable bad mood™. The Linux desktop seemed to be a dead end, most of what I loved about OS X had been taken away from me, and I wasn’t about to try Windows 7 full time. I did spent a little time with Linux Mint 12, but I didn’t like it nearly as much as Unity, and I wasn’t in love with Unity.

But then my friend Gareth Greenaway mentioned on Google+ that Debian testing (wheezy) now supported Gnome 3. I had avoided Gnome 3 because of the large amount of negative comments, especially from people like Linus Torvalds. Linus is a smart man, much smarter than me, and if he felt the need to throw that much bile at something, it must be bad.

Now, I have a soft spot for Debian. It’s the distro that doesn’t get any respect, but it is doubtful projects like Ubuntu and Linux Mint would exist without it. I love the way it just works, even though it tends to be a little long in the tooth in some areas, even on release day. I’m an old guy – I don’t need the latest shiny – I just need something that is stable and works.

So I installed Debian (see my previous post) and you know what – I’m a little pissed at Linus. Gnome 3 is awesome. Yeah – it’s different – but I think it is a little ironic that detractors claim open source doesn’t innovate when Gnome 3 is about the most innovative thing I’ve seen in years. It gets me to where I need to be, and then it gets the hell out of the way. I even like Evolution – which for some reason under wheezy was a snap to integrate into SOGo. Epiphany I can take or leave (it doesn’t render Amazon.com properly, but then I always have the choice of Chromium or Iceweasel) but overall I think the desktop is pretty amazing. There are still a number of rough edges, but I finally have a desktop I’m comfortable with and I can run on all three of my main machines.

Well, I figure by this point I’ve lost my three readers and I’m talking to the guy who found this post by searching for the word “teat” and he’s still here, waiting for a porn picture.

Never one to disappoint – here’s some desktop porn:

How To Install Debian Wheezy on a Macbook Air

Those of you who have been following my #noapple efforts this year know that I am trying to move away from OS X to a Linux desktop. Part of that project involved installing Linux on my MacBook Air laptop.

As someone who travels a lot, I love this little laptop. Weighing just a kilogram, it is powerful enough to do what I need it to do yet small and light enough that I can easily carry it wherever I go in the world. In preparation for upgrading it to Linux, I wanted to increase the stock storage from 128G to 256G, so I purchased an OWC Mercury Auro Pro Express SSD from Macsales.

Unfortunately, I could not seem to get any Linux I tried to install to recognize the hard drive. Fedora failed and Ubuntu failed, but Debian squeeze worked. The downside was that squeeze really didn’t support the kind of desktop I was looking for so it wasn’t an option, and I resigned myself to using OS X on it until it could be replaced.

Recently, Gareth Greenaway posted on Google+ that Debian wheezy (testing) now supported Gnome 3, which was one of the desktops I wanted to try (Jeff Gehlbach has been using it on his Macbook Pro on Fedora for months now). I figured that if squeeze worked, wheezy would too, so I should give it a shot.

Nope – wheezy wouldn’t recognize the drive either. However, being the industrious man that I am, I simply installed squeeze and then did a dist-upgrade to wheezy (yes, this is something I call “fun” – I’m weird that way).

I found out the issue was with the Linux 3.1 kernel. Whenever I tried to boot I would get an error like:

ata1.00: exception Emask 0x0 Sact 0x0 SErr 0x0 action 0x6 frozen
ata1.00: failed command: IDENTIFY DEVICE

followed during boot with errors like:

ata1.0: failed command: FLUSH CACHE EXIT

and then the system would just stop.

However, there was an option to boot to the 2.6 kernel and it would load fine, but with everything compiled against 3.1 I wasn’t able to get things like a video driver working.

Since my desire to run Linux was stronger than my desire to have a large … hard drive, I replaced the SSD with the old one and the disk errors went away.

The following are the optimized steps I took to get wheezy on my Macbook Air (MacbookAir3,1), and when I was successful (it took several attempts to get this to work exactly like I wanted – again, this is “fun”) I did the same install on my 24-inch iMac (iMac9,1 for those of you keeping score at home). The steps could probably be optimized a bit more, but since this works for me I wanted to write it down just so I wouldn’t forget it the next time I needed it, and perhaps it would prove useful for others. I relied heavily on the Debian documentation as well as this post by Mike Dentifrice which was extremely valuable. His was based on Debian squeeze and a lot of what he had to do by hand is now pretty much automatic in wheezy.

You’ll need:

  • Your Macbook Air
  • An external hard drive if you want to save your existing OS X install
  • Your OS X install disk/USB stick
  • An external USB CD or DVD drive (I got mine on amazon.com)
  • An external USB Ethernet dongle (not strictly required but helps immensely)
  • A DVD or CD with 64-bit Debian wheezy (testing)

Note: I’ll state below the differences for installing on the iMac, but the process is pretty much the same.

If you want to save your existing install, start off by using Time Machine to back it up to the external hard drive. Note how much disk space your install uses, since that will be necessary to know when we partition the drive in preparation for installing Linux.

Once that is done, insert your OS X install media and boot it. Choose your language and when you get to the first install screen, launch Terminal from the Utilities menu.

At this point I need to talk a bit about how Apple hardware boots. Instead of using BIOS, it uses EFI (Extensible Firmware Interface). EFI based drives are partitioned using GPT (GUID Partition Table) which differs from the MBR (Master Boot Record) that has been the standard for decades. While I have been told that it is possible to boot Linux using EFI, most are still set up to use MBR, so we will use an open source tool called rEFIt to emulate the MBR.

The key thing to note is that MBR can only boot from a “primary” partition and there can only be four of them. Since EFI requires a small partition as well, that limits you to three operating systems (one on each of the remaining three primary partitions). While storage on my Macbook Air isn’t enough to support, say, a Windows partition, my iMac can and I’ll point out below the change I made for that install (so I plan to dual-boot my Macbook and tri-boot my iMac).

GPT does support a large number of partitions, theoretically unlimited, but systems such as Windows may limit them to 128, so as long as you don’t need more than three boot partitions you can have as many as you like.

For my Macbook Air I decided to have two partitions, a /boot partition and an encrypted root partition. I’ll add a swap file first thing after install. Since only the /boot partition has to be one of the three, I could have made a separate swap partition and a /home partition like I use with my desktop at the office. Having a separate /home partition is great if you upgrade or play around with distros a lot, but I simply didn’t want to have to type in my passphrase twice when booting.

Now, you can install Linux on your Macbook without OS X, but I still have a fondness for Snow Leopard and just in case there are any firmware upgrades I wanted the option to apply them (although one could always install OS X on an external drive and boot to it for that purpose). Since I am worried that I might end up in a situation where I need to boot into OS X (say that I am at a customer site and their VPN doesn’t work on Linux) I also wanted to keep it around for a fallback. But I wanted a really stripped down OS X so I decided to only reserve 30G for that partition.

My partition layout is thus: 30G for OS X, 256M for /boot and the rest for Linux. On my iMac, which I’ve upgraded to a 2TB drive, I’m using 700G for OS X, 256M for /boot, 300G for Windows and the rest for Linux. If you need more for your OS X install, change these values or remove some kruft from OS X (I’d start with Garage Band).

Now if you remember above I asked you to launch Terminal. We’re going to use the command line to partition the disks. On the Macbook Air I ran:

diskutil parititionDisk disk0 3 "Journaled HFS+" Mac 30G "MS-DOS FAT32" boot 256M "MS-DOS FAT32" Linux 50G

This will launch the Disk Utility and partition disk0 into three partitions (four if you include the hidden EFI partition). The first one will be labeled “Mac” with 30G of storage, the second will be labeled “boot” with 256M of storage and the last one will be labeled “Linux” with the remaining disk space. I just put in 50G because you’ll get an error if it is too large, but if it is smaller than the remaining disk space it will use all of it.

For my iMac I used:

diskutil parititionDisk disk0 4 "Journaled HFS+" Mac 700G "MS-DOS FAT32" boot 256M "MS-DOS FAT32" Windows 300G "MS-DOS FAT32" Linux 50G

Again, please note that the bootable partitions have to be in the first three, thus my “Linux” partition will not be used for booting.

This should run without errors and will display the final partition sizes, so you can check that the Linux partition is indeed larger than was you put in the command. Now quit out of Terminal.

The next step depends on whether or not you want to restore from your Time Machine backup or install a fresh OS X. I used this opportunity to downgrade from OS X Lion (which I utterly despise). If you want to restore from Time Machine, you can do so from the Utilities menu, and if you want a fresh install, just follow the normal install steps.

I had encrypted my hard drive under Lion, so when I did this the first time it yelled at me that I couldn’t install onto the Mac partition. A reboot back into the install media fixed that (there was no need to repartition).

At this point in time, you should have a working OS X install. You can do OS X-y things such a turn on FileVault and Software Update at this time if you so choose, but we really just need to use it to install rEFIt.

Download rEFIt and launch the installer package. Under “Customize” be sure to check the only unchecked box to make sure support for Linux filesystems is enabled. Once it is installed, launch Terminal and run:

sudo /efi/refit/enable.sh

which will “bless” the system to boot into rEFIt.

At this point in time I insert my Debian wheezy install media and restart.

rEFIt should recognize the media and offer it as an option, or you can simply hold down the option key after the initial “bong” and select it there, In any case you want to launch the Debian installer.

Follow the install prompts as you would normally. When you get to loading the network hardware you should get an error about missing firmware for the Broadcom wireless card. Here is where it would be possible to load in the firmware, but my time is valuable and it was much easier just to skip that step and use the external USB Ethernet dongle. This was the same on the iMac, but there I just used the built-in wired Ethernet.

When you get to the part about laying out the disk partitions, choose “Manual”. This will bring up the existing partition table. You should see the “hidden” EFI partition first, followed by the ones you created using the command line Disk Utility. There will most likely be some “free” space in between those partitions to make the logical layout match the physical one, and I’ve never been successful at choosing the right values to make those zero. They can be ignored.

Find the partition you labeled “boot” and set the O/S to use it as an ext4 partition mounted on /boot. Important: note the device label. On my install it was the third partition (after EFI and the OS X HFS+ partition) so it was /dev/sda3, but if you used a different layout this could change. We have to install grub into this partition so it is important to note and I had problems with the installer if I went back to check it later.

Next, find your Linux partition and set it up to be used as an encrypted filesystem. The step is optional but I am paranoid, especially when it comes to data on a portable device like a laptop. Unless you are super paranoid and have a lot of time on your hands, make sure the “erase” option is set to “no”. If you forget, don’t worry, you can change it later but if it is set to “yes” then the entire partition will be overwritten with random data before you can go forward and on large disks this can take forever (days on one 2TB drive I used).

When you get back to the partitioning menu, choose the option to set up encrypted file systems. You should be prompted to write current changes to disk, so choose “yes”, and if you forgot to change the erase option you’ll be prompted here and you can say “no” to save some time. Choose the option to set up encrypted partitions, choose the Linux partition and set it up to be ext4 and mount as “/”. You’ll be prompted to enter in your passphrase (don’t forget it or you are screwed).

Once finished, exit the partitioner, write changes to disk, and the install proceeds like normal.

When you get to the part about installing packages, leave the default options as-is, but I always check the SSH server option as well. Feel free to add others if you want, of course.

The next step will take some time depending on the speed of your network (at home this takes a little over an hour). Eventually you’ll be prompted to install the grub bootloader. It will mistakingly state that Linux is the only operating system on this computer (it does so because we haven’t enabled MBR emulation yet) so choose “no” when it asks if you want to install grub into the MBR. Instead, make sure it installs into your /boot partition (as noted above, /dev/sda3 on my system).

Finally, you should reach the end of the install, the media will be ejected and you can reboot.

This time when rEFIt comes up, use the right arrow to select rEFIt’s partitioning tool and allow rEFIt to update the MBR emulation. If everything has gone smoothly, this should work without a hitch. Restart the computer (right arrow over to the Restart icon). I’ve found that any time I run the rEFIt partitioning tool it is a good idea to restart, whether or not there are changes.

Now you should see an OS X option and a Linux option (there may be a grayed out Windows option if you created a Windows partition). Choose Linux and you should be rewarded with a grub menu. Before the 5 second timeout, hit “e” to edit the boot options.

Find the line that starts “linux” and ends in “quiet”. You’ll need to add the word “text” after “quiet” for this next step. On my iMac I also had to add the “nomodeset” option to prevent the graphics driver from hanging the system.

Both the Macbook Air and the iMac use NVIDIA graphics cards. The open source nouveau driver works on the Macbook Air but not on the iMac. Unfortunately, I could not get sleep to work on the Macbook Air under nouveau (which is a pity, since everything else seemed to work, and yes, I spent hours playing with quirks to see if that would help). So at this time I recommend installing the proprietary NVIDIA driver.

The “text” option will prevent the window manager from loading and give us a command line login. Log in as root. At this point I simply determine the current IP address with “ifconfig eth0” and I ssh in from another computer. This lets me cut and paste, etc., but the command line works as well.

First off, we need to create a swap file. Since I have a Macbook Air with 4G of memory, I wanted to create an 8G swap file:

Type following command to create an 8G swap file (1024 * 1024MB * 8 = 8388608 block size):

# dd if=/dev/zero of=/swapfile bs=1024 count=8388608

Set up a Linux swap area:

# mkswap /swapfile

Activate /swapfile swap space immediately:

# swapon /swapfile

To activate /swapfile after Linux system reboot, add entry to /etc/fstab file. Open this file using a text editor such as vi:

# vi /etc/fstab

and append the following line:

/swapfile swap swap defaults 0 0

Next, since the proprietary NVIDIA driver is not free, add “contrib” and “non-free” to your /etc/apt/sources.list file:

deb http://ftp.us.debian.org/debian/ wheezy main contrib non-free
deb-src http://ftp.us.debian.org/debian/ wheezy main contrib non-free

deb http://security.debian.org/ wheezy/updates main
deb-src http://security.debian.org/ wheezy/updates main

Run

apt-get update

to load in the new sources.

Now, at this point in time, it is possible to install the NVIDIA drivers and there are a number of ways this can be accomplished. I used module assistant to build from source:

# apt-get install module-assistant nvidia-kernel-common

followed by

# m-a auto-install nvidia-kernel${VERSION}-source

Typing that command exactly as printed (without the leading # of course) should work.

Once the module is built, run

# apt-get install nvidia-glx

which looks like it will modify X to use the “nvidia” driver, but it doesn’t. I found out that I had to perform an extra step.

Run

# Xorg -configure

and it should throw a number of errors but create a file in root’s home directory called xorg.conf.new. Copy that file to /etc/X11/xorg.conf and edit it. You should see some entries under “Device” that look like:

Section "Device"
        ### Available Driver options are:-
        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
        ### <percent>: "<f>%"
        ### [arg]: arg optional
        #Option     "SWcursor"                  # [<bool>]
        #Option     "HWcursor"                  # [<bool>]
        #Option     "NoAccel"                   # [<bool>]
        #Option     "ShadowFB"                  # [<bool>]
        #Option     "VideoKey"                  # <i>
        #Option     "WrappedFB"                 # [<bool>]
        #Option     "GLXVBlank"                 # [<bool>]
        #Option     "ZaphodHeads"               # <str>
        #Option     "PageFlip"                  # [<bool>]
        Identifier  "Card0"
        Driver      "nouveau"
        BusID       "PCI:2:0:0"
EndSection

Remove all such sections (I had three) and add:

Section "Device"
        Identifier      "Device0"
        Driver          "nvidia"
        Option          "NoLogo"         "True"
        VendorName      "NVIDIA Corporation"
        BoardName       "GeForce 320M"
EndSection

At this point you should be able to reboot into all that Gnome 3 glory. Note that the BoardName is just a label, I used something similar on my iMac which is not a 320M.

From here on out it is just a little cleanup. On the Macbook Air I had to add support for the touchpad.

# apt-get install libmtdev1 mtdev-tools xserver-xorg-input-multitouch

and then I removed /usr/share/X11/xorg.conf.d/50-synaptics to prevent conflicts. Now my touchpad works fine (use two fingers to right click). Reboot or restart X for this to take effect.

I also installed gnome-tweak-tool and reduced the font size from 11 to 8 to better make use of my screen real estate. These last two steps were not required on the iMac.

Finally, I installed the proprietary Broadcom drivers using module assistant:

# m-a a-i broadcom-sta

followed by:

# echo blacklist brcm80211 >> /etc/modprobe.d/broadcom-sta-common.conf

and a reboot.

The only issue I have at the moment is that when I first start the wireless, it bounces up and down for a couple of minutes. When it finally connects, everything is cool. This happens as well with an external Asus USB-N13 I bought as a backup (since I had heard that Broadcom under Debian had issues) so something else must be going on, but I figure I’ll cross that bridge when I come to it later.

[UPDATE: Turns out that the issue dealt with IPv6 support and my router. I disabled IPv6 in Network Manager and my bounce issues went away]

If you want to install Windows for a tri-boot setup, you can do it now. Just choose the Windows partition in the installer.

At this point, everything seems to work (well, for certain values of “work”). Bluetooth functions and I tested the camera with cheese.

One last trick – if you want rEFIt to boot Linux by default, edit /efi/refit/refit.conf and uncomment the default_selection:

# Set the default menu selection.  The available arguments match the
# keyboard accelerators available within rEFIt.  You may select the default
# loader using a one-character abbreviation for the OS name ("M" = Mac OS X,
# "L" = Linux, "W" = Windows).  You may also specify a digit between 1 and
# 9, in which case the Nth loader in the menu will be the default.  You can
# also select a rEFIt tool entry ("S" = EFI Shell, "P" = Partitioning Tool,
# "U" = shutdown).  This is intended as a quick fix to change the default
# boot choice until full configurability arrives.
#
default_selection L

This procedure is the result of about ten installs so I hope it saves others some of the time I spent. In any case, I am now much more knowledgeable about how things work, so in the end it was worth it. Plus, I’m on a much freer operating system than the one I left. It was fun.

Thanks to all those faceless documentation writers out there that made this possible. I have tried to embed links where possible to give you the credit.

Our First Ten Year Renewal

The first OpenNMS commercial support customer was Children’s Hospitals in Minnesota, who purchased a support contract for OpenNMS 0.8 in December of 2001.

They just renewed for a tenth consecutive year.

While we do occasionally lose customers, it is very exciting for us to have earned the trust of a customer for a decade. I’m hoping to add many more as time goes on.