Skip to content
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

Prevent installation of ROS packages when using rosdep #976

Open
xfiderek opened this issue Jul 6, 2024 · 1 comment
Open

Prevent installation of ROS packages when using rosdep #976

xfiderek opened this issue Jul 6, 2024 · 1 comment

Comments

@xfiderek
Copy link

xfiderek commented Jul 6, 2024

Hi!
Is it possible to install only non-ROS related dependencies with rosdep? For example to skip installation of APT packages coming from http://packages.ros.org/ros2/ubuntu repository? Or ideally to throw an error when ROS packages are to be installed?
The use case that I have is that I am building ROS from source and I want to install non-ROS dependencies such as python3-sqlalchemy, but I want to throw an error when packages such as ros-humble-nav2-msgs are to be installed via apt.

The approach that I came up with so far is something like:

set -e
rosdep install --from-paths src -s | grep 'ros-humble' && exit 1
rosdep install --from-paths src

I wanted to check if there is a cleaner way to achieve it.

@xfiderek xfiderek changed the title Skip all ros packages when using rosdep Skip installation of ROS packages when using rosdep Jul 6, 2024
@xfiderek xfiderek changed the title Skip installation of ROS packages when using rosdep Prevent installation of ROS packages when using rosdep Jul 6, 2024
@nuclearsandwich
Copy link
Contributor

If you know which ROS packages you are providing, you can skip installing them with the with --skip-keys.

If your entire ROS from source configuration is in your src directory, you can use --ignore-src which will ignore packages that are found in-workspace.

What you might want to consider instead is using https://github.com/ros-infrastructure/rosinstall_generator to generate the source workspace with all ROS dependencies and then you can use that workspace together with rosdep install --from-paths src --ignore-src to get only system-level dependencies.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants