GitHub's Boxen open sourced
GitHub , the Git-centric project hosting and collaboration company, has announced the open sourcing of Boxen, its management and automation tool used within the company for managing Mac systems. The project, which was originally named "The Setup", was designed to allow developers to go from a new laptop to a system ready to hack the GitHub.com source within thirty minutes with a single command. They then ditched "The Setup" and wrote Boxen to replace it, so that any company could use it.
The Boxen Mac management framework is built around a standard library of Puppet modules to handle installing everything from "MySQL to Minecraft". It works using GitHub as its own repository and opens and closes issues as problems arise. The GitHub developers have published three repositories, boxen/our-boxen, a template for creating a basic web development environment, boxen/boxen-web, a Rails application that simplifies rolling out Boxen, and boxen/puppet-template, an example module which wraps up Puppet best practices in one easy-to-modify package.
Once Boxen and its dependencies are configured, administrators and developers can create project manifests which list a project's dependencies. Users can then run
boxen manifestname and have Boxen download and install all dependencies and appropriate code to allow them to start work on the code.
Currently Boxen only works on Mac OS X 10.8 Mountain Lion or later as that's what GitHub uses every day, but the developers hope that people will enhance it to support other platforms. Boxen is released under an MIT licence and documentation is available to guide the configuration process. The code is available, unsurprisingly, from a GitHub repository.