Skip to content

Proposal to remove ros-<distro> prefix from packages #97

@baszalmstra

Description

@baszalmstra

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-core package would just be an empty package that depends on ros-jazzy-ros-core.
  • Or we could have ros-jazzy-ros-core depend on ros-core and ros2-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. 😄

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions