I’ve managed to get the desktop upgraded to Ubuntu Hardy (8.04). It wasn’t all smooth sailing, unforunately.
Firstly, it seems no one uses IDE disks any more. Or that they’re all now accessed via a SCSI emulation layer. No matter, what used to be /dev/hda became /dev/sda, bumping all the other disks down own in the order. I used to boot from /dev/sdc, so when Ubuntu tried to restart, it couldn’t find the root disk any more. This fails weirdly and hard, because it attempts to mount the disk. Ubuntu will normally upgrade your menu.lst file (which defines where to find the boot things for grub, the boot loader), but this often breaks for me, because it likes to use UUIDs.
UUIDs uniquely identify disks (or filesystems, I’m not sure which), but I use a dd copied mirror (so I get an exact block copy), which has the same UUID as the boot disk. This confuses grub, and it sometimes boots from the backup disk, not the primary. That’s why I bypass the auto-upgrade, because it has previously auto-FUBARed my computer. So this time I had to manually fix the grub installation to match the new disk orderings.
Once that was done, I had to recompile the NVIDIA kernel drivers. Again. Now, everything works quite nicely, except for gdesklets and Flash. gdesklets has a bug somewhere that causes it to SEGFAULT constantly. It’s a known bug that’s been present for over a year, and no one seems to have any idea how to fix it. Which kinda sux.
Flash not working is a bigger problem. This is apparently another SEGFAULT inducing bug of some kind somewhere inside either Adobe’s Flash 10, or possibly nspluginwrapper, which I use to make 32bit things work inside and AMD64 based system.
So what have I learned from all this? AMD64 is a really tough platform for Linux as a desktop. I mean, Linux has about 3% total market share, and AMD64 is probably 10% of that. So when things don’t work all that well (which isn’t that often, but often enough), there are only 7 other people who can help you. If you’re going to use Linux, right at the moment, go with straight 32bit x86, not 64bit. There just isn’t a critical mass of people with 64bit desktops yet. Without a critical mass of users, developers (both open source, and proprietary. I’m looking at you, Adobe) don’t have the impetus to make their code work well in 64bit.
64bit is probably fine for servers, but for a desktop, 32bit is the way to go.