-
Notifications
You must be signed in to change notification settings - Fork 49
Add support for ROS-O (ROS One) distribution #854
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
ROS-O is a community-supported ROS 1 distribution that works on Ubuntu 20.04 and newer versions. This change adds support for installing ROS-O alongside ROS 2 distributions. Changes: - Add ROS-O repository configuration and GPG key handling - Support mixed ROS 1 and ROS 2 repository installation - Add ROS-O test cases to CI workflow - Fix SSL certificate handling for ROS-O repository - Ensure correct repository selection based on Ubuntu version - Pin meson version to avoid colcon-meson compatibility issues The implementation allows installing multiple ROS distributions simultaneously, such as 'noetic rolling' on Ubuntu 20.04 or 'one humble' on Ubuntu 22.04. Technical notes: - Meson is constrained to >=0.60.0,<0.64.0 for colcon-meson 0.4.2 compatibility, avoiding IntrospectionInterpreter API breakage Signed-off-by: Iori Yanokura <[email protected]>
|
Like I said in ros-tooling/action-ros-ci#1008 (review), I'm 💯 on board with this if it is maintained by ROS-O users/maintainers. |
Can you explain this? Rolling isn't officially supported on Ubuntu 20.04. |
| schedule: | ||
| # Run the CI automatically twice per day to look for flakyness. | ||
| - cron: "0 */12 * * *" | ||
| workflow_dispatch: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What's the intent behind this?
| await utils.exec("sudo", [ | ||
| "bash", | ||
| "-c", | ||
| "curl -sSL https://ros.packages.techfak.net/gpg.key -o /etc/apt/keyrings/ros-one-keyring.gpg", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
who is behind this key and the repo?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Packages for this specific repository are build through https://github.com/ubi-agni/ros-builder-action/ and owned by @rhaschke at CITEC Bielefeld. It is pretty much the go-to repository for anyone to "just install ROS-O" these days.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the info!
I would just mention this in the README so that people know that ROS-O debs are downloaded from a separate apt repo and not the usual Open Robotics apt repo. @iory can you add that?
Summary
This PR adds support for ROS-O (ROS One), a community-supported ROS 1 distribution that works on Ubuntu 20.04 and newer versions.
Changes
Core functionality
Bug fixes
Testing
Use cases
This enables several useful combinations:
Example usage:
Technical details
The implementation handles backward compatibility by:
Testing
All CI tests pass with these changes. The implementation has been tested with:
Breaking changes
None. This is fully backward compatible with existing configurations.