1
1
#! /bin/bash
2
2
# Script to install development tools and libraries for robotics and simulation
3
+ echo
4
+ echo -e " \033[94m============================================================\033[0m"
5
+ echo -e " \033[94m== One-liner Installation Script for ROS-Gazebo Framework ==\033[0m"
6
+ echo -e " \033[94m============================================================\033[0m"
7
+ echo -e " Requirements: Ubuntu 24.04 LTS Noble"
8
+ echo -e " \033[94m============================================================\033[0m"
3
9
4
- echo " Updating package lists..."
5
- sudo apt update
6
-
10
+ echo
11
+ echo -e " \033[96m(1/4) ------------- Updating the System ----------------\033[0m"
7
12
echo " Performing full system upgrade (this might take a while)..."
8
- sudo apt full-upgrade -y
13
+ sudo sudo apt update && apt full-upgrade -y
9
14
10
- echo " Installing essential tools and libraries..."
15
+ echo
16
+ echo -e " \033[96m(2/4) ------------ Install Dependencies ---------------\033[0m"
17
+ echo -e " \033[34mInstalling essential tools and libraries...\033[0m"
11
18
sudo apt install -y \
12
19
build-essential \
13
20
cmake \
@@ -29,9 +36,9 @@ sudo apt install -y \
29
36
sudo \
30
37
wget
31
38
32
- echo " Installation complete! "
33
-
34
- echo " Installing Signing Keys for ROS and Gazebo..."
39
+ echo
40
+ echo -e " \033[96m(3/4) ------------ Install Package Keys ---------------\033[0m "
41
+ echo -e " \033[34mInstalling Signing Keys for ROS and Gazebo...\033[0m "
35
42
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key \
36
43
-o /usr/share/keyrings/ros-archive-keyring.gpg
37
44
sudo wget https://packages.osrfoundation.org/gazebo.gpg \
@@ -49,39 +56,50 @@ REPO="deb [arch=$ARCH signed-by=/usr/share/keyrings/pkgs-osrf-archive-keyring.gp
49
56
http://packages.osrfoundation.org/gazebo/ubuntu-stable $DISTRO main"
50
57
echo " $REPO " | sudo tee /etc/apt/sources.list.d/gazebo-stable.list > /dev/null
51
58
52
- echo " Installing ROS Gazebo framework..."
59
+ echo
60
+ echo -e " \033[96m(4/4) ------------ Install ROS-Gazebo ---------------\033[0m"
61
+ DIST=jazzy
62
+ GAZEBO=gz-harmonic
63
+
64
+ echo -e " \033[34mInstalling ROS Gazebo framework...\033[0m"
53
65
sudo apt update && apt install -y \
54
66
python3-rosdep \
55
67
python3-rosinstall-generator \
56
68
python3-vcstool \
57
- gz-harmonic \
58
- ros-jazzy -desktop-full \
59
- ros-jazzy -gz-plugin-vendor \
60
- ros-jazzy -gz-ros2-control \
61
- ros-jazzy -effort-controllers \
62
- ros-jazzy -geographic-info \
63
- ros-jazzy -image-view \
64
- ros-jazzy -joint-state-publisher \
65
- ros-jazzy -joy \
66
- ros-jazzy -joy-teleop \
67
- ros-jazzy -key-teleop \
68
- ros-jazzy -moveit-planners \
69
- ros-jazzy -moveit-simple-controller-manager \
70
- ros-jazzy -moveit-ros-visualization \
71
- ros-jazzy -pcl-ros \
72
- ros-jazzy -robot-localization \
73
- ros-jazzy -robot-state-publisher \
74
- ros-jazzy -ros-base \
75
- ros-jazzy -ros2-controllers \
76
- ros-jazzy -rqt \
77
- ros-jazzy -rqt-common-plugins \
78
- ros-jazzy -rviz2 \
79
- ros-jazzy -teleop-tools \
80
- ros-jazzy -teleop-twist-joy \
81
- ros-jazzy -teleop-twist-keyboard \
82
- ros-jazzy -tf2-geometry-msgs \
83
- ros-jazzy -tf2-tools \
84
- ros-jazzy -urdfdom-py \
85
- ros-jazzy -xacro \
69
+ $GAZEBO \
70
+ ros-$DIST -desktop-full \
71
+ ros-$DIST -gz-plugin-vendor \
72
+ ros-$DIST -gz-ros2-control \
73
+ ros-$DIST -effort-controllers \
74
+ ros-$DIST -geographic-info \
75
+ ros-$DIST -image-view \
76
+ ros-$DIST -joint-state-publisher \
77
+ ros-$DIST -joy \
78
+ ros-$DIST -joy-teleop \
79
+ ros-$DIST -key-teleop \
80
+ ros-$DIST -moveit-planners \
81
+ ros-$DIST -moveit-simple-controller-manager \
82
+ ros-$DIST -moveit-ros-visualization \
83
+ ros-$DIST -pcl-ros \
84
+ ros-$DIST -robot-localization \
85
+ ros-$DIST -robot-state-publisher \
86
+ ros-$DIST -ros-base \
87
+ ros-$DIST -ros2-controllers \
88
+ ros-$DIST -rqt \
89
+ ros-$DIST -rqt-common-plugins \
90
+ ros-$DIST -rviz2 \
91
+ ros-$DIST -teleop-tools \
92
+ ros-$DIST -teleop-twist-joy \
93
+ ros-$DIST -teleop-twist-keyboard \
94
+ ros-$DIST -tf2-geometry-msgs \
95
+ ros-$DIST -tf2-tools \
96
+ ros-$DIST -urdfdom-py \
97
+ ros-$DIST -xacro \
86
98
ros-dev-tools \
87
- ros-jazzy-ros-gz \
99
+ ros-$DIST -ros-gz
100
+
101
+ echo
102
+ echo -e " \033[32mROS-Gazebo Framework Installation completed. Awesome! 🤘🚀 \033[0m"
103
+ echo -e " Following command will set-up ROS environment variables to run it"
104
+ echo -e " \033[95msource /opt/ros/jazzy/setup.bash\033[0m"
105
+ echo -e " You may check ROS, and Gazebo version installed with \033[33mprintenv ROS_DISTRO\033[0m and \033[33mecho \$ GZ_VERSION\033[0m"
0 commit comments