RoboStack / RoboStack/robostack.github.io
Investigation: Using `pixi-build-ros` with `pixi` instead of `vinca` with `rattler-build`.
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Astro
- Estrellas
- 385
- Forks
- 36
- Merge medio
- 5 h 37 min
- PR fusionados (30 d)
- 18
Descripción
Leaving this here as an intermediate result of some investigation into the topic of using pixi-build-ros instead of vinca to generate the recipes and build the packages for the ROS distros in RoboStack.
Issues found:
pixidoesn't automatically use all dependencies in the workspace as host/build dependencies of the other packages in the workspace so it's not easy to setup a workspace that contains all packages from a git source. (https://github.com/prefix-dev/pixi/issues/6901)pixi-build-rosdoesn't support the concept ofpatchesyet. (https://github.com/prefix-dev/pixi/issues/6918)
We could support this by adding the copy of source into a source folder again like the backends used to do.- You would still need some script to manage the distro snapshots as a way to fill in the
[package.build.source]for pixi build. - There needs to be a build orchestrator like
vinca-ghato create the multi stage GitHub Actions workflow file.
This would be a feature that is welcome to Pixi anyway as it would be really cool to have any type of workspace split it's builds into multiple jobs, on any CI server.
Smaller issues:
pixi-build-rosneeds to support<group_depend>from apackage.xml.pixi-build-rosneeds to supportros2-<package_name>naming convention.- We need a backend for dummy meta packages where we need to shim conda-forge packages like
ros-xxx-eigenpy.
Claude generated sketch, not perfect but sketches the idea of this comparison.
I feel like this would only align the tools more but wouldn't bring too many UX improvements to RoboStack today. As you would still need to maintain a generator to translate the rosdistro_snapshot into pixi.toml files instead of recipe.yaml files. The robostack.yaml would still need to be maintained.
Where I can see value is in making pixi-build-ros a better tool for ROS development. The required CI job orchestration tool would be a big win for Pixi and the work to maintain vinca can be moved to pixi-build-ros to share more of the effort between the projects.
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Comienza con pixi-build-ros y las incidencias de Pixi enlazadas #6901 y #6918, y después revisa las carencias enumeradas en torno a los parches, las instantáneas de las distros, la orquestación de workflows y los metadatos de los paquetes de ROS. Se considerará terminado cuando se haya decidido el alcance y se haya definido un seguimiento concreto para las mejoras elegidas; esta incidencia no especifica archivos ni pruebas.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- github-actions
- Área
- build-system, ci-cd, tooling
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Activo
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 30/100