2018-02-18 00:00:00 +0000 -

In case you’re unacquainted, Boxen is an open source project that can setup your macOS machine(s): it automatically installs apps, developer tools and just about anything else you might need. Unlike third-party backup services, Boxen does this by reading manifest files you provide—thus affording you all the advantages of Infrastructure as Code:

In fact, Boxen worked so well for me, it was part of my workflow for two years. I’d:

  1. $ git commit && git push new setups on my Laptop A.
  2. $ git pull && boxen on my own Laptop B.
  3. Marvel how fast Laptop B became a clone of Laptop A!

This workflow enabled me to transition between two unconnected machines seamlessly, in a way that encouraged me to play with new tools and configurations.

By developers, for developers!

In my opinion, Boxen’s greatest feature is that it provides a free “App-Store” for developer tools. You’ll find tools of which you are familiar, but you’ll also find tools of which you are not. And it’s here—in the latter category—where comes joy of using Boxen. A few of my favourite discoveries include:

But then came the woes.

Boxen is dead, long live Homebrew!

The biggest nail in the coffin for Boxen came from @MikeMcQuaid; then maintainer of the project. In a GitHub issue, Mike states GitHub is no longer interested in maintaining Boxen, and furthermore has moved on to maintain the Homebrew project. Homebrew can do most things Boxen can (check out Brewfiles for keeping your dependencies under source control!), with zero dependencies on Puppet.

Although I invested lots of time into maintaining my Boxen configuration, migrating to Homebrew was a natural, easy step thanks to @MikeMcQuaid’s Strap script. And in the rare cases Homebrew didn’t provide me what I wanted, it’s infinitely easier to extend then Boxen.