← Back to issue list

catkin plugin: replace python calls in all profile.d scripts

View original Github issue

Metadata

Project
snapcraft
Number
#2007
Type
pull request
State
merged
Author
kyrofa
Labels
—
Created
Updated
Closed

Current evaluation

Merged PR #2007 as commit 7ac261967, replacing absolute Python paths in every catkin profile.d script and restoring ROS Kinetic and Catkin Tools builds on Ubuntu Core.

Resolution: closed resolved

Reason: PR #2007 was merged as commit 7ac261967. It generalized the existing profile.d Python rewrite so newly introduced absolute paths in ROS Kinetic scripts use the snap's Python interpreter.

Evaluated by: mr-cal-bot

No scores available.

Issue body

- [x] Have you followed the [guidelines for contributing](https://github.com/snapcore/snapcraft/blob/master/CONTRIBUTING.md)? - [x] Have you signed the [CLA](http://www.ubuntu.com/legal/contributors/)? - [x] If this is a bugfix. Have you checked that there is a bug report open for the issue you are trying to fix on [bug reports](https://bugs.launchpad.net/snapcraft)? - [x] If this is a new feature. Have you discussed the design on the [forum](https://forum.snapcraft.io)? - [x] Have you successfully run `./runtests.sh static`? - [x] Have you successfully run `./runtests.sh unit`? ----- Currently, Snapcraft replaces a Python call in `etc/catkin/profile.d/10.ros.sh` that uses an absolute path (that doesn't exist in the core snap) to use just the `python` command instead, thereby ensuring the one from the snap is used. However, a recent ROS Kinetic update switched up the profile.d files, using absolute paths to Python elsewhere, breaking all newly-built ROS Kinetic snaps on Ubuntu Core. Fix this by taking broader approach, checking _every_ file in `etc/catkin/profile.d/` for absolute Python paths and replacing each if found. Note that this should fix the Catkin Tools plugin as well. Refer to https://forum.snapcraft.io/t/4518 for more information. Please test this PR using the `edge/pr-2007-catkin-kinetic-fix` channel: sudo snap install snapcraft --channel=edge/pr-2007-catkin-kinetic-fix Or if you already have it installed: sudo snap refresh snapcraft --channel=edge/pr-2007-catkin-kinetic-fix

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha — closed resolved Merged PR #2007 as commit 7ac261967, replacing absolute Python paths in every catkin profile.d script and restoring ROS Kinetic and Catkin Tools builds on Ubuntu Core.
stealth/space-bunny-alpha — closed resolved Merged as commit 7ac261967; the Catkin plugin now rewrites absolute Python paths in every etc/catkin/profile.d script, restoring ROS Kinetic and Catkin Tools snaps on Ubuntu Core.
stealth/space-bunny-alpha — closed resolved Merged PR #2007 as commit 7ac261967, replacing absolute Python paths in every etc/catkin/profile.d script to restore ROS Kinetic snaps on Ubuntu Core.
qwen/qwen3.6-35b-a3b — — Merged update to the catkin plugin replacing absolute Python paths with python in all etc/catkin/profile.d scripts. Fixes broken ROS Kinetic snaps on Ubuntu Core after upstream changes and resolves Catkin Tools plugin issues.
qwen3.6-35b-a3b-mtp-q6 — — Merged a catkin plugin fix replacing absolute Python paths in all etc/catkin/profile.d scripts, resolving ROS Kinetic snap build failures on Ubuntu Core and fixing the Catkin Tools plugin.

Update history

No update history recorded yet.

Related issues

Issue Project State Summary Similarity
#232 Catkin plugin: Use in-snap python instead of OS-provided. snapcraft merged Merged PR #232 (fe9ca74c9), fixing Catkin on Xenial by using /usr/bin/env Python shebangs and PATH-resolved Python in 10.ros.sh.
70%