Jaunty Jackalope Ruined My Life

OK, maybe that title is dramatic. It did ruin the last two work weeks for me, though. Over Memorial Day weekend, I upgraded my work laptop from Kubuntu Hardy Heron to Jaunty Jackalope. That was a maneuver I instantly regretted when I got to work on Tuesday and my second monitor would not work no matter what I tried. As it turned out, this Kubuntu release had some known really bad problems for those poor souls (like me) that have the Intel video cards. My 3 year old Dell Inspiron 9400 has the Intel 945 GM. From Dapper Drake through Hardy Heron, this laptop has been a champ and even being 3 years old I like it just as much as the day I got it and have no particular desire to get a new one. With Jaunty though it sucked so bad it made me wish I had Windows on there.

As the weeks went by, the depth of problems grew worse. The response of everything was sluggish, from changing virtual desktops to changing windows. When Kopete popped up notifications of incoming IMs, they would never go away. Basically, everything about my job got harder and the productivity hit is measurable in my bug fixing velocity. Last Friday was the worst yet and I got so frustrated that given half a chance I’d have thrown this laptop out the window. I made the executive decision that no matter what, I was taking it home for the weekend and I was not bringing Jaunty back to work.

I downgraded to Kubuntu Intrepid, it didn’t appear to be that much better than Jaunty on my video card and I immediately rolled back to Hardy, the version that was on there 2 weeks ago. However, I couldn’t find my install CD so I just downloaded it again and burned a new CD. Because of a misclick, I realized 30 seconds after starting the installer that I had downloaded mainline Hardy, not the Kubuntu version. At this point I said “Screw it, let it ride.” I got up this morning, ran the package update to get the few hundred packages with updates since the ISO version and went to work. I moved my backed up home directory back to /home and logged out and in, and voila! All of my gnome preferences from a year ago when I left Gnome came right back. At this point I’m back in business and delighted to be able to span my external monitor.

Now, here’s the lesson I learned from the whole painful ordeal and how I’m going to go forward with it. This is a mission critical box for me, in that when it has problems the way I make my living has problems. I don’t want downtime on it and I don’t want to spend my weekdays putzing with it. I need rollbacks to be very quick operations. I supposed I could ghost and image and do things like that, but I thought of another way that I’m going to use.

This has an 80 G hard drive, which is plenty for what I use it for. Since most of my work involves logging into remote servers this laptop is really a fancy thin client. The next time I upgrade, I’m going to wipe the drive and repartion with this kind of scheme:

Partition Size in GB Mountpoint
#1 18 /home
#2 2 /boot
#3 20 /
#4 20 /last_os_version
#5 20 /second_to_last_os_version

Now, suppose I had Hardy on Partition #3 and Gutsy on #4 and Feisty on #5 before my recent upgrade. I would have installed Jaunty on Partition #5 and changed all the mount points accordingly. Then, when the upgrade went poorly I would have downgraded by changing all the mount points back to what I have listed above, changed the default kernel to the matching one and gone back on my merry way. I never have to worry about /home or /boot because they are on their own partitions. If my thought experiments hold true, then rolling back in the worst case is an easy couple minute process, not the multi-day ordeal I went through just now. Cool, no?

Gutsy Gibbon

On my work laptop (a Dell Inspiron 9400), I had been running Feisty Fawn Ubuntu. I thought it kind of sucked, and my wifi card had not worked since I upgraded past Dapper. Enough stuff was beginning to break that I was willing to just stick in a CD and reinstall. What I hadn’t realized when I began was that this is the week that Gutsy Gibbon is being released. What the hell, I thought, let’s roll the dice. I burned the CD and did the upgrade last night.

I really like it. It created a new partition to install, so nothing was wiped out from my previous version. I can mount it and look at anything I need, which came in handy reconfiguring printers and such. The wifi card came back to life after I installed the restricted Broadcom driver. I like that the VPN can be configured and invoked directly from the Network Manager applet, rather than some arcane command line setup or using the hokiness that is pptpconfig. The new graphics were actually quite beautiful and when I was running the laptop at home, they were fantastic. The only drag is that when I hooked in my Dell external monitor at work, it didn’t just work. Using the default config, I couldn’t do anything but clone to the external monitor. By replacing with my old xorg.conf, I was able to get a spanning desktop but it made the laptop’s 1920 by 1200 screen squish into a 1600 by 1200 resolution so everything looks funky right now. If and when I get that resolved, I’ll be delighted with this release. So far, everything jsut seems better than it used to be. Right on, Ubuntu!

