Andy Reitz (blog)

 

 

Taking out My Lack-Of-Tiger Pain on Ubuntu

| 1 Comment

Since I had blocked off a decent chunk of time over this last weekend for playing with Tiger (which didn't happen), I had to take my-lack-of-new-OSX-goodness out on something. And that something was my Ubuntu install that I did on my Athlon64 Shuttle box. Shortly after Hoary came out, I decided that I had had enough of Fedora Core 2, and wiped that Linux out with a fresh install of Ubuntu. The Ubuntu install was simply amazing (in the domain of OS installs, anyway). I would rank the install better than Windows (it actually asked me less questions, was faster, and had less reboots). The only pain is partitioning, but even that wasn't so bad -- I liked their fdisk-like utility -- it made it easy to preserve the '/home' from my FC2 install, while blowing away the rest.

So, I have been knocking around with Ubuntu for a few weeks, and am definitely liking what I am seeing. Ubuntu is one of the most polished Linux distributions that I have ever played with. It has shocked me at times, how well this OS has worked (which should tell you something about my low expectations concerning Linux).

So my project for this weekend was to finish installing and configuring MythTV on the new Ubuntu machine. I also wanted to export my data from the old MythTV box, so I wouldn't lose any state concerning which shows I want to record, and which episodes I have already seen. Fortunately, the procedure for doing the export was reasonably well-documented, so I was able to pull that off.

Not everything was clean and simple, however. Everything in the base Ubuntu distribution has had the spit & polish treatment given to it, from what I can tell. However, the core Ubuntu distribution is quite small, and doesn't cover the vast wealth of free software that is available. That is why Ubuntu is based off of Debian, which means that you can pull Debian packages "from the wild" into Ubuntu. What this means is that in order to get MythTV working properly, I have had to do some hacking, since MythTV isn't a part of Ubuntu.

The worst part was getting the remote control working. On Linux, IR remotes are handled by the LIRC project. This is a set of utilities and kernel drivers that sit outside of the main kernel. On most (sane) distributions, you can download a binary package that includes the utilities and libraries, as well as pre-compiled kernel modules that match the kernel of the distribution that you are running.

But is that how Debian works? Oh no, that's not how it works. Apparently, in Debian-land, you download the source code to the LIRC modules, as well as the source code to the kernel that you are running. Then, you use some special Debian utilities ('make-kpkg'), in order to build the LIRC kernel modules for the device that you want to support. This would all be fine, in a Gentoo-esque sort of way, if it actually worked. Unfortunately, it appears as if the 'make-kpkg' utility makes assumptions based upon the 2.4 kernel, which don't hold true for the 2.6 kernel that Ubuntu uses.

So, after fighting with this mess for awhile on Sunday night, last night I decided to simply screw Debian, fetch the LIRC source, and have at it the completely manual way. I'm pleased to report that the LIRC source was quite easy to deal with, and I now have my Hauppauge remote working on the new-and-improved MythTV box.

So, the moral of the story? Ubuntu is good, but I'm still not on board the Debian bandwagon.

-Andy.

 

 

1 Comment

Ubuntu's installer -is- the Debian sarge installer (debian-installer), which is truly cool. It uses loadable modules (udebs) which lets you do stuff like start a sshd inside the installer and log into your install session remotely - very useful when you have a painful install as I did last week, and are trying to do it over a 9600bps serial console.

make-kpkg should work fine with 2.6 (in fact, I just used it last week) - though I tried it on stock Debian sarge, not Ubuntu.

The Ubuntu live CD also has remarkably good Mac support - it even comes with pbbuttonsd so your brightness keys on your keyboard work, and a functional battery monitor.