Skip to content
This repository has been archived by the owner on Aug 12, 2020. It is now read-only.

bd808/my-boxen

Repository files navigation

My Boxen

This is a fork of Github's our-boxen repo that is used to configure bd808's laptops. See the Github project to start your own.

Getting Started

To give you a brief overview, we're going to:

  • Install dependencies (basically Xcode)
  • Bootstrap a boxen for your self/team/org/company
  • Then convert your local copy of that boxen to the post-bootstrapped version

There are a few potential conflicts to keep in mind. Boxen does its best not to get in the way of a dirty system, but you should check into the following before attempting to install your boxen on any machine (we do some checks before every Boxen run to try and detect most of these and tell you anyway):

  • Boxen requires at least the Xcode Command Line Tools installed.
  • Boxen will not work with an existing rvm install.
  • Boxen may not play nice with a GitHub username that includes dash(-)
  • Boxen may not play nice with an existing rbenv install.
  • Boxen may not play nice with an existing chruby install.
  • Boxen may not play nice with an existing homebrew install.
  • Boxen may not play nice with an existing nvm install.
  • Boxen recommends installing the full Xcode.

Dependencies

Install the Xcode Command Lines Tools and/or full Xcode. This will grant you the most predictable behavior in building apps like MacVim.

How do you do it?

  1. Install Xcode from the Mac App Store.
  2. Open Xcode.
  3. Open the Preferences window (Cmd-,).
  4. Go to the Downloads tab.
  5. Install the Command Line Tools.

Bootstrapping

Once you've done that, you can run the following to bootstrap your boxen:

sudo mkdir -p /opt/boxen
sudo chown ${USER}:staff /opt/boxen
git clone <location of my new git repository> /opt/boxen/repo
cd /opt/boxen/repo
script/boxen

Keep in mind this requires you to encrypt your hard drive by default. If you do not want to do encrypt your hard drive, you can use the --no-fde.

script/boxen --no-fde

It should run successfully, and should tell you to source a shell script in your environment. For users without a bash or zsh config or a ~/.profile file, Boxen will create a shim for you that will work correctly. If you do have a ~/.bashrc or ~/.zshrc, your shell will not use ~/.profile so you'll need to add a line like so at the end of your config:

[ -f /opt/boxen/env.sh ] && source /opt/boxen/env.sh

Once your shell is ready, open a new tab/window in your Terminal and you should be able to successfully run boxen --env. If that runs cleanly, you're in good shape.

What You Get

This template project provides the following by default:

  • Homebrew
  • Git
  • dnsmasq w/ .dev resolver for localhost
  • Full Disk Encryption requirement
  • Other stuff