forked from madebymarket/devbox
-
Notifications
You must be signed in to change notification settings - Fork 0
/
mac
executable file
·88 lines (66 loc) · 3.42 KB
/
mac
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
#!/usr/bin/env bash
successfully() {
$* || (echo "\nfailed" 1>&2 && exit 1)
}
fancy_echo() {
echo "\n$1"
}
fancy_echo "Checking for SSH key, generating one if it doesn't exist ..."
[[ -f ~/.ssh/id_rsa.pub ]] || ssh-keygen -t rsa
fancy_echo "Fixing permissions ..."
successfully sudo mkdir -p /usr/local
successfully sudo chown -R `whoami` /usr/local
fancy_echo "Installing Homebrew, a good OS X package manager ..."
successfully ruby <(curl -fsS https://raw.github.com/mxcl/homebrew/go)
successfully brew update
if ! grep -qs "recommended by brew doctor" ~/.bashrc; then
fancy_echo "Put Homebrew location earlier in PATH ..."
successfully echo "# recommended by brew doctor" >> ~/.bashrc
successfully echo "export PATH='/usr/local/bin:$PATH'\n" >> ~/.bashrc
successfully source ~/.bashrc
fi
fancy_echo "Installing GNU Compiler Collection, a necessary prerequisite to installing Ruby ..."
successfully brew tap homebrew/dupes
successfully brew install apple-gcc42
fancy_echo "Installing system libraries recommended for Ruby"
successfully brew install gdbm libffi libksba libyaml
fancy_echo "Creat Launch Agent directory for auto start of services"
mkdir -p ~/Library/LaunchAgents
fancy_echo "Installing Postgres, a good open source relational database ..."
successfully brew install postgres --no-python
successfully initdb /usr/local/var/postgres -E utf8
successfully ln -sfv /usr/local/opt/postgresql/*.plist ~/Library/LaunchAgents
successfully launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
fancy_echo "Instaling MySQL ..."
successfully brew install mysql
successfully unset TMPDIR
successfully mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp
successfully ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents
successfully launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
fancy_echo "Installing Memcached, a good open source memory store (for caching) ..."
successfully brew install memcached
successfully ln -sfv /usr/local/opt/memcached/*.plist ~/Library/LaunchAgents
successfully launchctl load ~/Library/LaunchAgents/homebrew.mxcl.memcached.plistplist
fancy_echo "Installing Redis, a good key-value database ..."
successfully brew install redis
successfully ln -sfv /usr/local/opt/redis/*.plist ~/Library/LaunchAgents
successfully launchctl load ~/Library/LaunchAgents/homebrew.mxcl.redis.plist
fancy_echo "Installing nodejs..."
successfully brew install nodejs
fancy_echo "Installing QT, used by Capybara Webkit for headless Javascript integration testing ..."
successfully brew install qt
fancy_echo "Installing ctags, to index files for vim tab completion of methods, classes, variables ..."
successfully brew install ctags
fancy_echo "Installing ImageMagick, to crop and resize images ..."
successfully brew install imagemagick
fancy_echo "Installing rvm"
successfully \curl -L https://get.rvm.io | bash -s stable
successfully source ~/.rvm/scripts/rvm
fancy_echo "Installing Ruby 1.9.3 ..."
CC=gcc-4.2 successfully rvm install 1.9.3 --patch railsexpress
fancy_echo "Setting Ruby 1.9.3 as global default Ruby ..."
successfully rvm use 1.9.3 --default
fancy_echo "Updating to latest Rubygems version ..."
successfully gem update --system
fancy_echo "Installing critical Ruby gems for Rails development ..."
successfully gem install bundler pg rails --no-document