#!/bin/bash
# This script sets up OpenAI Lab for Linux Ubuntu

# Fail on the first error; killable by SIGINT
set -e
trap "exit" INT

# install system dependencies
sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test && sudo apt-get update
sudo apt-get install -y gcc-4.9 g++-4.9 libhdf5-dev libopenblas-dev git

# system dependencies for full openai gym
sudo apt-get install -y cmake zlib1g-dev libjpeg-dev xvfb libav-tools xorg-dev python-opengl libboost-all-dev libsdl2-dev swig

# install noti for auto-notification
if which noti >/dev/null; then
  echo "Noti is already installed"
else
  curl -L https://github.com/variadico/noti/releases/download/v2.5.0/noti2.5.0.linux-amd64.tar.gz | tar -xz
  sudo mv noti /usr/bin/
fi

# install nodejs (for npm and file watcher)
if which node >/dev/null; then
  echo "Nodejs is already installed"
else
  curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -
  sudo apt-get install -y nodejs
fi
# install npm modules
if [ -d ./node_modules ]; then
  echo "Npm modules already installed"
else
  npm install; sudo npm i -g grunt-cli
fi

# install python3
if which python3 >/dev/null; then
  echo "Python3 is already installed"
else
  sudo apt-get -y install python3-dev python3-pip python3-setuptools
fi

# install python dependencies
sudo python3 -m pip install -r requirements.txt
