client_setup: Remove image configuration part to builder/image-configure script

This commit is contained in:
Arthur
2019-05-16 21:46:56 +03:00
parent 451fd0820a
commit 8005dd9f90
2 changed files with 55 additions and 42 deletions

View File

@@ -12,8 +12,7 @@ fi
# check if enough arguments
if [[ $# -ne 4 ]] ; then
echo -e "\nPlease, enter arguments: router ssid, wifi password, copter id and server ip"
echo -e "\nExample: sudo $0 clever-swarm swarmwifi clever-1 192.168.1.100"
echo -e "\nWarning: this script requires wifi router to be connected to internet!\n"
echo -e "\nExample: sudo $0 clever-swarm swarmwifi clever-1 192.168.1.100\n"
exit 0
fi
@@ -62,40 +61,6 @@ $3
EOF
# add sudoers variables to make sudo works with ros (for led strip)
grep -qxF 'Defaults env_keep += "ROS_LOG_DIR"' /etc/sudoers || cat << EOT >> /etc/sudoers
Defaults env_keep += "PYTHONPATH"
Defaults env_keep += "PATH"
Defaults env_keep += "ROS_ROOT"
Defaults env_keep += "ROS_MASTER_URI"
Defaults env_keep += "ROS_PACKAGE_PATH"
Defaults env_keep += "ROS_LOCATIONS"
Defaults env_keep += "ROS_HOME"
Defaults env_keep += "ROS_LOG_DIR"
EOT
# configure aruco.launch and clever.launch (for positioning with aruco map)
sed -i '/<arg name="aruco_map"/c \ <arg name="aruco_map" default="true"/>' /home/pi/catkin_ws/src/clever/clever/launch/aruco.launch
sed -i '/<arg name="aruco_vpe"/c \ <arg name="aruco_vpe" default="true"/>' /home/pi/catkin_ws/src/clever/clever/launch/aruco.launch
sed -i '/<param name="map"/c \ <param name="map" value="\$\(find aruco_pose\)/map/animation_map.txt"/>' /home/pi/catkin_ws/src/clever/clever/launch/aruco.launch
sed -i '/<arg name="aruco"/c \ <arg name="aruco" default="true"/>' /home/pi/catkin_ws/src/clever/clever/launch/clever.launch
# copy office map to animation map if there is no animation map file
if ! [ -f "/home/pi/catkin_ws/src/clever/aruco_pose/map/animation_map.txt" ] ; then
sudo -u pi cp /home/pi/catkin_ws/src/clever/aruco_pose/map/office.txt /home/pi/catkin_ws/src/clever/aruco_pose/map/animation_map.txt
fi
# install samba and winbind (for hostname resolving)
# apt-get -y install samba
# apt-get -y install winbind
# set /etc/nsswitch.conf
sed -i '/hosts:/c hosts: files dns wins' /etc/nsswitch.conf
# install chrony (for time syncing)
# apt-get -y install chrony
# configure chrony as client
cat << EOF | tee /etc/chrony/chrony.conf
server $4 iburst
@@ -107,12 +72,8 @@ EOF
# change server ip in client_config
sed -i "0,/^host/s/\(^h.*\)/host = $4/" client_config.ini
# set roscore service to restart on-failure
sed -i '/Restart=/c Restart=on-failure\
RestartSec=3' /lib/systemd/system/roscore.service
# install python pause module
pip install pause
# enable clever show service
systemctl enable clever-show.service
# restart clever
reboot

52
builder/image-configure.sh Executable file
View File

@@ -0,0 +1,52 @@
#! /usr/bin/env bash
set -e
echo_stamp() {
# TEMPLATE: echo_stamp <TEXT> <TYPE>
# TYPE: SUCCESS, ERROR, INFO
# More info there https://www.shellhacks.com/ru/bash-colors/
TEXT="$(date '+[%Y-%m-%d %H:%M:%S]') $1"
TEXT="\e[1m${TEXT}\e[0m" # BOLD
case "$2" in
SUCCESS)
TEXT="\e[32m${TEXT}\e[0m";; # GREEN
ERROR)
TEXT="\e[31m${TEXT}\e[0m";; # RED
*)
TEXT="\e[34m${TEXT}\e[0m";; # BLUE
esac
echo -e ${TEXT}
}
# add sudoers variables to make sudo works with ros (for led strip)
grep -qxF 'Defaults env_keep += "ROS_LOG_DIR"' /etc/sudoers || cat << EOT >> /etc/sudoers
Defaults env_keep += "PYTHONPATH"
Defaults env_keep += "PATH"
Defaults env_keep += "ROS_ROOT"
Defaults env_keep += "ROS_MASTER_URI"
Defaults env_keep += "ROS_PACKAGE_PATH"
Defaults env_keep += "ROS_LOCATIONS"
Defaults env_keep += "ROS_HOME"
Defaults env_keep += "ROS_LOG_DIR"
EOT
# configure aruco.launch and clever.launch (for positioning with aruco map and optical flow)
sed -i '/<arg name="aruco_map"/c \ <arg name="aruco_map" default="true"/>' /home/pi/catkin_ws/src/clever/clever/launch/aruco.launch
sed -i '/<arg name="aruco_vpe"/c \ <arg name="aruco_vpe" default="true"/>' /home/pi/catkin_ws/src/clever/clever/launch/aruco.launch
sed -i '/<param name="map"/c \ <param name="map" value="\$\(find aruco_pose\)/map/animation_map.txt"/>' /home/pi/catkin_ws/src/clever/clever/launch/aruco.launch
sed -i '/<arg name="aruco"/c \ <arg name="aruco" default="true"/>' /home/pi/catkin_ws/src/clever/clever/launch/clever.launch
sed -i '/<arg name="rangefinder_vl53l1x"/c \ <arg name="rangefinder_vl53l1x" default="true"/>' /home/pi/catkin_ws/src/clever/clever/launch/clever.launch
sed -i '/<arg name="optical_flow"/c \ <arg name="optical_flow" default="true"/>' /home/pi/catkin_ws/src/clever/clever/launch/clever.launch
# copy office map to animation map if there is no animation map file
if ! [ -f "/home/pi/catkin_ws/src/clever/aruco_pose/map/animation_map.txt" ] ; then
sudo -u pi cp /home/pi/catkin_ws/src/clever/aruco_pose/map/office.txt /home/pi/catkin_ws/src/clever/aruco_pose/map/animation_map.txt
fi
echo_stamp "Image was configured!" "SUCCESS"