Dapper to Edgy

I’m extremely conservative when it comes to upgrading OS’s on my work-a-day machines. That’s why I never upgraded my iBook from 10.3, since I was earning my living on it when 10.4 came out. For similar reasons, I dragged my feet on upgrading my work laptop from Ubuntu Dapper to Edgy. Last night I bit the bullet, took it home and ran the upgrade all evening. It seemed to have worked pretty well. The only downer is that it broke my wifi card since apparently ndiswrapper is broken in Edgy. I like it though, and the support for greater than 512 Mb SD cards is built in now. That’s nice, since that’s how I watch vlogs during my lunch hour. So far, so good.

Rhythmbox v. Amarok

I’m approaching 6 months of use of Ubuntu on the Dell Inspiron 9400 at work. I remain completely digging on it, and I have shocked more than one person by suggesting that I find this a pretty comparable substitute for my iBook. If that burst in flames tomorrow, I wouldn’t find moving to an Inspiron with Ubuntu a disappointment.

One of the things I like about this laptop is that it has multimedia keys. There are play, pause and launch buttons. When I’m playing MP3s on the laptop, I can pause from either the external keyboard or the laptop itself. One bummer of the default 6.06 setup is that the “music player” application is hardcoded in this version to be rhythmbox, which is a pretty rudimentary application that I’m not so wild about. I much prefer amarok and wanted to make it the default when I hit the music note button. I tried and failed to change the default and finally ran across this bug report on the issue (by way of this forum.) Long story short, you have to make a symlink early in the path so that the system is tricked into opening amarok when it thinks it is trying to open rhythmbox. With this little hack, my badass laptop became measurably 17.2% more awesome.

Screen Play

For the longest time, this is always one of the first things I do when I set up an account on a Unix box on which I will ever be running screen.

I add this to my .bashrc file:

# Change the prompt if screen is active
if [ "$WINDOW" != "" ]; then
PS1="S:$WINDOW \u@\h \W> "
PS1="\t \u@\h \W> "

That gives you a nice prompt like this:

S:9 dave@nexus dave>

when you are in screen, where the S:9 says that this is screen window #9. Man does this make life simpler some days.


Rather than continuing to blog apologies for things I have failed to do, I’m going to go ahead and write in the positive about something I am doing and enjoying. At work when I walked in the first day, I was handed a Dell Inspiron 9400 – a really nice laptop. I was also given a Dell external LCD display. It came preinstalled with Windows XP, and my first morning of work I used Windows just enough to download some Linux ISOs and burn them. By the afternoon of the first day, I had wiped Windows off and tried to install Fedora Core 5. I had some problems trying to get the external monitor working and a few other issues, so I ended up trying Ubuntu 6.06 (Dapper Drake) to see if I could get things working. Eventually, after days of trying, I was able to get the display stuff working with both the sweet built-in LCD at 1920 X 1200 and the external at 1600 X 1200 in the big shared desktop, so between the two I have a 3520 X 1200 screen spanning the two. It’s quite cool and good for lots of surface area to have multiple text editors, web broswers and tailing log files open all at the same time.

After all was said and done, I probably could have gotten things up and running with about the same effort under Fedora Core but I ended up liking a lot of the Ubuntu specific little tools. It’s just nice, and the more I use it the more I like it. It is the closest I’ve ever had to a “It Just Works” experience with any Linux box, even though I had display setup issues. If I hadn’t been trying to do something weird with a fairly unusual video card to the Linux world (Intel 950 GM) I would have had the thing set up in an hour. After using it for a while at work, I decided I like this enough to redo my aging Thinkpad T20 at home to the same version of Ubuntu.

