We ditched The Setup and wrote Boxen so it's easily usable by any company, not just GitHub. We've extracted most Boxen features into modules that can be mixed and matched to create your perfect environment, and custom behavior is always just a module away.
What can it do?
Boxen can clone your projects, install your toolchains, apply security policies, configure your favorite music player, set your screensaver, clone your dotfiles, and scream for help when things go haywire. The example repository at boxen/our-boxen shows how to require Full Disk Encryption, install packages from Homebrew, ensure the presence of some default Ruby and node.js versions, run nginx, and resolve custom requests to a local
We've written roughly a bajillion libraries for Boxen, covering everything from configuring elasticsearch to disabling “natural” scrolling to installing Minecraft. If we don't have what you need, you can write your own. You can customize and extend your team's Boxen environment as well: If you have to install something manually, it's a bug.
How do I customize this thing?
Boxen's secret sauce is Puppet. New to Puppet? Never fear! We've written docs aimed at beginners and experts alike. Boxen also makes it easy for you to customize your own box in reproducible, shareable ways. Boxen is released under the MIT license, so go crazy.