Jesse just gave me his Macbook. The Hiveminder tests were taking 22 minutes on my iBook G4 1.33 Ghz and about 8 on his Macbook. He didn't want to pay me to sit around waiting for tests to run (and he wanted an excuse to get himself a 17" Macbook Pro). I am astonished how smooth the transition has been.
We wiped the Macbook using the OS X install CD. At the end of the install process it asks if you'd like to pull over your user data, config and applications from your old Mac. It walks you through the process of rebooting the old Mac into firewire drive mode. It takes a few hours to move 38 gigs so I let it run overnight. Come back and my new Macbook has all the stuff that was on the old iBook. Applications. Users. Music. Movies. Configuration. Pretty much everything. And the PowerPC binaries work just fine, even command line stuff (though I'm making sure all my important apps are Intel).
A seemless upgrade to a new computer is impressive enough. But across architectures! Wow!
Here's what was missing:
* My desktop background setting (presumably because its a new video device)
* XCode (gcc and the like)
And some Perl specific stuff:
* XS Perl modules did not like the architecture change.
$ perl -MCompress::Zlib -e 1
Can't load '/sw/lib/perl5/5.8.6/darwin-thread-multi-2level/auto/Compress/Zlib/Zlib.bundle' for module Compress::Zlib: dlopen(/sw/lib/perl5/5.8.6/darwin-thread-multi-2level/auto/Compress/Zlib/Zlib.b
at -e line 0
Compilation failed in require.
BEGIN failed--compilation aborted.
This seems to be DynaLoader not believing that you could run binaries from one architecture on another. So I'm going to have to recompile my XS code. CPAN.pm's "recompile" command will come in handy.
* Core Perl modules got downgraded to whatever Apple shipped with Perl. This also means I lost my CPAN.pm config.
* CPAN.pm was displeased that Storable got downgraded when it tried to use my old cache files, but it gracefully continued. After a Storable upgrade everything was fine.
Since I'm going to try switching from fink to darwinports anyway (and from Apple's Perl to darwinports') I'm probably just going to reinstall everything rather than have CPAN.pm recompile.
Note: Trying to compile and build software while update_prebindings is running (ie. while doing a system update) causes the linker to be sad.