The recent update of ROS packages creates a file in the snap at /opt/ros/kinetic/etc/catkin/profile.d/1.ros_package_path.sh. This file has the line export ROS_PACKAGE_PATH="/usr/bin/python -c “$PYTHON_CODE_BUILD_ROS_PACKAGE_PATH”" which breaks in core images since /usr/bin/python does not exist in a core image when the variable is used later.
I think this will be breaking for a lot of people since snapcraft grabs the most recent packages. This is breaking when the snap is built on local machines and EC2 images that had older versions of ROS installed.
I have been trying to prevent this from happening by specifying the stage and build packages in my snap, but without any success so far.
The ros base demo displays this issue, which doesn’t have any build or stage packages beyond those included implicitly by the catkin plugin so this might be a global problem running ROS on a core image right now.
@cratliff (and/or anyone else who’s hit this), if you’re able, please try the edge/pr-2007-catkin-kinetic-fix channel (amd64-only for this hotfix, let me know if you need another arch before this is merged):