Setting up for a new developer or new workstation

Setting up everything needed to get a new developer up to speed, or an old one going on a new workstation can be one of the most irritating aspects of working in software development. I currently use three separate PCs, two of which are now relatively old but largely stable, and one which is newer, faster, and has a slightly strange set of tools.

What I would dearly love is a low-impact (ideally just a single command) way of setting up a new machine to the latest set of agreed tools and configurations, with all repository connections, source code and dependencies in place ready to go. So far we do not have this, but we are working towards it.

Mark Needham also has some thoughts on the topic.