Distributing ROS2 package over apt under ros-jazzy/humble/etc-<package name>

Hello, I would like to distribute a ROS2 package over apt

This wiki tells me how to build a deb for it, but getting it over apt is a different beast.

I’ve tried debuild dpkg toolchain to get my package to a ppa, but the build fails there because it is missing all of the rclpy / ament dependencies.

My ROS2 package has another apt dependency that I have up on a launchpad ppa, but I’m happy to move anything to any ppa etc.

Can someone share the process / toolchains?

Thank you!

Post on reddit

It sounds like you’d like to release your package into a ROS distro. When you release a package, the ROS Buildfarm will build .debs for your package and include them in ROS’s apt repo http://packages.ros.org.

Follow this guide to learn how to release your package: Releasing a Package — ROS 2 Documentation: Jazzy documentation

My ROS2 package has another apt dependency that I have up on a launchpad ppa, but I’m happy to move anything to any ppa etc.

To build on ubuntu on the ROS buildfarm, all of your package’s dependencies must be in one of: main, universe, or multiverse. If your dependency isn’t there, you will need to release your dependency into ROS as well, or create a vendor package for it.

2 Likes