|
1 | 1 | # vinca
|
2 |
| - Conda recipe generator for ROS packages |
| 2 | + |
| 3 | +rattler-build recipe (i.e. conda recipe v1) generator for ROS packages |
3 | 4 |
|
4 | 5 | **WARNING**:
|
5 |
| -This project is at a super early stage. |
6 |
| -No guarantees everything works. |
| 6 | +This project is actively mantained and can frequently change based on the needs of the RoboStack project. |
7 | 7 |
|
8 | 8 | ## Concept
|
9 | 9 |
|
10 |
| -The tool generates `conda` recipe to capture all the selected ROS packages. |
11 |
| -Later, one can use `conda-smithy` to auto-generate pipeline to release `conda` binary packages. |
| 10 | +The tool generates `conda` rattler-build recipes to capture all the selected ROS packages. |
12 | 11 |
|
13 | 12 | ## Example
|
14 | 13 |
|
15 |
| -First you have to create a `vinca.yaml` to describe ROS information for `vinca` to do the magic generating the recipe. |
16 |
| - |
17 |
| -```yaml |
18 |
| -# vinca.yaml |
19 |
| -ros_distro: eloquent |
20 |
| - |
21 |
| -# optionally, a fat archive can be generated too. |
22 |
| -fat_archive: true |
23 |
| -name: ros-eloquent-fat-ament-cmake |
24 |
| - |
25 |
| -# mapping of rosdep keys |
26 |
| -# it can be also used to shadow the unwanted packages. |
27 |
| -conda_index: |
28 |
| - - 'https://github.com/RoboStack/ros-galactic/blob/master/vinca_linux_64.yaml' |
29 |
| - |
30 |
| -# packages to skip |
31 |
| -packages_skip_by_deps: |
32 |
| - |
33 |
| -# packages to include |
34 |
| -packages_select_by_deps: |
35 |
| - - ament_cmake |
36 |
| - |
37 |
| -# patch directory |
38 |
| -patch_dir: ./patch |
39 |
| -``` |
40 |
| -
|
41 |
| -### Special modes |
42 |
| -
|
43 |
| -#### Build all |
44 |
| -
|
45 |
| -To generate recipes for all available ROS packages you can add `build_all: true` to your vinca.yaml. In that case, otherwise selected packages will be ignored and vinca will generate recipes for all available packages. To try to see how far one can go, it's recommended to run vinca and boa like this: |
| 14 | +The repo contains a `vinca` tool that reads a `vinca.yaml` file that contains all its metadata. |
46 | 15 |
|
47 |
| -``` |
48 |
| -vinca --multiple # to generate a `./recipes` folder with multiple subfolders |
49 |
| -boa build --skip-existing=fast --continue-on-failure -m conda_build_config.yaml ./recipes |
50 |
| -``` |
| 16 | +For an up-to-date example of how to write a `vinca.yaml`, check the repos of the mantained RoboStack distros: |
| 17 | +* https://github.com/RoboStack/ros-noetic/ |
| 18 | +* https://github.com/RoboStack/ros-humble |
| 19 | +* https://github.com/RoboStack/ros-jazzy/ |
0 commit comments