This is a relatively simple ansible setup heavily based on https://github.com/zacs/setup as well as scripts from Jack and sproutwrap chef recipes from Andrew.
This setup is intended to install most libraries and applications. After running this a developer should install their own dotfiles and make their own custom configurations.
NOTE this README assumes you are running the setup scripts and Ansible playbooks on the system that is being installed. The current preferred method is to run them from an existing system, which connects to the new system over SSH to perform the same steps. See the documentation on the Confluence wiki page, Laptop Setup for a more relavant guide.
Given you have a laptop you wish to setup you should:
- erase the hard drive
- install the latest OSX (tested on Sierra)
- join the wireless network
- configure the Mac for a user, not using Apple ID
- run software update
- continue with the steps below
To install, all you need to do is run bootstrap.sh
remotely. It will install some pre-requisites (gcc,
Homebrew, git, and Ansible) and will then clone this repo locally (by default it clones into ~/.setup
) and run the playbook:
$ curl -fsSL https://raw.githubusercontent.com/agworld/setup/master/bootstrap.sh | sh
If you prefer not to run code remotely, you just need to clone the repo down wherever you would like, and run:
$ ./bootstrap.sh
After installing the prerequisites this will run the local
playbook
for the first time. If for some reason bootstrap.sh
barfs, you can run the playbook manually via:
$ ansible-playbook setup-laptop.yml -K
The -K
flag means that Ansible will prompt you for your sudo password
before it executes the playbook.
If it's your first time, go brew some coffee or tea because this will take some time building packages.
These will gradually become part of the automated ansible script.
This will setup RVM, install Ruby, do a few Homebrew steps. This script is not actually production ready, therefore it's imperative you actually open it up and read through and run the commands manually.
Don't forget to actually click install to install the font.
ln -nfs /usr/local/share/ghostscript/fonts /usr/local/share/ghostscript/fontsx
brew install https://raw.github.com/staticfloat/homebrew-alt/master/non-free/princexml.rb
brew install zeromq22
Michael Griffin's ansible-playbooks repository. That collection is far more complete.
How I Fully Automated OS X Provisioning With Ansible.
This work is in the public domain.