Convert ROS packages into Python wheels that can be installed via pip. A select number of packages are hosted on PyPI.
Note: This repository is still a work in progress. Additional packages for additional Python versions and ROS distributions are continuing to be made available.
Enable a first-class developer experience when working with ROS in Python projects:
- Easy Project Integration: To include The ROS Python Client (rclpy) in a Python project, simply add
ros-rclpy[fastrtps]with its package repository to yourpyproject.tomlfile. - Enable Modern Python Tooling: Easily manage Python ROS dependencies using modern Python tools like uv, Poetry, and conda
- Portable: Allows ROS to be run on different Linux distributions.
Packages are hosted at https://pypi.org/simple/
Open each package repository link in your browser to see the list of packages it contains.
Currently builtin_interfaces, rclpy and their dependencies are uploaded.
Please create a Github issue if you'd like to see another package built!
Below steps will install and run the ROS Python client for Kilted in a Python 3.12 environment.
# install rclpy and dependencies
pip install ros-rclpy[fastrtps]
# Run rclpy
python -c "import rclpy; rclpy.init()"The following commands build a package and all of its dependencies as wheels, and then upload them to CloudSmith.
Cloudsmith credentials are required in ~/.pypirc.
# Install this project
uv sync
# Build wheels
python -m ros_wheel_builder.main build --distro_name <DISTRO> --package_name <PACKAGE_NAME>
# Upload wheels
python -m ros_wheel_builder.upload --wheels_dir <WHEELS_DIR> --repository <pypi/testpypi/cloudsmith>