How to build full ROS2 deb packages for debian distribution which are built from source code

The best supported way to build an entire ROS distribution currently is to set up your own instance of the ROS build farm. This is doable but daunting and the documentation can use improvement and updates. The entrypoint for setting up a build farm is GitHub - ros-infrastructure/chef-ros-buildfarm. You can open issues on that repository (preferred) or in the #infra-help channel on the official OSRF discord server if you get stuck.

There are other options with less initial configuration setup but I’m not sure that they’re suitable to building a complete distro (they could be, but I’ve never tried), one that was shared here previously is Packaging ROS with GitHub Actions: software release and blog post

I have built full ROS2 from source on debian 12 bookworm. So what is a good way to build the full distribution ? Anyone can give me some suggestions ? thanks.

Notably, bookworm is not currently a supported platform for any of the active ROS 2 distributions. Rolling is about to undergo a major platform migration to shift to Ubuntu Noble and I am planning to hoist it up to Bookworm at the same time. In order to build on bookworm before that transition, or for a distribution other than Rolling, you will need to run bloom (or more likely, our distribution migration tool) with your own forks of each release repository which would be quite cumbersome.

What’s your objective in building debs for the platform? Depending on your distribution needs, you could also archive a colcon install space after building from source and use that rather than setting up the full Debian pipeline.

I’ll also recommend the Mod team move this thread into the Build farm category.

1 Like