What is the purpose of ros2/variants?
https://github.com/ros2/variants
It's unclear to me how this is meant to be used. Should I clone it and run it somehow? Are they examples meant to be copy pasted and modified?
Ultimately I'm trying to get as lightweight as possible (ros-core) build from source.
Is this repo going to be helpful or just a distraction?
Asked by stewpend0us on 2023-06-08 18:49:12 UTC
Answers
It's explained well in docs.ros.org/How-To-Guides/Using-Variants.html. Because ROS as a framework provides a large number of packages, and also because ROS supports many usecases, categorizing packages per (very high level) usecase has turned out to be quite convenient (and it's not a new concept made in ROS btw).
Ultimately I'm trying to get as lightweight as possible (ros-core) build from source.
It's up to what you need, but there are many advantages in using pre-built software. An obvious benefit among those is that you spare time to build, and avoid potential issues you'd face while building by yourself.
Is this repo going to be helpful or just a distraction?
That repo is used to formally define the variants. A few consumers of it are:
- the process to build .deb/apt packages e.g.
ros-%DISTRO%-{desktop, ros-core, ros-base}
. - Official Docker images, e.g. humble-ros-core, latest version as of today.
Asked by 130s on 2023-06-10 07:03:14 UTC
Comments
so would I have a workspace with all my packages and add a 'variant' package which only builds a subset of them?a
Asked by stewpend0us on 2023-06-10 13:46:50 UTC
Depends on what you need though, using variants is NOT mandatory (I rarely use it TBH just because I want my packages lean, and I'm comfortable in choosing only the packages I really need), it's for convenience I'd say. Also I'd avoid building packages that I don't need to build by myself.
Asked by 130s on 2023-06-10 20:34:21 UTC
Comments