Install space script shouldn't be reliant on the current system's absolute path
Opened this issue · 1 comments
Unless my understanding is off, the catkin install space is supposed to be thought of as for deployment purposes. catkin-virtual-env seems to create a script that has absolute paths embedded in it. Anonymised output from version 0.6.1:
#!/usr/bin/env bash
exec /home/USER/WS/install/share/PACKAGE/venv/bin/python /home/USER/WS/install/share/PACKAGE/catkin_virtualenv_scripts/SCRIPT "$@"
This will break if your ROS deployment's install space is isn't in the exact same path with the same username. I had a look and there doesn't seem to have been any changes that would fix this since 0.6.1 and I can't see any options to fix this. #63 seems to have fixed a similar issue in different contexts.
The alternative is catkin_install_python
creating a script that figures out where it itself is and uses relative paths to find the venv and true script (which is probably possible with some ROS environment variables (e.g. packages can be installed and found by ROS in any directory listed in ROS_PACKAGE_PATH) or one of the find-own-path bash commands.
@AnonymousRoboticist Did you find a solution to this?