We have eight or so machines with similar (but not necessarily identical) hardware in our development team. We're pair programming, so we want all the machines to be set up in and behave the same way.
This includes every machine having the same operating system software version and patches, the same Ubuntu packages installed, the same 3rd party packages installed in the same filesystem locations, the same Eclipse settings, the same operating system settings (keymaps, printer config, everything.)
How do I best go about this?