So, to start this project, I decided I would restore my home directory from a time machine back up. That was the easy part. The second part, how will I get Python, Ruby, Git, Vagrant, etc installed and configured quickly... and most importantly if I wanted to do this again how would I go about automating. Enter Boxen. I had read about this and used Puppet to manage farms of Linux servers so it felt like a good fit. After reading the docs... looking at the code... I decided to trust it to rebuild my iMac.
The results? AWESOME!
I now store my configuration on GitHub...
My home directory is safe through time machine...
I can rebuild my entire system without worrying about the final state. The coolest thing, is that I can manage pretty much everything I want through Boxen.
I highly recommend taking a look.