This guide explains how to use RoboStack and Pixi to build and run this repository in a colcon workspace with ROS 2 Jazzy or Kilted.
These steps assume a colcon workspace with src/ and this repo cloned into src/book_ros2/. The build/, install/, and log/ folders will be created automatically after the first build.
This repository includes a Pixi file at src/book_ros2/pixi.toml so you can create a reproducible environment.
Follow the official guide: https://pixi.sh/latest/#installation
Linux example:
curl -fsSL https://pixi.sh/install.sh | bashRestart your terminal (or reload your shell) so pixi is available in your PATH.
Pixi expects pixi.toml at the workspace root directory (the parent directory of src/).
From the workspace root:
cp src/book_ros2/pixi.toml ./pixi.toml# ROS 2 Jazzy
pixi install -e jazzy
# ROS 2 Kilted
pixi install -e kiltedIn pixi.toml there is a build task that builds with colcon and disables tests to avoid failures due to system dependencies.
# Build with Jazzy
pixi run -e jazzy build
# Build with Kilted
pixi run -e kilted buildYou can open an interactive shell inside the environment. In this project, activation is configured to run source install/setup.bash automatically.
pixi shell -e jazzy
# or
pixi shell -e kiltedInside that shell you should be able to run commands like ros2 pkg list or launch nodes from the workspace.
If you prefer to run a command without opening an interactive shell:
pixi run -e jazzy ros2 run <package> <executable>
pixi run -e jazzy ros2 launch <package> <launch.py>The environment sets RMW_IMPLEMENTATION=rmw_zenoh_cpp automatically. It is recommended to start the rmw_zenohd daemon in a separate terminal.
Option A (recommended): inside pixi shell -e <distro>
rmw_zenohdOption B (without opening an interactive shell):
pixi run -e jazzy rmw_zenohd
# or
pixi run -e kilted rmw_zenohdTo stop it: Ctrl+C.