Skip to content

Instantly share code, notes, and snippets.

@chaucerling
Forked from kevinelliott/osx-10.9-setup.md
Last active September 1, 2015 13:11
Show Gist options
  • Select an option

  • Save chaucerling/7ffafdba0c294ce1cb3d to your computer and use it in GitHub Desktop.

Select an option

Save chaucerling/7ffafdba0c294ce1cb3d to your computer and use it in GitHub Desktop.
Clean Install – Mac OS X 10.9 Mavericks
# Mac OS X 10.9 Mavericks
Custom recipe to get OS X 10.9 Mavericks running from scratch, setup applications and developer environment. I use this gist to keep track of the important software and steps required to have a functioning system after a semi-annual fresh install.
## Install Software
The software selected is software that is "tried and true" --- software I need after any fresh install. I often install other software not listed here, but is handled in a case-by-case basis.
### Install from App Store
* [Airmail](https://itunes.apple.com/us/app/airmail/id573171375?mt=12&uo=4)
* [Aperture](https://itunes.apple.com/us/app/aperture/id408981426?mt=12&uo=4)
* [Degrees](https://itunes.apple.com/us/app/degrees/id430173763?mt=12&uo=4)
* [Divvy](https://itunes.apple.com/us/app/divvy-window-manager/id413857545?mt=12&uo=4)
* [Opera](https://itunes.apple.com/us/app/opera/id404764921?mt=12&uo=4)
* [Pages](https://itunes.apple.com/us/app/pages/id409201541?mt=12&uo=4)
* [Skitch](https://itunes.apple.com/us/app/skitch-snap.-mark-up.-share./id425955336?mt=12&uo=4)
* [Twitter](https://itunes.apple.com/us/app/twitter/id409789998?mt=12&uo=4)
* [WiFi Explorer](https://itunes.apple.com/us/app/wifi-explorer/id494803304?mt=12&uo=4)
* [WiFi Signal](https://itunes.apple.com/us/app/wifi-signal/id525912054?mt=12&uo=4)
* [Todoist](https://itunes.apple.com/us/app/todoist-to-do-list-task-list/id585829637?mt=12&uo=4)
* [Xcode](https://itunes.apple.com/us/app/xcode/id497799835?mt=12&uo=4)
### Install from Third-Party Websites
* Browsers
* Chrome (installed via Cask)
* [Firefox](http://firefox.com)
* Opera (installed via App Store)
* [Webkit](http://webkit.org)
* Development
* [Dropbox](https://www.dropbox.com/install2)
* [GitHub](http://mac.github.com)
* [LiveReload](http://livereload.com)
* [LiveReload Extensions](http://help.livereload.com/kb/general-use/browser-extensions)
* [Sublime Text 3](http://www.sublimetext.com/3)
* Utilities
* [1Password](https://agilebits.com/onepassword/mac)
* [GrandPerspective](http://grandperspectiv.sourceforge.net/)
* [HipChat](https://www.hipchat.com/downloads)
* iTerm 2 (installed via Cask)
* [Little Snitch](http://www.obdev.at/products/littlesnitch/download.html)
* [Quicksilver](http://qsapp.com)
* [Skype](http://www.skype.com/en/download-skype/skype-for-computer/)
* [Spotify](https://www.spotify.com/us/download/mac/)
* [Transmit](http://panic.com/transmit)
* Virtualization
* Parallels Desktop (installed via Cask)
Fonts
-----
[Mensch coding font](http://robey.lag.net/2010/06/21/mensch-font.html)
#Xcode Command Line Tools
`Xcode > Preferences > Downloads > Command Line Tools`
#Homebrew
## Install Homebrew
```bash
ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
```
## Install Homebrew extension Cask
```bash
brew install caskroom/cask/brew-cask
```
## Install common applications via Homebrew
*Databases are installed later.*
```bash
brew install ack autojump automake colordiff curl git git-flow \
hub icoutils imagemagick libmemcached memcached openssl ossp-uuid qt \
readline redis tmux wget
```
## Install applications via Homebrew Cask
```bash
brew cask install anvil
brew cask install atom
brew cask install authy-bluetooth
brew cask install awareness
brew cask install bartender
brew cask install battery-guardian
brew cask install github
brew cask install google-chrome
brew cask install hipchat
brew cask install joinme
brew cask install iterm2
brew cask install parallels
brew cask install rescuetime
brew cask install rubymine
brew cask install satellite-eyes
brew cask install sidestep
brew cask install sonos
brew cask install spotify
brew cask install steam
brew cask install testflight
brew cask install vagrant
brew cask install vagrant-manager
brew cask install virtualbox
```
#Shell
Install custom .dotfiles
```bash
git clone [email protected]:kevinelliott/.dotfiles.git ~/.dotfiles
~/.dotfiles/install.sh
```
Update .bash_profile
```bash
echo 'source ~/.dotfiles/base.sh' >> ~/.bash_profile
```
# OS X Preferences
```bash
#Set a blazingly fast keyboard repeat rate
defaults write NSGlobalDomain KeyRepeat -int 0.02
#Set a shorter Delay until key repeat
defaults write NSGlobalDomain InitialKeyRepeat -int 12
#Add a context menu item for showing the Web Inspector in web views
defaults write NSGlobalDomain WebKitDeveloperExtras -bool true
#Show the ~/Library folder
chflags nohidden ~/Library
#Store screenshots in subfolder on desktop
mkdir ~/Desktop/Screenshots
defaults write com.apple.screencapture location ~/Desktop/Screenshots
```
Set hostname
------------
`sudo scutil --set HostName kevin-rmbp`
#Git
Setup Github
------------
```bash
ssh-keygen -t rsa -C "[email protected]"
# Copy ssh key to github.com
subl ~/.ssh/id_rsa.pub
# Test connection
ssh -T [email protected]
# Set git config values
git config --global user.name "Kevin Elliott"
git config --global user.email "[email protected]"
git config --global github.user kevinelliott
git config --global github.token your_token_here
git config --global core.editor "subl -w"
git config --global color.ui true
```
# Sublime Text
Add Sublime Text CLI
--------------------
```bash
mkdir -p ~/bin && ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" ~/bin/subl
```
Install Package Control
-----------------------
```python
import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()); print 'Please restart Sublime Text to finish installation'
```
Install Packages
----------------
[BracketHighlighter](https://github.com/facelessuser/BracketHighlighter)
[CoffeeScriptHaml](https://github.com/jisaacks/CoffeeScriptHaml)
Install Soda Theme
----------------------
```bash
git clone git://github.com/buymeasoda/soda-theme.git ~/Library/Application\ Support/Sublime\ Text\ 2/Packages/Theme\ -\ Soda
```
Install Tomorrow Theme
----------------------
```bash
git clone git://github.com/chriskempson/textmate-tomorrow-theme.git ~/Library/Application\ Support/Sublime\ Text\ 2/Packages/Color\ Scheme\ -\ Tomorrow
```
Settings
--------
**Sublime Text > Preferences > Settings - User**
```json
{
"close_windows_when_empty": true,
"color_scheme": "Packages/Color Scheme - Tomorrow/Tomorrow-Night-Eighties.tmTheme",
"draw_indent_guides": false,
"font_face": "Mensch",
"font_size": 18,
"highlight_modified_tabs": true,
"show_tab_close_buttons": false,
"tab_size": 2,
"spell_check": false,
"theme": "Soda Light.sublime-theme",
"word_separators": "./\\()\"'-:,.;<>~!@#%^&*|+=[]{}`~?"
}
```
Key Bindings
------------
```json
[
{ "keys": ["super+b"], "command": "expand_selection", "args": {"to": "brackets"} },
{ "keys": ["super+f"], "command": "show_panel", "args": {"panel": "replace"} },
{ "keys": ["super+alt+f"], "command": "show_panel", "args": {"panel": "find"} }
]
```
Snippets
--------
```bash
git clone [email protected]:bytestudios/sublime-snippets.git "/Users/Joel/Library/Application Support/Sublime Text 2/Packages/Byte"
```
## Server
### Docker
```bash
brew install docker boot2docker
boot2docker init
boot2docker up
```
### MySQL
```bash
brew install mysql
brew pin mysql
```
### MySQL Settings
```bash
# Copy launch agent into place
mkdir -p ~/Library/LaunchAgents && cp /usr/local/Cellar/mysql/VERSION/homebrew.mxcl.mysql.plist ~/Library/LaunchAgents/
# Edit launch agent and set both keepalive and launch at startup to false
vi ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
# Inject launch agent
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
# Set up databases to run as your user account
unset TMPDIR && mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp
# Start mysql
start mysql
# Secure mysql
/usr/local/Cellar/mysql/VERSION/bin/mysql_secure_installation
```
### PostgreSQL
```bash
brew install postgres --no-ossp-uuid
brew pin postgres
```
### PostgreSQL Settings
```bash
# Initialize db if none exists already
initdb /usr/local/var/postgres
# Create launchctl script
mkdir -p ~/Library/LaunchAgents
cp /usr/local/Cellar/postgresql/VERSION/homebrew.mxcl.postgresql.plist ~/Library/LaunchAgents/
# Edit launchctl script (set to not start automatically and keepalive false)
subl ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
# Inject launchctl script
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
# Start PostgreSQL
start pg
```
### Ruby Gems
#### libv8
```bash
brew uninstall v8
gem uninstall libv8
wget https://dl.dropboxusercontent.com/u/7919548/gems/libv8/libv8-3.11.8.17-x86_64-darwin-13.gem
gem install libv8-3.11.8.17-x86_64-darwin-13.gem
```
#### capybara-webkit
```bash
brew install -v https://raw.github.com/cliffrowley/homebrew/patched_qt/Library/Formula/qt.rb --HEAD --without-ssse3
gem install capybara-webkit -v '0.9.0'
```
![aww yeah](http://i.imgur.com/AmFax.gif)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment