Who said upgrading wouldn’t be hard?


I've hit a couple of snags in trying to do various types of upgrades. The first is related to upgrading, or rather porting, my gtk+ software from 1.2 to 2.x. The second is in upgrading my laptop at work from RH9 to fedora.

Porting problems

Since xnotesplus is not quite ready for the port to 2.x (but it's very close now – the 3.7 release will be the last one to use GTK+ 1.2 and then I can branch and start work on the 2.x port), I decided to start in on my graphics Muse Tools plugins for the gimp. Digging through the GTK 2.x API docs I found migration help. In essence it says everything should just work with GTK 2.x but that many features are being deprecated over time or replaced with new features. One of these will be the Text widget, which was really pretty primitive in 1.2. But I also have to deal with changes to GIMP from 1.2 to 2.0. So there are two migrations that have to occur with the plugins (whereas XNotesPlus just has to deal with GTK+).

GTK+ should just work, so it says. So I approached this from the GIMP direction to see what was needed there. First, you have to have GIMP 2.0 installed. There is no RH9 package for it that I can find so I decided to build from scratch. Except GIMP 2.0 has lots of dependencies. The first I ran into that wasn't on my machine (keeping in mind that I'm running a garnome desktop which has lots of recent packages installed too) was fontconfig 2.x. I have v1.0.1. The GIMP site points me to a download site for fontconfig from the freedesktop.org site.

Unfortunately, that site got compromised this past week. So they're rebuilding the FreeDesktop.org systems from scratch. I can't dig into the GIMP plugins port because I don't have GIMP 2.x yet. And won't until FreeDesktop comes back online. Bummer. And me with lots of free time on my hands at work. Double bummer.

Upgrading a laptop

This problem is less frustrating but requires more of a leap of faith. I've got a RH9 laptop at work and I know I need to upgrade to Fedora (I actually have a build machine running RH9 too but upgrading that one will be even more work). Problem is I have lots of tools installed on this laptop that didn't come from RPMs. Things like QMail (I run a wordpress site on there that accepts mail from local hosts so I can automatically post Changelogs to the blog). So I need to make sure I don't trash anything really important.

My normal method for managing upgrades is to make the /, /home, and /usr/local their own partitions. An upgrade would then just muck with the root partition. The only thing to save would be config files stuck under /etc. These would be merged with new configs after the upgrade.

But the laptop doesn't have that much disk space so only / and /home are separate partitions. /usr/local doesn't have nearly as much stuff in it as I have at home because I try to get RPMs for everything I can. Still, I'm worried I'm going to lose important things. The worst being the tools I installed to get some web applications running.

I need an upgrade plan here. I know /home is safe and that's where the QMail and other important logins live. I need to make sure they are valid logins after the upgrade so /etc/password and /etc/group have to come with me. I also have db's running for the web server, so that has to be dumped and brought with me – the dbs live on the root partition currently. And I know I have to carry with me anything under /usr/local that I might want later – but this one is less important because I know all of that can be rebuilt from sources I have under /home somewhere.

I need to dump my cronjobs so they can be reloaded later (they should work as is but won't last past the upgrade so will have to be reloaded). My fstab and exports files need to be backed up.

The worst part in all this will be gnome. I'm running a Garnome release because, after trying it out, I couldn't get back to a previous rpm installed release without losing much of my configuration. *sigh* And migrating to the new gnome distribution is likely – since it always does – lose much of my configuration. GNOME sucks in this area. In fact, much of GNOME sucks. My personal laptop runs xfce and I think I may go with that on my work laptop too. Hell, if I have to migrate my desktop config I might as well migrate to a lightweight, less annoying desktop environment.

And no, I don't like kde either. I don't like systems that have so many dependencies that rebuilding myself is next to impossible. I'm a moderately smart doobie, so I can't imagine how regular desktop users are gonna feel when they have to upgrade. No wonder Novell thinks they can make a living selling support for the desktop. Support is *required* for GNOME and KDE. It isn't for XFCE. At least not yet.

Anyway, that's mostly just a whine. Now its time to work out the upgrade process for real. While I'm not busy at work. Cuz' that doesn't happen too often.