I have a project where I use a proprietary library to exchange data with a PLC, therefore I have to use debian as operating system. As a consequence, I have to build the ROS distro from source.
Instead of using a full .repos file and add COLCON_IGNORES for unwanted packages: Is there a possibility to get the package names of all ROS dependencies recursively up to the core ROS packages, starting from my workspace? I could then use this list to manually create a .repos file by looking for the correct git repositories.
The direct dependencies can be listed with
grep -RhI -e "^ *<exec_depend>" -e "^ *<build_depend>" -e "^ *<run_depend>" ~/catkin_ws/src | sed -e "s/.*>\(.*\)<.*/\1/" | sort | uniq
from here, but their respective dependencies have to be searched iteratively after pulling the sources.
Or is there any smarter way to create a .repos file, or a different approach if there are no released ROS binaries for the target system?