I spend the majority of my time working at my desktop Mac, which I have configured for my web development environment. My spouse has a MacBook for casual use, and I occasionally steal it back when I need to work off-site, or when travelling. The question is how to best synchronize the two so I can switch between them more readily.
I've solved a few obvious things by using online services:
Email is hosted on IMAP.
Working files are in Dropbox.
Source code is managed in git.
However, the following are things I always miss when jumping on the laptop:
Installed Applications (current versions)
Installed libraries & utilities (/usr/local)
Apache VirtualHosts & other configurations (/etc)
Disk image files for VMs
My current method is to connect the MacBook via Firewire target mode and rsync the /Users/me home directory, and then cherry-pick the other items I need from Applications, /etc and /usr/local. The problem with this method is that it can be very time consuming due to things like my virtual machine image files, cached emails, etc.
How can I make this faster & easier? Can you recommend a solution for configuration management (so I can repeatably install & configure the same software on both), or synchronization (so I can bring the MacBook up to date nightly, over our home network)?