Skip to content

Latest commit

 

History

History
89 lines (66 loc) · 2.1 KB

README.adoc

File metadata and controls

89 lines (66 loc) · 2.1 KB

osx-bootstrap

Script to set up a Mac OS X

It can be run multiple times on the same machine safely. It installs, upgrades, or skips packages based on what is already installed on the machine.

Requirements

Shell
Operating System
  • OS X Yosemite (10.10)

  • OS X El Capitan (10.11)

  • macOS Sierra (10.12)

  • masOS High Sierra (10.13)

What it sets up

Mac OS X tools
  • Homebrew for managing operating system libraries.

Unix tools
  • Git for version control

  • OpenSSL for Transport Layer Security (TLS)

Install

Clone, review, then execute the script:

curl -s https://raw.githubusercontent.com/austek/osx-bootstrap/master/bootstrap | bash /dev/stdin

To install with samples provided in the repo run

curl -s https://raw.githubusercontent.com/austek/osx-bootstrap/master/bootstrap | bash /dev/stdin sample

Customise

Customise in bootstrap.local and ~/.Brewfile

Local Brewfile

A [Brewfile](https://github.com/Homebrew/homebrew-bundle) is like a Gemfile for non-ruby dependencies. Anything you would install via [homebrew](http://brew.sh/) you can drop into your ~/.Brewfile and it will be installed during the bootstrap script.

An example Brewfile looks like this:

# 3rd party Taps
tap 'homebrew/bundle'
tap 'caskroom/cask'

# Homebrew Packages
brew 'ack'
brew 'keybase'
brew 'tmux'

# Cask macOS Apps
cask 'java'

# Mac store Apps
mas '1Password', id: 443987910
mas 'Xcode', id: 497799835

bootstrap.local

Your bootstrap.local is run at the end of the BNR Bootstrap script. Put your customizations there. An example local script could look like this:

#!/bin/bash
...
echo "Add your changes here"
...

Write your customizations such that they can be run safely more than once. See the bootstrap script for examples.

Script functions such as fancy_echo and install_or_update_gem can be used in your ~/.bootstrap.local.