-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsetup.bash
More file actions
executable file
·105 lines (89 loc) · 6.53 KB
/
setup.bash
File metadata and controls
executable file
·105 lines (89 loc) · 6.53 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
#!/usr/bin/env bash
setupRobot() {
local robot_name="$1"
local valid_names=("bento_box" "zyklop" "schaeufele" "crabby")
# setup ros
source "/opt/ros/jazzy/setup.bash"
# fix error with rviz2 on kde neon
alias rviz2='QT_QPA_PLATFORM=xcb rviz2'
# Validate name
if [[ ! " ${valid_names[*]} " =~ " ${robot_name} " ]]; then
echo "WiFi is not a robot. Connect to 'Bento-Box', 'Schaeufele', 'Zyklop' or 'Crabby'"
return 1
fi
# setup xauth for Bento-Operation docker
if ! [[ -e $HOME/.Xauthority ]]
then
ln -sf /run/user/1000/xauth_* ~/.Xauthority
fi
# set up shortcut for Bento-Operation
alias begin_operation='docker compose -f $HOME/Code/Bento-Operation/compose.yaml up'
export BENTO_ROBOT_NAME="$robot_name"
# do fine art 🤌
case "$robot_name" in
"bento_box")
cat << EOF
░▒▓███████▓▒░░▒▓████████▓▒░▒▓███████▓▒░▒▓████████▓▒░▒▓██████▓▒░ ░▒▓███████▓▒░ ░▒▓██████▓▒░░▒▓█▓▒░░▒▓█▓▒░
░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░ ░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░
░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░ ░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░
░▒▓███████▓▒░░▒▓██████▓▒░ ░▒▓█▓▒░░▒▓█▓▒░ ░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░ ░▒▓███████▓▒░░▒▓█▓▒░░▒▓█▓▒░░▒▓██████▓▒░
░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░ ░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░
░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░ ░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░
░▒▓███████▓▒░░▒▓████████▓▒░▒▓█▓▒░░▒▓█▓▒░ ░▒▓█▓▒░ ░▒▓██████▓▒░ ░▒▓███████▓▒░ ░▒▓██████▓▒░░▒▓█▓▒░░▒▓█▓▒░
EOF
;;
"schaeufele")
cat << EOF
░▒▓███████▓▒░░▒▓██████▓▒░░▒▓█▓▒░░▒▓█▓▒░░▒▓██████▓▒░░▒▓████████▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓████████▓▒░▒▓████████▓▒░▒▓█▓▒░ ░▒▓████████▓▒░
░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░ ░▒▓█▓▒░ ░▒▓█▓▒░ ░▒▓█▓▒░
░▒▓█▓▒░ ░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░ ░▒▓█▓▒░ ░▒▓█▓▒░ ░▒▓█▓▒░
░▒▓██████▓▒░░▒▓█▓▒░ ░▒▓████████▓▒░▒▓████████▓▒░▒▓██████▓▒░ ░▒▓█▓▒░░▒▓█▓▒░▒▓██████▓▒░ ░▒▓██████▓▒░ ░▒▓█▓▒░ ░▒▓██████▓▒░
░▒▓█▓▒░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░ ░▒▓█▓▒░ ░▒▓█▓▒░ ░▒▓█▓▒░
░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░ ░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░ ░▒▓█▓▒░ ░▒▓█▓▒░ ░▒▓█▓▒░
░▒▓███████▓▒░ ░▒▓██████▓▒░░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓████████▓▒░░▒▓██████▓▒░░▒▓█▓▒░ ░▒▓████████▓▒░▒▓████████▓▒░▒▓████████▓▒░
EOF
;;
"zyklop")
cat << EOF
)
( /( ) (
)\()) ( ( /( )\
((_)\ )\ ) )\())((_) ( )
_((_)(()/( ((_)\ _ )\ /(/(
|_ / )(_))| |(_)| | ((_)((_)_\
/ / | || || / / | |/ _ \| '_ \)
/___| \_, ||_\_\ |_|\___/| .__/
|__/ |_|
EOF
;;
"crabby")
cat << EOF
▗▞▀▘ ▄▄▄ ▗▞▀▜▌▗▖ ▗▖ ▄ ▄
▝▚▄▖█ ▝▚▄▟▌▐▌ ▐▌ █ █
█ ▐▛▀▚▖▐▛▀▚▖ ▀▀▀█
▐▙▄▞▘▐▙▄▞▘▄ █
▀▀▀
EOF
;;
esac
}
chooseWifi() {
local wifiname
wifiname=$(iwgetid -r 2>/dev/null)
case "$wifiname" in
"Bento-Box") echo "bento_box" ;;
"Schaeufele") echo "schaeufele" ;;
"Zyklop") echo "zyklop" ;;
"Crabby") echo "crabby" ;;
*)
return 1
;;
esac
}
# --- Main ---
robot_name=$(chooseWifi)
if [[ -n "$robot_name" ]]; then
setupRobot "$robot_name"
else
echo "Could not determine robot from Wi-Fi."
fi