Fresh Install

Inspired by a recent article by Viddi, and motivated by my recent move to Burbank, CA, I decided to jot down the steps and write a shell script to assist with a fresh install of all the tools I frequently use on OS X.

Installing via

Two things must be done before anything else when setting up a new machine. First, install the latest version of Xcode and xctools. These are required for commands like git. Second, generate a set of SSH keys for that particular machine:

ssh-keygen -t rsa -C "$USER@$HOST"  

The reasons for doing these first should be obvious, so I won't go into it here. At this point, I'll just download, and kick my feet up while it does the heavy lifting.

$ curl | sh

 __        __   _
 \ \      / /__| | ___ ___  _ __ ___   ___
  \ \ /\ / / _ \ |/ __/ _ \| '_ ` _ \ / _ \
   \ V  V /  __/ | (_| (_) | | | | | |  __/
    \_/\_/ \___|_|\___\___/|_| |_| |_|\___|

==> Bootstrapping computer...

 Use of this script assumes that you have Xcode
 already installed (with xctools) and already
 have existing SSH keys.

  > Installing homebrew...            Finished.
  > Prepping homebrew for use...      Finished.
  > Installing zsh...                 Finished.
  > Installing oh-my-zsh...           Finished.
  > Installing Node.js...             Finished.
  > Installing CMake...               Finished.
  > Installing Vim...                 Finished.
  > Installing .dotfiles...           Finished.
  > Installing Vundle...              Finished.
  > Setting up YouCompleteMe...       Finished.
  > Setting up TernJS...              Finished.
  > Installing z...                   Finished.
  > Installing git-extras...          Finished.
  > Installing the_silver_searcher... Finished.
  > Installing MongoDB...             Finished.
  > Preparing color schemes...        Finished.

==> Installation complete.

 What remains to be done:

  - Install iTerm
  - Configure iTerm settings
  - Install Android Studio
  - Install AppCode
  - Install IntelliJ
  - Install ShiftIt
  - Install Alfred

Installation Breakdown is partially tailored for my personal configuration, but it's easily modifiable should you wish to do so. Take a look at the raw code here.

As you can see in the console output, the script does the following:

  • Installs and prepares Homebrew
  • Installs zsh via Homebrew
  • Installs oh-my-zsh via provided automatic installer
  • Installs Node.js via Homebrew
  • Installs CMake via Homebrew
  • Installs Vim via Homebrew and should override the system provided Vim. If this does not work, run rm /usr/bin/vim.
  • Installs my personal .dotfiles
  • Installs Vundle
  • Sets up YouCompleteMe
  • Sets up Tern for Vim
  • Installs z via Homebrew
  • Installs git-extras via Homebrew
  • Installs thesilversearcher via Homebrew
  • Installs MongoDB via Homebrew
  • Prepares my personal color schemes (stolen here from Christ Hunt)

After all these are installed, a reminder is printed for me to do the following:

My configurations and keymaps for Android Studio, AppCode, and IntelliJ are all stored in ~/.dotfiles where the script downloaded them.