space-ros / docker

Docker images to facilitate Docker-based development.
15 stars 12 forks source link

Improve rosdep install #124

Open xfiderek opened 5 months ago

xfiderek commented 5 months ago

Summary

We are using rosdep to install non-ROS packages from apt, such as uncrustify, eigen, clang-tidy. I suggest adding two improvements:

  1. Add list of installed packages to final artifact produced in CI (ideally with exact versions)
  2. Block installation of ROS packages with rosdep (e.g. by failing whenever we are about to install package with ros-${DISTRO}- prefix), as all ROS packages must be compiled from source in spaceros.
mkhansenbot commented 5 months ago

What about rviz? Do we have to build that from source?

xfiderek commented 5 months ago

Hi @mkhansenbot, good question.

For now our core spaceros image does not install RVIZ. I remember we had a brief discussion about having base and desktop images in the future, but whatever I stated here is applicable to base, which imo should exclude stuff like gazebo and rviz (gui tools in general). The proposed improvement will make sure that in core image, everything is traceable and subject to code analysis and tests.

I am not sure though what we should do for demos, where rviz and gazebo may be required. My guess would be that such packages are less critical than core ROS middleware etc, so installing debs may be acceptable, but I am of course happy to discuss it further and hear opinion of other people.

mkhansenbot commented 5 months ago

I agree we should be able to install from debs for the demos. I just want to make sure whatever change is made to block rosdep doesn't include demo dependencies like rviz.