Skip to content

Conversation

daenny
Copy link
Contributor

@daenny daenny commented Sep 16, 2025

This allows for an additional key in the package.build.config:

extra-package-mappings = ['path-to-file.yaml']

This will add/overwrite the mappings from robostack e.g. if you host your own packages.

An additional (later) option would be to let packages allow to install the mapping file inside the build environment.

I also added a test enviroment to the pixi.toml such that it is easy to develop and test within pycharm.

You can now open a pycharm session inside the pixi-build-ros test environment and select the correct interpreter. Then you can run the pytest within pycharm.

@lucascolley lucascolley changed the title feat: additional package maps feat(ros): additional package maps Sep 16, 2025
@lucascolley lucascolley added enhancement New feature or request ros Related to the ROS backend labels Sep 16, 2025
Copy link
Contributor

@baszalmstra baszalmstra left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Partial review, love the functionality

@daenny
Copy link
Contributor Author

daenny commented Sep 16, 2025

Some additions:

  • I renamed robostack to conda in the packagemap that feels more descriptive. WDYT?
  • I also added the option to define rosdistro packages in the package map, which are resolved using the same rules as if it is defined in the rosdistro.

@daenny daenny force-pushed the feat/add-other-package-maps branch from 0bb882c to e6fe01c Compare September 16, 2025 12:13
Copy link
Contributor

@baszalmstra baszalmstra left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Im not sure about the robostacknto conda rename. It makes it slightly harder to migrate from the robostack based file. Can we instead allow both keys and not rename the keys in the bundled file?

I would also prefer to create seperate PRs for these changes because this PR is already becoming very large.

@tdejager tdejager requested a review from nichmor September 16, 2025 13:13
@tdejager
Copy link
Contributor

Might also be nice to have a follow-up PR to be able to create the mapping inline. I was discussing this with someone in the prefix.dev robotics discord. It also makes it easier to create a stand-alone example or test :)

@nichmor
Copy link
Contributor

nichmor commented Sep 18, 2025

hey! I've tested the PR, and it works as expected!
The only thing that I would like to ask is if I set the new field in the navigator package ( from ros_work), like this:
image

and will try to build it like this:
PIXI_BUILD_BACKEND_OVERRIDE_ALL=1 pixi build
It can still build it without errors ( I would expect an error because path-to-file.yaml doesn't exist ) .

Is it expected?
If yes, we can merge it

@daenny
Copy link
Contributor Author

daenny commented Sep 18, 2025

@nichmor thanks for the review. I had that as intended behaviour, but indeed it might be confusing. Now I throw an value error.
I also fixed the double symlink in the noetic build script.

@nichmor
Copy link
Contributor

nichmor commented Sep 18, 2025

@nichmor thanks for the review. I had that as intended behaviour, but indeed it might be confusing. Now I throw an value error. I also fixed the double symlink in the noetic build script.

thanks! let me retry it, and I think we can merge it after that

@daenny daenny force-pushed the feat/add-other-package-maps branch from 0749ea4 to 36f837f Compare September 18, 2025 09:58
@nichmor
Copy link
Contributor

nichmor commented Sep 18, 2025

works as expected, thanks a lot!

@nichmor nichmor merged commit a1a568d into prefix-dev:main Sep 18, 2025
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request ros Related to the ROS backend
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants