Commit 04842087 by Slater-Victoroff

Merge pull request #25 from edx/slater/new_mac_dev_script

Slater/new mac dev script
parents 4a997842 57e43770
...@@ -72,3 +72,4 @@ Giulio Gratta <giulio@giuliogratta.com> ...@@ -72,3 +72,4 @@ Giulio Gratta <giulio@giuliogratta.com>
David Baumgold <david@davidbaumgold.com> David Baumgold <david@davidbaumgold.com>
Jason Bau <jbau@stanford.edu> Jason Bau <jbau@stanford.edu>
Frances Botsford <frances@edx.org> Frances Botsford <frances@edx.org>
Slater Victoroff <slater.r.victoroff@gmail.com>
...@@ -8,8 +8,8 @@ Installation ...@@ -8,8 +8,8 @@ Installation
The installation process is a bit messy at the moment. Here's a high-level The installation process is a bit messy at the moment. Here's a high-level
overview of what you should do to get started. overview of what you should do to get started.
**TLDR:** There is a `scripts/create-dev-env.sh` script that will attempt to set all **TLDR:** There is a `scripts/create-dev-env.sh` that will attempt to set all of this up for you.
of this up for you. If you're in a hurry, run that script. Otherwise, I suggest If you're in a hurry, run that script. Otherwise, I suggest
that you understand what the script is doing, and why, by reading this document. that you understand what the script is doing, and why, by reading this document.
Directory Hierarchy Directory Hierarchy
......
python-software-properties python-software-properties
pkg-config pkg-config
gfortran
libatlas-dev
libblas-dev
liblapack-dev
liblapack3gf
curl curl
git git
python-virtualenv python-virtualenv
python-scipy
python-numpy
build-essential build-essential
python-dev python-dev
gfortran gfortran
liblapack-dev
libfreetype6-dev libfreetype6-dev
libpng12-dev libpng12-dev
libjpeg-dev libjpeg-dev
...@@ -14,6 +20,7 @@ libxml2-dev ...@@ -14,6 +20,7 @@ libxml2-dev
libxslt-dev libxslt-dev
yui-compressor yui-compressor
graphviz graphviz
libgraphviz-dev
graphviz-dev graphviz-dev
mysql-server mysql-server
libmysqlclient-dev libmysqlclient-dev
...@@ -23,3 +30,7 @@ libreadline6-dev ...@@ -23,3 +30,7 @@ libreadline6-dev
mongodb mongodb
nodejs nodejs
coffeescript coffeescript
mysql
libmysqlclient-dev
virtualenvwrapper
libgeos-ruby1.8
...@@ -16,10 +16,11 @@ output() { ...@@ -16,10 +16,11 @@ output() {
### START ### START
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" SELF_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
BREW_FILE=$DIR/"brew-formulas.txt" REQUIREMENTS_DIR="$SELF_DIR/../requirements/system"
APT_REPOS_FILE=$DIR/"apt-repos.txt" BREW_FILE=$REQUIREMENTS_DIR/"mac_os_x/brew-formulas.txt"
APT_PKGS_FILE=$DIR/"apt-packages.txt" APT_REPOS_FILE=$REQUIREMENTS_DIR/"ubuntu/apt-repos.txt"
APT_PKGS_FILE=$REQUIREMENTS_DIR/"ubuntu/apt-packages.txt"
case `uname -s` in case `uname -s` in
[Ll]inux) [Ll]inux)
...@@ -30,8 +31,9 @@ case `uname -s` in ...@@ -30,8 +31,9 @@ case `uname -s` in
distro=`lsb_release -cs` distro=`lsb_release -cs`
case $distro in case $distro in
maya|lisa|natty|oneiric|precise|quantal) #Tries to install the same
output "Installing Ubuntu requirements" squeeze|wheezy|jessie|maya|lisa|olivia|nadia|natty|oneiric|precise|quantal|raring)
output "Installing Debian family requirements"
# DEBIAN_FRONTEND=noninteractive is required for silent mysql-server installation # DEBIAN_FRONTEND=noninteractive is required for silent mysql-server installation
export DEBIAN_FRONTEND=noninteractive export DEBIAN_FRONTEND=noninteractive
...@@ -39,7 +41,10 @@ case `uname -s` in ...@@ -39,7 +41,10 @@ case `uname -s` in
# add repositories # add repositories
cat $APT_REPOS_FILE | xargs -n 1 sudo add-apt-repository -y cat $APT_REPOS_FILE | xargs -n 1 sudo add-apt-repository -y
sudo apt-get -y update sudo apt-get -y update
sudo apt-get -y install gfortran
sudo apt-get -y install graphviz libgraphviz-dev graphviz-dev
sudo apt-get -y install libatlas-dev libblas-dev
sudo apt-get -y install ruby-rvm
# install packages listed in APT_PKGS_FILE # install packages listed in APT_PKGS_FILE
cat $APT_PKGS_FILE | xargs sudo apt-get -y install cat $APT_PKGS_FILE | xargs sudo apt-get -y install
;; ;;
...@@ -70,10 +75,13 @@ EO ...@@ -70,10 +75,13 @@ EO
output "Installing OSX requirements" output "Installing OSX requirements"
if [[ ! -r $BREW_FILE ]]; then if [[ ! -r $BREW_FILE ]]; then
error "$BREW_FILE does not exist, needed to install brew" error "$BREW_FILE does not exist, please include the brew formulas file in the requirements/system/mac_os_x directory"
exit 1 exit 1
fi fi
# for some reason openssl likes to be installed by itself first
brew install openssl
# brew errors if the package is already installed # brew errors if the package is already installed
for pkg in $(cat $BREW_FILE); do for pkg in $(cat $BREW_FILE); do
grep $pkg <(brew list) &>/dev/null || { grep $pkg <(brew list) &>/dev/null || {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment