ROS2 Jazzy Crash Course 2025 - auto_install script doesn't install all packages

According to the video, when the rosject is started, it should open the shell and run an installation script that installs all required packages. When I start the rosject, the script is run, but it seems it can’t locate some of the packages. This is the output of the script:

Get:1 http://archive.ubuntu.com/ubuntunoble InRelease [256 kB]
Get:2 http://security.ubuntu.com/ubuntu noble-security InRelease [126 kB]
Get:3 http://archive.ubuntu.com/ubuntu noble-updates InRelease [126 kB]
Get:4 http://archive.ubuntu.com/ubuntu noble-backports InRelease [126 kB]
Get:5 http://security.ubuntu.com/ubuntu noble-security/main amd64 Packages [1093 kB]
Get:6 http://security.ubuntu.com/ubuntu noble-security/main amd64 Components [24.9 kB]
Get:7 http://archive.ubuntu.com/ubuntu noble/main amd64 Packages [1808 kB]
Get:8 http://security.ubuntu.com/ubuntu noble-security/universe amd64 Packages [1097 kB]
Get:9 http://security.ubuntu.com/ubuntu noble-security/universe amd64 Components [65.4 kB]
Get:10 http://security.ubuntu.com/ubuntu noble-security/restricted amd64 Packages [1442 kB]
Get:11 http://security.ubuntu.com/ubuntu noble-security/restricted amd64 Components [156 B]
Get:12 http://security.ubuntu.com/ubuntu noble-security/multiverse amd64 Packages [22.1 kB]
Get:13 http://security.ubuntu.com/ubuntu noble-security/multiverse amd64 Components [157 B]
Get:14 http://packages.ros.org/ros2/ubuntu noble InRelease [4676 B]
Get:15 http://archive.ubuntu.com/ubuntu noble/main amd64 Components [665 kB]
Get:16 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages [19.3 MB]
Err:14 http://packages.ros.org/ros2/ubuntu noble InRelease
  The following signatures were invalid: EXPKEYSIG F42ED6FBAB17C654 Open Robotics <info@osrfoundation.org>
Get:17 http://archive.ubuntu.com/ubuntu noble/universe amd64 Components [5943 kB]
Get:18 http://archive.ubuntu.com/ubuntu noble/restricted amd64 Packages [117 kB]
Get:19 http://archive.ubuntu.com/ubuntu noble/multiverse amd64 Packages [331 kB]
Get:20 http://archive.ubuntu.com/ubuntu noble/multiverse amd64 Components [41.9 kB]
Get:21 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages [1418 kB]
Get:22 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Components [216 kB]
Get:23 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Packages [1400 kB]
Get:24 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Components [519 kB]
Get:25 http://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Packages [1495 kB]
Get:26 http://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Components [158 B]
Get:27 http://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Packages [26.7 kB]
Get:28 http://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Components [887 B]
Get:29 http://archive.ubuntu.com/ubuntu noble-backports/main amd64 Packages [48.0 kB]
Get:30 http://archive.ubuntu.com/ubuntu noble-backports/main amd64 Components [7830 B]
Get:31 http://archive.ubuntu.com/ubuntu noble-backports/universe amd64 Packages [31.8 kB]
Get:32 http://archive.ubuntu.com/ubuntu noble-backports/universe amd64 Components [18.2 kB]
Get:33 http://archive.ubuntu.com/ubuntu noble-backports/restricted amd64 Components [160 B]
Get:34 http://archive.ubuntu.com/ubuntu noble-backports/multiverse amd64 Components [161 B]
Reading package lists... Done
W: GPG error: http://packages.ros.org/ros2/ubuntu noble InRelease: The following signatures were invalid: EXPKEYSIG F42ED6FBAB17C654 Open Robotics <info@osrfoundation.org>
E: The repository 'http://packages.ros.org/ros2/ubuntu noble InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package ros-jazzy-robot-localization
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package ros-jazzy-controller-manager
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package ros-jazzy-ros2-control
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package ros-jazzy-ros2-controllers
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package ros-jazzy-gz-ros2-control

real    0m19.486s
user    0m0.019s
sys     0m0.040s

Furthermore, if I then try to source the setup.bash and run the simulation, Gazebo does open with a correct scene, but without the robot. The output after launching the simulation is as follows (after which an active shell prompt is give):

[INFO] [launch]: All log files can be found below /home/user/.ros/log/2025-06-10-14-07-45-423287-4_xterm-1801
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [launch.user]: Robots:
[INFO] [launch.user]: Launching namespace= with init_pose= {'x': '0.0', 'y': '0.0', 'z': '0.2', 'roll': '0.0', 'pitch': '0.0', 'yaw': '0.0'}
[ERROR] [launch]: Caught exception in launch (see debug for traceback): "package 'controller_manager' not found, searching: ['/home/user/sim_ws/install/teleop_twist_keyboard', '/home/user/sim_ws/install/rosbot_xl_utils', '/home/user/sim_ws/install/rosbot_xl_gazebo', '/home/user/sim_ws/install/rosbot_xl', '/home/user/sim_ws/install/rosbot_xl_bringup', '/home/user/sim_ws/install/rosbot_xl_controller', '/home/user/sim_ws/install/rosbot_xl_description', '/home/user/sim_ws/install/ros_components_description', '/home/user/sim_ws/install/nav2_common', '/home/user/sim_ws/install/husarion_gz_worlds', '/home/simulations/ros2_sims_ws/install/rmw_cyclonedds_cpp', '/home/user/ros2_ws/install/dds_tests_pkg', '/opt/ros/jazzy']"

Any help?

Have you added at the beginning of the course_install.sh a line updating the packages:

sudo apt update

I was running this via the virtual desktop like in the video, as I don’t have Linux environment at the moment. Also, I don’t have that much experience on Linux, so it seemed prudent to do it on the environment provided. I tried updating apt and then running the course_install script again, but that didn’t help.
Output of update:

Hit:1 http://security.ubuntu.com/ubuntu noble-security InRelease
Hit:2 http://archive.ubuntu.com/ubuntu noble InRelease
Hit:3 http://archive.ubuntu.com/ubuntu noble-updates InRelease
Hit:4 http://archive.ubuntu.com/ubuntu noble-backports InRelease
Get:5 http://packages.ros.org/ros2/ubuntu noble InRelease [4676 B]
Err:5 http://packages.ros.org/ros2/ubuntu noble InRelease
  The following signatures were invalid: EXPKEYSIG F42ED6FBAB17C654 Open Robotics <info@osrfoundation.org>
Reading package lists... Done
W: GPG error: http://packages.ros.org/ros2/ubuntu noble InRelease: The following signatures were invalid: EXPKEYSIG F42ED6FBAB17C654 Open Robotics <info@osrfoundation.org>
E: The repository 'http://packages.ros.org/ros2/ubuntu noble InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

output of install script:

Hit:1 http://security.ubuntu.com/ubuntu noble-security InRelease
Hit:2 http://archive.ubuntu.com/ubuntu noble InRelease
Hit:3 http://archive.ubuntu.com/ubuntu noble-updates InRelease
Hit:4 http://archive.ubuntu.com/ubuntu noble-backports InRelease
Get:5 http://packages.ros.org/ros2/ubuntu noble InRelease [4676 B]
Err:5 http://packages.ros.org/ros2/ubuntu noble InRelease
  The following signatures were invalid: EXPKEYSIG F42ED6FBAB17C654 Open Robotics <info@osrfoundation.org>
Reading package lists... Done
W: GPG error: http://packages.ros.org/ros2/ubuntu noble InRelease: The following signatures were invalid: EXPKEYSIG F42ED6FBAB17C654 Open Robotics <info@osrfoundation.org>
E: The repository 'http://packages.ros.org/ros2/ubuntu noble InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

Hit:1 http://archive.ubuntu.com/ubuntu noble InRelease
Hit:2 http://security.ubuntu.com/ubuntu noble-security InRelease
Hit:3 http://archive.ubuntu.com/ubuntu noble-updates InRelease
Hit:4 http://archive.ubuntu.com/ubuntu noble-backports InRelease
Get:5 http://packages.ros.org/ros2/ubuntu noble InRelease [4676 B]
Err:5 http://packages.ros.org/ros2/ubuntu noble InRelease
  The following signatures were invalid: EXPKEYSIG F42ED6FBAB17C654 Open Robotics <info@osrfoundation.org>
Reading package lists... Done
W: GPG error: http://packages.ros.org/ros2/ubuntu noble InRelease: The following signatures were invalid: EXPKEYSIG F42ED6FBAB17C654 Open Robotics <info@osrfoundation.org>
E: The repository 'http://packages.ros.org/ros2/ubuntu noble InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package ros-jazzy-robot-localization
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package ros-jazzy-controller-manager
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package ros-jazzy-ros2-control
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package ros-jazzy-ros2-controllers
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package ros-jazzy-gz-ros2-control

e: and it seems the course install.sh does include the apt udate

OK I see your problem and found where the error is. Please do the following steps to correct everything:

  1. Go to your list of rosjects (My rosjects) and click on the image of your Jazzy rosject to open all the options of the rosject

  1. Click on Deleteto delete the rosject. Delete it completely
  2. Click on this link to get a new and upgraded version of the rosject: https://app.theconstruct.ai/l/68e888b2/

That’s it. Your rosject will now work properly.

Let me know if you still have problems

Still doesn’t seem to work.
I deleted the previous rosject, and started a new one with the link you provided.

output of install script:

Get:1 http://archive.ubuntu.com/ubuntu noble InRelease [256 kB]
Get:2 http://archive.ubuntu.com/ubuntu noble-updates InRelease [126 kB]
Get:3 http://archive.ubuntu.com/ubuntu noble-backports InRelease [126 kB]
Get:4 http://archive.ubuntu.com/ubuntu noble/main amd64 Packages [1808 kB]
Get:5 http://archive.ubuntu.com/ubuntu noble/main amd64 Components [665 kB]
Get:6 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages [19.3 MB]
Get:7 http://security.ubuntu.com/ubuntu noble-security InRelease [126 kB]
Get:8 http://archive.ubuntu.com/ubuntu noble/universe amd64 Components [5943 kB]
Get:9 http://security.ubuntu.com/ubuntu noble-security/main amd64 Packages [1093 kB]
Get:10 http://archive.ubuntu.com/ubuntu noble/restricted amd64 Packages [117 kB]
Get:11 http://archive.ubuntu.com/ubuntu noble/multiverse amd64 Packages [331 kB]
Get:12 http://archive.ubuntu.com/ubuntu noble/multiverse amd64 Components [41.9 kB]
Get:13 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages [1418 kB]
Get:14 http://security.ubuntu.com/ubuntu noble-security/main amd64 Components [25.3 kB]
Get:15 http://security.ubuntu.com/ubuntu noble-security/universe amd64 Packages [1097 kB]
Get:16 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Components [217 kB]
Get:17 http://security.ubuntu.com/ubuntu noble-security/universe amd64 Components [65.3 kB]
Get:18 http://security.ubuntu.com/ubuntu noble-security/restricted amd64 Packages [1442 kB]
Get:19 http://security.ubuntu.com/ubuntu noble-security/restricted amd64 Components [156 B]
Get:20 http://security.ubuntu.com/ubuntu noble-security/multiverse amd64 Packages [22.1 kB]
Get:21 http://security.ubuntu.com/ubuntu noble-security/multiverse amd64 Components [158 B]
Get:22 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Packages [1400 kB]
Get:23 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 Components [517 kB]
Get:24 http://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Packages [1495 kB]
Get:25 http://archive.ubuntu.com/ubuntu noble-updates/restricted amd64 Components [159 B]
Get:26 http://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Packages [26.7 kB]
Get:27 http://archive.ubuntu.com/ubuntu noble-updates/multiverse amd64 Components [888 B]
Get:28 http://archive.ubuntu.com/ubuntu noble-backports/main amd64 Packages [48.0 kB]
Get:29 http://archive.ubuntu.com/ubuntu noble-backports/main amd64 Components [7811 B]
Get:30 http://archive.ubuntu.com/ubuntu noble-backports/universe amd64 Packages [31.8 kB]
Get:31 http://archive.ubuntu.com/ubuntu noble-backports/universe amd64 Components [18.2 kB]
Get:32 http://archive.ubuntu.com/ubuntu noble-backports/restricted amd64 Components [161 B]
Get:33 http://archive.ubuntu.com/ubuntu noble-backports/multiverse amd64 Components [162 B]
Fetched 37.8 MB in 2s (20.8 MB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
378 packages can be upgraded. Run 'apt list --upgradable' to see them.
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100  4376  100  4376    0     0   6658      0 --:--:-- --:--:-- --:--:--  6658
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Note, selecting 'ros2-apt-source' instead of '/tmp/ros2-apt-source.deb'
The following NEW packages will be installed:
  ros2-apt-source
0 upgraded, 1 newly installed, 0 to remove and 378 not upgraded.
Need to get 0 B/4376 B of archives.
After this operation, 18.4 kB of additional disk space will be used.
Get:1 /tmp/ros2-apt-source.deb ros2-apt-source all 1.1.0~noble [4376 B]
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package ros2-apt-source.
(Reading database ... 139071 files and directories currently installed.)
Preparing to unpack /tmp/ros2-apt-source.deb ...
Unpacking ros2-apt-source (1.1.0~noble) ...
Setting up ros2-apt-source (1.1.0~noble) ...
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package ros-jazzy-robot-localization
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package ros-jazzy-controller-manager
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package ros-jazzy-ros2-control
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package ros-jazzy-ros2-controllers
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
E: Unable to locate package ros-jazzy-gz-ros2-control

output when I launch the simulation:

[INFO] [launch]: All log files can be found below /home/user/.ros/log/2025-06-11-12-04-26-918941-1_xterm-1339
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [launch.user]: Robots:
[INFO] [launch.user]: Launching namespace= with init_pose= {'x': '0.0', 'y': '0.0', 'z': '0.2', 'roll': '0.0', 'pitch': '0.0', 'yaw': '0.0'}
[ERROR] [launch]: Caught exception in launch (see debug for traceback): "package 'controller_manager' not found, searching: ['/home/user/sim_ws/install/teleop_twist_keyboard', '/home/user/sim_ws/install/rosbot_xl_utils', '/home/user/sim_ws/install/rosbot_xl_gazebo', '/home/user/sim_ws/install/rosbot_xl', '/home/user/sim_ws/install/rosbot_xl_bringup', '/home/user/sim_ws/install/rosbot_xl_controller', '/home/user/sim_ws/install/rosbot_xl_description', '/home/user/sim_ws/install/ros_components_description', '/home/user/sim_ws/install/nav2_common', '/home/user/sim_ws/install/husarion_gz_worlds', '/home/simulations/ros2_sims_ws/install/rmw_cyclonedds_cpp', '/home/user/ros2_ws/install/dds_tests_pkg', '/opt/ros/jazzy']"

Once again gazebo launches with the correct scene, but the robot is missing.

Sorry about that.

Please locate the course_install.sh file in the code editor and replace the content with this:

sudo rm /etc/apt/sources.list.d/ros2-latest.list
sudo apt update -y
export ROS_APT_SOURCE_VERSION=$(curl -s https://api.github.com/repos/ros-infrastructure/ros-apt-source/releases/latest | grep -F "tag_name" | awk -F\" '{print $4}')
curl -L -o /tmp/ros2-apt-source.deb "https://github.com/ros-infrastructure/ros-apt-source/releases/download/${ROS_APT_SOURCE_VERSION}/ros2-apt-source_${ROS_APT_SOURCE_VERSION}.$(. /etc/os-release && echo $VERSION_CODENAME)_all.deb" # If using Ubuntu derivates use $UBUNTU_CODENAME
sudo apt install /tmp/ros2-apt-source.deb -y
sudo apt update -y
sudo apt install ros-jazzy-robot-localization -y
sudo apt install ros-jazzy-controller-manager -y
sudo apt install ros-jazzy-ros2-control -y
sudo apt install ros-jazzy-ros2-controllers -y
sudo apt install ros-jazzy-gz-ros2-control -y

Then run the following on any terminal:

bash ~/course_install.sh

After this, you should be able to launch the simulation without any issues.

source ~/sim_ws/install/setup.bash
ros2 launch rosbot_xl_gazebo simulation.launch.py

Yes, thank you, this solution worked, although now the simulation is not responding to the teleop node. However, as that is a different problem, I’ll mark this one solved, and look a bit more into the new one before opening a new thread (if needed)