Having spent two months using this on a daily basis, I dig the look and feel. I dig the tools and the ease of management on a daily basis. I’ve been building my own kernels, just for fun, and I’m currently on a SMP kernel so that I can use both CPUs in this machine. Previously I’d been a little leary of building my own kernels, but with this checklist and step by step procedure it is actually pretty simple. All in all, I recommend this distribution as a good one for people that aren’t into Linux for its own sake but want a tool to get things done. I’ve used it every day for the last two months at my day job, and am getting serious work done with it. It has reached that point, so if you want to make the switch the biggest of the hurdles are behind us.

This post complies with my work blogging rules of the road.

Start Me Up

Here is a very interesting Linux project called upstart which aims to replace the way all processes are started and stopped on the system. This would supercede init, cron, inetd and anything that needs to control a running process based on criteria. Upstart would be event based, so that all of cron’s functionality is a special case of event, name “It is now 01:52 on Saturday” or “It is 10 minutes after any hour”. You’d configure upstart to start a process when that event happens, and away you go.

The exciting thing is that this fixes problems with initialization of a system, namely what happens if one of the filesystems isn’t available at boot time for some temporary reason – a slow hard drive that is still spinning up or a network drive that is temporarily unavailable. Interesting stuff, I’ll be following this closely.

The Power of Open Source

One of the things I want to blog about is my adventures setting up my work computer. It is a really sweet machine, a Dell Inspiron 9400. It has the widescreen resolution, and they bought me a second monitor so we wanted to get it running in dual head mode. Of course, the very first thing I did was to wipe Windows XP off of it. I used it long enough to download the Fedora Core 5 ISOs and burn them, and then installed it. I never got FC 5 working quite right, so I switched over to Ubuntu. It turns out the issues I had were unrelated to the distribution and I probably could have gotten FC working with the same amount of effort but I’ve got it going now and will stick with it until there is reason to not.

I’m not going to go into a lot of detail just now. Later on I’ll post snippets of config files so that other people in the same boat can get things going faster. As much as I like this laptop, I got a little shafted in that it has the least common internals. It has the Intel 945GM video card and the Dell wifi card, both of which are off the beaten track for Linux. For now, though, I want to give an example of what makes an open source operating system so cool.

I compiled my own kernel a few days ago and that’s what I’m currently running. The box has a built in SD/MMC card reader, and I thought it would be neat to see if it worked under Linux. It read a 256M card no sweat, but when I put in the 2G SD card, it failed to mount and I got a lot of errors. A little googling showed me that the kernel lacked support for internal card readers above 1G. I could plug it into my USB card reader, and then it would read just fine but not on the built in card reader. I found this patch that addresses that issue. Because the code is removing 40 lines and adding in one, I just went directly to that file in my source directory and made the edit by hand. I rebuilt and reinstalled modules, and rebooted the box. I stuck in the 2G card, and voila – it mounted automatically and was right there on the desktop. Fantastic stuff. It can be a real pain sometimes, but moments like this make me so happy that it all is worth it.

This post complies with my work blogging rules of the road.

Debian and Crashes

Hmmm, I seem to be making headway understanding the instability of my Linux box. Now that I have Debian on there, when it crashed today it had something about a frame overrun in eth0 sitting on the desktop. Maybe when I was thinking all the issues were being caused by the hard drive, they were really the NIC? Dunno. I have another one I can put in this box and yank out the other if it seems like a reasonable thing to do.

Trying out Debian

After a day of work, I’m getting back to business on the Linux box. I was getting too worried that the instability and disk corruptions were going to result in me losing a lot of work, so I put another different hard drive in the box. I didn’t wipe the old one and have it mounted so that I can copy things off of it, but it isn’t doing any serious work anymore. Eventually I might make the entirety of the old hard drive become the /tmp directory or something funky like that.

Since I had to reinstall from scratch I tried something different and went with Debian rather than the Red Hat I typically use. It’s taking a little getting used to, but overall seems fine. The only real issue I’m having is figuring out how to get SpamAssassin and Razor integrated again. Each is on the box and each works by itself, but the SA refuses to recognize that Razor is installed. I do have my spam stuff and my fetchmail and popfile and all that fun stuff up and running. That’s the beauty of redoing a convoluted configuration like I have – redoing takes a fraction of the time of doing it, because you
already know a lot of the gotchas.