ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
[ reserved for the answer ]
See the Work-around (temporary!) section above for a temporary work-around for those in dire need of .deb
s.
2 | No.2 Revision |
[ reserved for From the answer ]Discourse post:
See To fix this issue users need to update the Work-around (temporary!) section above public key used for ROS apt repositories. To do this for ROS 1 installations one needs to run a temporary work-around for those in dire need of single command, namely:.deb
s.
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
For ROS 2 installations you will need to run this command:
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
3 | No.3 Revision |
From the Discourse post:ROS GPG Key Expiration Incident on ROS Discourse:
To fix this issue users need to update the public key used for ROS apt repositories. To do this for ROS 1 installations one needs to run a single command, namely:
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
For ROS 2 installations you will need to run this command:
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
4 | No.4 Revision |
Edit: there are reports the ROS 2 specific mitigation doesn't work for some users.
The ROS 1 curl
command should work in that case.
From ROS GPG Key Expiration Incident on ROS Discourse:
To fix this issue users need to update the public key used for ROS apt repositories. To do this for ROS 1 installations one needs to run a single command, namely:
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
For ROS 2 installations you will need to run this command:
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
5 | No.5 Revision |
Edit 2: in case of Docker images/containers still complaining about expired keys: Docker's layer caching could be interfering there. As the key's signature hasn't changed (only it's expiration date), the command to import the key is identical to what it was before the key update.
This could cause Docker's caching to decide to not run the command, causing the expired key to still become part of the image.
Running docker build
with --no-cache
or introducing a change in the affected Dockerfile
(before the key import) would invalidate the cache and should result in the new key getting imported.
Note: the official ros
and osrf/ros
Docker images have all been updated with the new key.
Edit: there are reports the ROS 2 specific mitigation doesn't work for some users.
The ROS 1 curl
command should work in that case.
From ROS GPG Key Expiration Incident on ROS Discourse:
To fix this issue users need to update the public key used for ROS apt repositories. To do this for ROS 1 installations one needs to run a single command, namely:
curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
For ROS 2 installations you will need to run this command:
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg