-
Notifications
You must be signed in to change notification settings - Fork 48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add pixi support in the robotology-superbuild #1683
Conversation
Agh, the CI is failing with:
I can't remember how many times in my life I saw this and had to deal with it, either adding the |
Related issue: robotology/ycm-cmake-modules#455 . |
macos-14 builds fail with:
this is basically due to conda-forge/qt-main-feedstock#273 . I can manually add a local workaround for now. |
Merging as soon as CI passes as it is middle of August in a weekend, so hardly anyone could look into that. Furthermore, this just adds a workflow, it does not modify an existing one. |
As I frequently need to debug problems in the superbuild, the process of manually creating the conda environment to build a fresh superbuild was quite a slow down. Furthermore, whenever there is a dependency regression, the need to manually inspect the CI log is not really user friendly.
In this PR, we add the
pixi.toml
support to the superbuild, so you can just download the superbuild and runpixi run build-all
to build the superbuild with all the options enabled. This is personally quite useful for me to work on the superbuild, but I guess it may be useful for other superbuild users. It has also the nice byproduct of ensuring that each release has a working lockfile of dependencies that work fine for a given release, quite useful if someone needs to get older releases of the superbuild to work.At the moment, I am not modifying the existing conda instructions to avoid confusing existing users, but with time we could modify them as well (for example, we could generate conda lock files with https://github.com/synapticarbors/pixi2ces or similar, and use the lockfiles also when users are installing dependencies via conda.