Mac OS Xodus

(First, yes I do realize the ‘X’ in ‘OS X’ is pronounced “ten” not “ecks.” I simply like the portmanteau.)

With the release of Leopard, I discovered the need to migrate my existing Tiger system onto an external drive. I needed it to be bootable, and I wanted to have a little discontinuity as possible. Apple generally makes this pretty easy, but it’s still a bit involved. I write this article from my migrated system, currently booting Tiger off of a USB drive. The mechanical process of getting an installation working on a USB drive is fairly well-documented by now. I’ve had much success following Evgeny Myatin’s tutorial, found here. However, like many similar articles, it has one major weakness: It attacks the problem with the assumption that you’re trying to squeeze OS X on to some microscopic medium. Because of this, it skips many steps to produce a full-featured system when such a constraint is not in effect. Since I chose a 250GB harddrive as my target, I had no such enforced limit.

After following the above directions, here’s a list of things I did to flesh out my system to get it back to normal.

  1. Before anything, I copied my internal drive’s /Applications folder to my new bootable one. This filled in most of the applications that I need. It also filled in /Applications/Utilities, which comes in handy in short order.

  2. SystemUIServer crashed incessantly for some reason right after installation. This meant no clock, no spotlight, and no networking (setting it in System Preferences didn’t work). It also meant no Menu Meters and no Synergy. Using Console.app (from /Applications/Utilities), I was able to find that dyld was having problems finding a symbol in /System/Library/PrivateFrameworks/ICANotifications.framework. I don’t recommend tinkering with stuff in System too often, but the fix here was pretty simple: copy my old framework into the new place. Actually, I just copied the file inside the framework, but I imagine copying the whole thing is cleaner. This immediately (literally) stopped the crashing without a reboot. The clock and spotlight popped into place, as did the airport icon, the battery icon, and the bluetooth icon. Nice

  3. I installed the Developer tools from the Mac OS X install DVD. I don’t trust simply copying /Developer, since that’s only part of the package.

  4. I booted into my old installation again, and copied /Users/cwright/ to the new installation. I suspected that this would cause unimaginable problems, but it actually didn’t. I took a long time (it’s over 25GB), but everything appears to be undisturbed. iTunes worked without a blink, as did Firefox, Xcode, Adium, and other frequently used programs. Menu Meters and Growl even worked without reinstalling them. This still impresses me, honestly, especially after doing user migrations on Windows 2000/XP earlier this year.

  5. With my new settings in place, I noticed that I had no desktop background. Copy /Library/Desktop Pictures/ to restore them

  6. No screen savers either. Copy /System/Library/Screen Savers/

  7. Fink had a hard time installing. Apparently /usr/bin was pretty sparse. Copied that (this is extremely dangerous. At first, I just copied programs that weren’t present, but I got tired of that after a while).

  8. /usr/share/misc/ was missing some programs too (showing up in console). Copied the absent utilities.

After the above tweaks, everything seems to be working fine. There’s probably a more official way to get this (and any other missing parts) put in place by default, but this can help in a pinch.