-
-
Notifications
You must be signed in to change notification settings - Fork 14
Description
In prefix-dev/pixi-build-backends#355 we discussed if it would be possible to remove the ros-<distro> prefix from all packages. After talking to @traversaro about that as well I want to continue that discussion here further.
The reasons to add the prefix is:
- Uses the same name as the debian packages
- Allow installing multiple distros side-by-side in a single environment. (doesnt actually work, more info below)
- More?
Installing multiple ros2 distros side-by-side is already not possible because all (ros2) distributions share a single package name: ros2-distro-mutex. This prevents multiple mutexes to be installed in the same environment thus preventing side-by-side installs. However, it is possible to install ros1 and ros2 side-by-side because the ros1 mutex has a different name.
Our idea would be to generate both prefixed packages as well as none prefixed packages. E.g. ros-jazzy-ros-core and ros-core. We could take 2 approaches:
- The
ros-corepackage would just be an empty package that depends onros-jazzy-ros-core. - Or we could have
ros-jazzy-ros-coredepend onros-coreandros2-distro-mutex * jazzy.
Not sure which is better but using the first approach would still allow installing ros1 and ros2 side by side if a user explicitly requests the prefixed packages.
I also propose to add helper packages like ros2-distro-jazzy which would have a dependency on ros2-distro-mutex * jazzy. To allow users to easily be explicit about the distro they want without having to mess with build-strings.
We could also consider moving all distros into a single robostack channel, but I might be pushing it now. 😄