eProsima / Micro-XRCE-DDS-Gen

Micro XRCE-DDS IDL code generator tool. Looking for commercial support? Contact info@eprosima.com
Apache License 2.0
10 stars 13 forks source link

Support Debian install on Ubuntu 22.04 #73

Open Ryanf55 opened 10 months ago

Ryanf55 commented 10 months ago

Hello,

I'd like to request some packaging support for this tool. Is there any way that eProsima could start supplying a debian (pre-compiled package) of MicroXRCEDDSGen that is installable through apt? Right now, all of our build tools in ROS 2 can either be installed with debian or compiled from source with colcon build. Adding MicroXRCDDSGen to an apt repository such ArduPilot developers can apt install Micro-XRCE-DDS-Gen would be wonderful as then there wouldn't be a separate gradle compilation step.

The alternative is something like this PR: https://github.com/ArduPilot/ardupilot/pull/25651

In order to enable DDS by default in ArduPIlot, I've had to copied the generated message files into our source tree and use those as a fallback if microxrceddsgen is not found, because the current MicroXRCEDDSGen installation process is too burdensome for the dev team.

I only have experience creating debians with CPack for CMake-based projects, but I am happy to help out with this.

pablogs9 commented 8 months ago

Hello @Ryanf55, we have just released a .deb installation of Micro-XRCE-DDS-Gen in the new Vulcanexus Iron release.

So if you follow this you will be able to install both Micro-XRCE-DDS-Gen and the micro-ROS Agent via apt.

Ryanf55 commented 8 months ago

Hello @Ryanf55, we have just released a .deb installation of Micro-XRCE-DDS-Gen in the new Vulcanexus Iron release.

So if you follow this you will be able to install both Micro-XRCE-DDS-Gen and the micro-ROS Agent via apt.

Excellent. Is it possible that the Micro-XRCE-DDS-Gen and micro-ROS agent would be compatible with ROS 2 humble? According to the recent developer survey, the largest percentage of downloads on ROS 2 are on humble: https://discourse.ros.org/t/2023-ros-metrics-report/35837

ArduPilot is currently on Humble due to LTS stability.

pablogs9 commented 8 months ago

AFAIK Vulcanexus team is working in the Humble release. It will came with the packets you mention. CC: @rsanchez15

rsanchez15 commented 7 months ago

Hi @Ryanf55

As @pablogs9 mentioned, we were working on the Humble release last week and now is ready!

Now you should be able to install Micro-XRCE-DDS-Gen and Micro-ROS Agent by downloading it from our apt repository (apt install -y vulcanexus-humble-micro) or just by pulling the Vulcanexus Micro Docker image (docker run -it eprosima/vulcanexus:humble-micro) which comes with these software tools.

Ryanf55 commented 4 months ago

Can you add more info on the debian generation? Due to #68 not being solved in the version released on humble, and ArduPilot not forcing users to upgrade FastDDS to vulcanexus which I do not believe is compatible with the version of DDS shipped by default in ROS 2 humble, we would like to build our own debians for our custom fork: https://github.com/ArduPilot/Micro-XRCE-DDS-Gen/releases/tag/v4.5.0

Ryanf55 commented 3 months ago

Hello,

Can you please share your process to generate the debians? I would like to build and host them myself. I don't see it tracked in this repo.

We would use it for the following: https://github.com/ArduPilot/Micro-XRCE-DDS-Gen/pull/3

pablogs9 commented 3 months ago

Hi @Ryanf55 unfortunately the procedures for generating deb packages at the eProsima side are not public.

khancyr commented 3 months ago

Would it be an issue if I submit my PR here? It is just a one simple way to create a .deb