Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

guiding you through setting up an osx machine for open source ruby work

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 certificates
Octocat-spinner-32 config
Octocat-spinner-32 cookbooks
Octocat-spinner-32 roles
Octocat-spinner-32 site-cookbooks
Octocat-spinner-32 .gitignore
Octocat-spinner-32 README.md
Octocat-spinner-32 Rakefile
README.md

smeagol

smeagol is this ugly dude who led some hobbits around, this is kinda the same thing. Except, like, instead of hiking mordor you're trying to write some open source code on a mac.

FWIW it was easier to just write bash for this at first. Over time I've enjoyed maintaining this with chef more than I think I would've enjoyed straight up shell.

What it does

  • Sets you up with homebrew
  • Installs git from homebrew, sets up ~/.gitconfig
  • Installs postgresql, mysql, redis, memcached and mongodb. They're all configured to run when you login.
  • Installs rbenv and sets up 1.8.7 to be the default, self manages on 1.9.2 as well
  • Installs common ruby gems: rails 3, sinatra, fog, sqlite3, imagemagick, and all that bullshit
  • Installs a pretty sane ~/.irbrc
  • Installs a node.js development environment with npm
  • Installs a modern python environment with pip
  • Installs an erlang environment
  • Installs MacVim and sets up janus

This is what I run on my system, cinderella is a subset of that.

Running

% EDITOR="vim" \
  GITHUB_USER="fightclub" \
  GITHUB_TOKEN="..." \
  EMAIL="tyler@paperstreetsoap.com" \
  FULLNAME="Tyler Durden" \
  rake smeagol:install

Disabling Services

Smeagol installs a gem called lunchy which makes it trivial to enable/disable the services that are installed by default.

% ps auwwx | grep mongo
me      202   0.2  0.0  2462220   4120   ??  S    Sat03PM  14:08.53 /Users/me/Developer/Cellar/mongodb/1.8.0-x86_64/bin/mongod run --config /Users/me/Developer/Cellar/mongodb/1.8.0-x86_64/mongod.conf
% lunchy stop mongo
% ps auwwx | grep mongo
% lunchy start mongo
% ps auwwx | grep mongo
me    21060   0.2  0.0  2462220   3988   ??  R     1:12PM   0:00.34 /Users/me/Developer/Cellar/mongodb/1.8.0-x86_64/bin/mongod run --config /Users/me/Developer/Cellar/mongodb/1.8.0-x86_64/mongod.conf
Something went wrong with that request. Please try again.