#!/bin/bash 

sudo apt install python 3.8 -y
sudo apt-get install python3-pip -y
sudo apt-get install git -y
sudo apt-get install wget -y
sudo apt-get install grep -y

#Item2 LAMP
echo "start install LAMP"
sudo apt install tasksel -y
sudo tasksel install lamp-server


echo "install phpmyadmin"
cd /tmp/
pwd
wget https://files.phpmyadmin.net/phpMyAdmin/5.1.0/phpMyAdmin-5.1.0-all-languages.tar.gz
tar -zxvf phpMyAdmin-5.1.0-all-languages.tar.gz
rm phpMyAdmin-5.1.0-all-languages.tar.gz
mv phpMyAdmin-5.1.0-all-languages /var/www/html/phpmyadmin
cd /var/www/html/phpmyadmin
mkdir /tmp
cd

sudo apt install openssl -y
sudo apt install php-common -y
sudo apt install php-curl -y
sudo apt install php-json -y
sudo apt install php-mbstring -y
sudo apt install php-mysql -y
sudo apt install php-xml -y
sudo apt install php-zip -y
#php version
sudo apt install php7.2-mbstring -y
sudo apt install php7.2-xml -y
sudo apt install php7.2-mysql -y
sudo apt install php7.2-common -y
sudo apt install php7.2-curl -y
sudo apt install php7.2-json -y
sudo apt install php7.2-zip -y

echo "open apache2 "
sudo service apache2 start

echo "setting mysql pass"
# sudo mysql -u root -e "ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Gold@53743001';"
user="root"
ip="localhost"
pwd="Gold@53743001"
sudo mysql -u root -e "ALTER USER $user@$ip IDENTIFIED WITH mysql_native_password BY $pwd;"
echo "setting mysql done"

#Item3 MQTT
# install&setting mqtt server
sudo pip3 install paho-mqtt -y
sudo apt-get install mosquitto -y
sudo systemctl start mosquitto
sudo systemctl enable mosquitto

sudo ufw allow 1883/tcp
sudo ufw allow 8080/tcp
cd /
 
# get mqtt server file mosquitto.conf
git clone -b mosquitto --single-branch http://60.250.156.230:3000/fatwolf/mqtt_server_setting.git /mosquitto/

# get mqtt server file passwd.conf
git clone -b passwd --single-branch http://60.250.156.230:3000/fatwolf/mqtt_server_setting.git /passwd/

mv /mosquitto/mosquitto.conf /etc/mosquitto/
mv /passwd/passwd /etc/mosquitto/

rm -rf /mosquitto/
rm -rf /passwd/

sudo systemctl restart mosquitto

echo "mqtt server file done"

# install&setting mqtt client
# to be confirm packegs

#cd /usr/sbin/
# get mqtt client file aisky.mqttd
#git clone http://60.250.156.230:3000/fatwolf/mqtt_server_setting.git

#Item4 Watchdog
cd /
# get watchdog file proc-wdtd.conf
git clone -b procwdtdconf --single-branch http://60.250.156.230:3000/fatwolf/proc.git /procwdtdconf/

# get watchdog file proc-wdtd
git clone -b procwdtd --single-branch http://60.250.156.230:3000/fatwolf/proc.git /procwdtd/

#maybe use git clone to copy rc.local file?
#sudo nano /etc/rc.local/
# get watchdog file rc.local
git clone -b rclocal --single-branch http://60.250.156.230:3000/fatwolf/proc.git /rclocal/

mv /procwdtdconf/proc-wdtd.conf /etc/
mv /procwdtd/proc-wdtd /usr/sbin/
mv /rclocal/rc.local /etc/

rm -rf /procwdtdconf/
rm -rf /procwdtd/
rm -rf /rclocal/

sudo systemctl restart rc-local.service

echo "watchdog file done"

#Item5 Git Server
sudo apt-get install golang -y
cd /home/username/
git clone --depth 1 https://github.com/gogs/gogs.git gogs
cd gogs/
go build -o gogs

echo "Git Server done"
# ./gogs web

#Item6 Python packegs Library
sudo pip3 install flask -y
sudo pip3 install Flask-SQLAlchemy -y
sudo pip3 install pymysql -y
sudo pip3 install flask_mqtt -y
sudo pip3 install flask_migrate -y
sudo pip3 install flask-jwt-extended -y
sudo pip3 install numpy -y
sudo pip3 install pandas -y
sudo pip3 install opencv-python==4.2.0.34 -y
sudo pip3 install BeautifulSoup4 -y
sudo pip3 install selenium -y
sudo pip3 install geocoder -y
#Item7 AP(WebPage)
cd /
git clone http://60.250.156.230:3000/benson/SixthProject.git /Sixth/
mv /Sixth/BBend-Test-JWT.tar.gz /etc/Sixth
rm -rf /Sixth/
cd /etc/Sixth
tar -zxvf BBend-Test-JWT.tar.gz
var0="sudo python3 /etc/Sixth/BBend-Test-JWT/manage.py"
echo "manage.py=$var0" >> /etc/proc-wdtd.conf

echo "AP done"

#Item8 ROS ubuntu 18.04 melodic
#ROS It should be install in user not install in root
#install
sudo apt-get install -y chrony ntpdate
sudo ntpdate -q ntp.ubuntu.com
var="deb http://packages.ros.org/ros/ubuntu \$(lsb_release -sc) main"
# sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
sudo sh -c "echo $var > /etc/apt/sources.list.d/ros-latest.list"
sudo apt-key adv --keyserver "hkp://keyserver.ubuntu.com:80" --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
echo "deb ros packages and keyserver"
sudo apt-get update -y
sudo apt-get upgrade -y
sudo apt install ros-melodic-desktop-full -y
sudo apt-get install ros-melodic-rqt* -y
sudo apt-get install python-rosdep -y
sudo rosdep init
rosdep update
sudo apt-get install python-rosinstall -y
sudo apt-get install python-rosinstall-generator -y
sudo apt-get install python-wstool -y
sudo apt-get install build-essential -y
#setup
source /opt/ros/melodic/setup.bash
echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc
#Create Ros Workspace
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/
catkin_make
#Setup
source ~/catkin_ws/devel/setup.bash
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc
# need user name
echo $ROS_PACKAGE_PATH /home/youruser/catkin_ws/src:/opt/ros/melodic/share
source ~/.bashrc
printenv | grep ROS

echo "ROS done"