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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions