Add install script [Dirty]

pull/155/head
Yossi 2017-01-22 20:41:19 +02:00
parent 64a14a749f
commit 39a0952d3c
1 changed files with 229 additions and 0 deletions

View File

@ -38,3 +38,232 @@ usermod --pass='*' root
EOF
rm -f ${ROOTFS_DIR}/etc/ssh/ssh_host_*_key*
on_chroot << EOF
#-------------------------------------------------------
# Script to check if all is good before install script runs
#-------------------------------------------------------
echo "====== Dride install script ======"
echo ""
echo ""
echo ""
echo "██████╗ ██████╗ ██╗██████╗ ███████╗"
echo "██╔══██╗██╔══██╗██║██╔══██╗██╔════╝"
echo "██║ ██║██████╔╝██║██║ ██║█████╗ "
echo "██║ ██║██╔══██╗██║██║ ██║██╔══╝ "
echo "██████╔╝██║ ██║██║██████╔╝███████╗"
echo "╚═════╝ ╚═╝ ╚═╝╚═╝╚═════╝ ╚══════╝"
echo ""
echo ""
echo "This will install all the necessary dependences and software for dride."
echo "======================================================="
echo ""
echo ""
echo ""
echo ""
echo "==============================="
echo "*******************************"
echo " *** STARTING INSTALLATION ***"
echo " ** this may take a while **"
echo " *************************"
echo " ========================="
echo ""
echo ""
cd /home
# Install dependencies
echo "========== Update Aptitude ==========="
sudo apt-get update -y
# sudo apt-get upgrade
echo "========== Installing build-essential ============"
sudo apt-get install build-essential -y
echo "========== Installing libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev libjasper-dev python2.7-dev ============"
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev libjasper-dev python2.7-dev -y
echo "========== Installing pip ============"
sudo wget https://bootstrap.pypa.io/get-pip.py
sudo chmod +x get-pip.py
sudo python get-pip.py
echo "========== Installing Numpy ============"
sudo pip install numpy
echo "========== Downloading and installing OpenCV ============"
cd /
# git clone https://github.com/Itseez/opencv.git --depth 1
wget -c -O "opencv-3.1.0.zip" "https://github.com/Itseez/opencv/archive/3.1.0.zip"
sudo apt-get install unzip
unzip -q -n "opencv-3.1.0.zip"
cd opencv-3.1.0
echo "==>>>====== Building OpenCV ============"
cd /home/opencv-3.1.0
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D BUILD_EXAMPLES=OFF -D BUILD_opencv_apps=OFF -D BUILD_DOCS=OFF -D BUILD_PERF_TESTS=OFF -D BUILD_TESTS=OFF -D CMAKE_INSTALL_PREFIX=/usr/local ..
echo "==>>>====== This might take a long time.. ============"
make -j1
sudo make install
sudo ldconfig
# remove the installation file
# Install Node
echo "========== Installing Node ============"
sudo wget http://node-arm.herokuapp.com/node_latest_armhf.deb
sudo dpkg -i node_latest_armhf.deb
# TODO: Add a test if openCV was installed correctly
echo "========== Install Dride-core [Cardigan] ============"
cd /home
sudo git clone --depth 1 --recursive https://github.com/CardiganCam/Cardigan.git
cd Cardigan
# make the video dir writable
sudo chmod 777 -R modules/video/
echo "========== Install picamera ============"
sudo pip install "picamera[array]"
# enable camera on raspi-config
grep "start_x=1" /boot/config.txt
if grep "start_x=1" /boot/config.txt
then
echo "Already enabled."
else
sed -i "s/start_x=0/start_x=1/g" /boot/config.txt
reboot
fi
echo "========== Install omxplayer ============"
sudo apt-get install omxplayer -y
# Install WIFi
sudo apt-get install hostapd isc-dhcp-server -y
sudo apt-get install iptables-persistent -y
cd /home
# get the dhcpd config file
sudo wget https://dride.io/code/dhcpd.conf
sudo cp dhcpd.conf /etc/dhcp/dhcpd.conf
sudo rm dhcpd.conf
sudo bash -c 'echo "INTERFACES=\"wlan0\""> /etc/default/isc-dhcp-server'
sudo ifdown wlan0
sudo wget https://dride.io/code/interfaces
sudo cp interfaces /etc/network/interfaces
sudo rm interfaces
sudo ifconfig wlan0 192.168.42.1
sudo wget https://dride.io/code/hostapd.conf
sudo cp hostapd.conf /etc/hostapd/hostapd.conf
sudo rm hostapd.conf
sudo bash -c 'echo "DAEMON_CONF=\"/etc/hostapd/hostapd.conf\""> /etc/default/hostapd'
sudo wget https://dride.io/code/hostapd
sudo cp hostapd /etc/init.d/hostapd
sudo rm hostapd
sudo bash -c 'echo "net.ipv4.ip_forward=1"> /etc/sysctl.conf'
sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT
sudo sh -c "iptables-save > /etc/iptables/rules.v4"
sudo mv /usr/share/dbus-1/system-services/fi.epitest.hostap.WPASupplicant.service ~/
sudo service hostapd start
sudo service isc-dhcp-server start
sudo update-rc.d hostapd enable
sudo update-rc.d isc-dhcp-server enable
# dride-ws
cd /home/Cardigan/dride-ws
sudo npm i
sudo wget https://dride.io/code/startup/dride-ws
sudo wget https://dride.io/code/startup/dride-core
#startup script's
# express on startup
sudo cp dride-ws /etc/init.d/dride-ws
sudo chmod +x /etc/init.d/dride-ws
sudo update-rc.d dride-ws defaults
sudo rm dride-ws
# dride-core on startup
sudo cp dride-core /etc/init.d/dride-core
sudo chmod +x /etc/init.d/dride-core
sudo update-rc.d dride-core defaults
sudo rm dride-core
echo ""
echo '============================='
echo '*****************************'
echo '========= Finished =========='
echo '*****************************'
echo '============================='
echo ""
EOF