#!/bin/bash node=$(which node) if [ "${node}" == "" ]; then echo "Installing NodeJS" curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - sudo apt-get install nodejs else echo "Checking NodeJS Version" node_version=$(node -v | cut -c2-2) if [ $node_version -lt 8 ]; then echo "Updating NodeJS" sudo apt-get -y remove node curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - sudo apt-get -y install nodejs fi fi mongo=$(which mongo) if [ "${mongo}" == "" ]; then echo "Installing MongoDB" sudo apt-get -y install mongodb else echo "Checking MongoDB Version" mongo_version=$(mongo -version | cut -c24-24) if [ "$mongo_version" -lt 2 ]; then echo "Updating MongoDB" sudo apt-get -y install mongo fi fi echo "Installing basic packages" sudo apt-get -y install gcc make libssl-dev libcurl4-openssl-dev curl -sL https://raw.githubusercontent.com/lashower/raspi2png/master/installer.sh | bash - pm2=$(which pm2) if [ "${pm2}" == "" ]; then echo "Installing PM2" sudo npm install -g pm2 else echo "Checking PM2 Version" pm2_version=$(pm2 -v | cut -c1-1) if [ $pm2_version -lt 2 ]; then echo "Updtating PM2" sudo npm install -g pm2 sudo npm install pm2@latest -g ; sudo pm2 update fi fi cd $HOME mkdir -p nodejs cd nodejs if [ -d 'RetroPieWebConsole' ]; then echo "Updating RetroPieWebConsole" cd $HOME/nodejs/RetroPieWebConsole git pull git submodule update else echo "Installing RetroPieWebConsole" git clone https://github.com/lashower/RetroPieWebConsole.git cd $HOME/nodejs/RetroPieWebConsole fi npm install appname="RetroPieWebConsole" pingtest=$(sudo pm2 ping $appname) appid=$(sudo pm2 id $appname) if [ "$appid" == "[]" ]; then echo "Starting up application" sudo pm2 start app.js -f --name="$appname" echo "Adding auto startup" sudo pm2 startup sudo pm2 save fi chmod -R 777 $HOME/nodejs/RetroPieWebConsole/install.sh chmod -R 777 $HOME/nodejs/RetroPieWebConsole/updater.sh IP="$(ip route get 1 | awk '{print $NF;exit}')"; echo "" echo "##########################################################" echo "# #" echo "# The Web Console is available at http://${IP}:3000/ #" echo "# #" echo "##########################################################"