catkin plugin: produce build-ready staging area.
Metadata
Current evaluation
Merged update to the Catkin plugin generating a build-ready staging area by adjusting ROS files post-build, resolving LP #1663385. Approved, passed CI, and modified two files to prevent future parts from referencing the old install directory.
Suggested action: —
No scores available.
Issue body
Currently the Catkin plugin massages some ROS-specific files in order to get it to build from within the part's install directory. This works well enough, but produces a staging area that, if used to build more parts in the future, will attempt to use the old install directory.
This PR fixes LP: [#1663385](https://bugs.launchpad.net/snapcraft/+bug/1663385) by updating the Catkin plugin such that, once the build has completed, these files are massaged to be usable from the staging area.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Merged update to the Catkin plugin generating a build-ready staging area by adjusting ROS files post-build, resolving LP #1663385. Approved, passed CI, and modified two files to prevent future parts from referencing the old install directory. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged. Updates the Catkin plugin to adjust ROS files post-build, creating a staging area ready for subsequent part builds. Resolves Launchpad bug #1663385. Approved after tests passed, ignoring one unrelated Xenial failure. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged. Updates the Catkin plugin to massage ROS files for the staging area rather than the part install directory, resolving Launchpad bug #1663385. Approved after passing CI tests. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #2525 catkin plugin: check stage-snaps for ROS dependencies | snapcraft | merged | Merged to master. Updates the catkin plugin to check stage-snaps for ROS dependencies, preventing redundant fetching by treating them like underlays. Resolves Launchpad bug #1823788. Approved, passed CI, and merged. | |
| #1663385 Catkin plugin: Staging area not suitable for building other parts | snapcraft (launchpad) | closed | Closed without resolution. The Catkin plugin staging area issue, where hardcoded installdir paths break dependent parts, was abandoned due to prolonged inactivity. No fix or workaround was implemented. | |
| #1239 catkin plugin: create completely valid environment | snapcraft | merged | Merged. Updates the Catkin plugin to create a fully valid build-time environment by setting LD_LIBRARY_PATH before sourcing setup.sh and ensuring ROS_HOME is valid. Resolves Launchpad bug #1674487 following maintainer approval. | |
| #195 Catkin plugin: Improve cmake path rewrite. | snapcraft | merged | Merged updates to the Catkin plugin that replace hard-coded cmake path rewrites with a generic, robust approach. The change modifies two files to correctly redirect ROS package Config.cmake files to the install directory. | |
| #152 Catkin plugin: Add support for ROS tools. | snapcraft | merged | Merged Catkin plugin updates to properly install ROS packages, include non-source files, and enable ROS tools via an updated wrapper environment. Resolved an xml2-config conflict while planning to remove the redundant roscore plugin. Tests doubled. | |
| #1070 catkin plugin: don't stage compilers. | snapcraft | merged | Merged to master. The catkin plugin now routes compilers to an alternate working area instead of staging them, resolving LP #1658828 and preventing their inclusion in the final snap. Approved, passed CI, and merged. | |
| #1367 catkin plugin: add support for ROS Lunar | snapcraft | merged | Merged the catkin plugin update to support ROS Lunar alongside Indigo, Jade, and Kinetic. CI initially failed due to a Launchpad bug, resolved by adding lsb-release to build-packages. Approved and merged after passing integration tests. | |
| #1779 catkin-tools plugin: use stage-packages | snapcraft | merged | Merged a fix switching the catkin-tools plugin from build-packages to stage-packages, resolving clean system failures. Added an integration test. Approved by two reviewers and passed CI. | |
| #851 catkin plugin: nicely handle an invalid rosdistro. | snapcraft | merged | Merged changes add rosdistro validation to the catkin plugin, replacing cryptic key errors with clear messages. Approved by reviewers and passed CI. Minor refactoring feedback was noted but did not block the merge. | |
| #881 Catkin plugin: Python nodes require gcc/g++ too. | snapcraft | merged | Merged a fix for Launchpad bug #1638317 updating the Catkin plugin to unconditionally stage gcc and g++ at the beginning. This ensures Python nodes compile correctly regardless of roscpp dependencies. The change modifies two files. |