This is a suggestion based on my experience. Do you think will be useful to use rosws to setup easily workspace hierarchies and overlays?
I have a common workspace where all default packages from ros-distro that I need to modify for some reason rest. In order to avoid overwrite the default install i would like to overlay them over opt/ros ones, and on top of that put my current workspace.
Say I have: ws1, ws2 ws3 in such a way that ws2 and ws3 depends on packages from w1.
Manually I can source ws1/devel/setup.bash and after the current one I want to work, using for example, ws2/devel/setup.bash --extend
I found out that catkin_make automatically generates a .rosinstall file for the devel or install space. So I can use rosws to merge these spaces. But the only one remaining in ROS_PACKAGE_PATH is the last i have added to my ws .rosinstall. So there is no access to ws1 from ws2 or ws3
I have a kick fix that patches all my setup.sh to make them include any devel/sebup.bash using --extend option. That does the trick, but it is permanent.
If the maintainers / authors / users of this set of tools think this use case fit the design requirements of rosinstall and rosws I will gladly contribute a patch to allow using --extend for rosws generated setup.bash in oder to enable extension instead of overwrite when required.
An other consideration could be that wherever a install or devel space is merged, it seems to me that we do so because we want to extend our ws with the packages contained there. If this is true, the default behavior of rosws setup.sh should be using --extend right?
My idea is to share the full project development environment. This will allow students using it to easily setup everything and focus only on the area they are developing/working/studing, while being able to test it against the whole platform and merge quickly improvments in the other modules with rosws update powers.
Any other thought or consideration?
This is a suggestion based on my experience. Do you think will be useful to use rosws to setup easily workspace hierarchies and overlays?
I have a common workspace where all default packages from ros-distro that I need to modify for some reason rest. In order to avoid overwrite the default install i would like to overlay them over opt/ros ones, and on top of that put my current workspace.
Say I have: ws1, ws2 ws3 in such a way that ws2 and ws3 depends on packages from w1.
Manually I can
source ws1/devel/setup.bashand after the current one I want to work, using for example,ws2/devel/setup.bash --extendI found out that catkin_make automatically generates a .rosinstall file for the devel or install space. So I can use rosws to merge these spaces. But the only one remaining in ROS_PACKAGE_PATH is the last i have added to my ws .rosinstall. So there is no access to ws1 from ws2 or ws3
I have a kick fix that patches all my setup.sh to make them include any devel/sebup.bash using --extend option. That does the trick, but it is permanent.
If the maintainers / authors / users of this set of tools think this use case fit the design requirements of rosinstall and rosws I will gladly contribute a patch to allow using --extend for rosws generated setup.bash in oder to enable extension instead of overwrite when required.
An other consideration could be that wherever a install or devel space is merged, it seems to me that we do so because we want to extend our ws with the packages contained there. If this is true, the default behavior of rosws setup.sh should be using --extend right?
My idea is to share the full project development environment. This will allow students using it to easily setup everything and focus only on the area they are developing/working/studing, while being able to test it against the whole platform and merge quickly improvments in the other modules with rosws update powers.
Any other thought or consideration?