From 8005dd9f900db5bdfb39840947ea27c65e0e2dcf Mon Sep 17 00:00:00 2001 From: Arthur Date: Thu, 16 May 2019 21:46:56 +0300 Subject: [PATCH] client_setup: Remove image configuration part to builder/image-configure script --- Drone/client_setup.sh | 45 +++------------------------------ builder/image-configure.sh | 52 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 55 insertions(+), 42 deletions(-) create mode 100755 builder/image-configure.sh diff --git a/Drone/client_setup.sh b/Drone/client_setup.sh index e188f57..1eecf4d 100755 --- a/Drone/client_setup.sh +++ b/Drone/client_setup.sh @@ -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 '/' /home/pi/catkin_ws/src/clever/clever/launch/aruco.launch -sed -i '/' /home/pi/catkin_ws/src/clever/clever/launch/aruco.launch -sed -i '/' /home/pi/catkin_ws/src/clever/clever/launch/aruco.launch -sed -i '/' /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 \ No newline at end of file diff --git a/builder/image-configure.sh b/builder/image-configure.sh new file mode 100755 index 0000000..1edc3de --- /dev/null +++ b/builder/image-configure.sh @@ -0,0 +1,52 @@ +#! /usr/bin/env bash + +set -e + +echo_stamp() { + # TEMPLATE: echo_stamp + # 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 '/' /home/pi/catkin_ws/src/clever/clever/launch/aruco.launch +sed -i '/' /home/pi/catkin_ws/src/clever/clever/launch/aruco.launch +sed -i '/' /home/pi/catkin_ws/src/clever/clever/launch/aruco.launch +sed -i '/' /home/pi/catkin_ws/src/clever/clever/launch/clever.launch +sed -i '/' /home/pi/catkin_ws/src/clever/clever/launch/clever.launch +sed -i '/' /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" +