catkin plugin: create completely valid environment
Metadata
Current evaluation
Merged PR #1239 (commit 449ad2634) fixing LP: #1674487: catkin plugin now sets LD_LIBRARY_PATH and a valid ROS_HOME before sourcing setup.sh, so build-time env matches runtime.
Resolution: closed resolved
Reason: The PR was merged into main as commit 449ad2634, approved by a maintainer with no unresolved comments. It changed two catkin plugin files (+35/-26) to define LD_LIBRARY_PATH before sourcing setup.sh and to always point ROS_HOME at a valid directory, closing LP bug #1674487.
Evaluated by: mr-cal-bot
No scores available.
Issue body
The environment created by the Catkin plugin is really only completely valid at runtime (i.e. when packaged as a snap). It's partially valid at build-time. However, it turns out that as a result of sourcing `setup.sh` (which is required at build-time), various dependencies actually need the valid run-time environment (e.g. `LD_LIBRARY_PATH`, valid `ROS_HOME`, etc.).
This PR fixes LP: [#1674487](https://bugs.launchpad.net/snapcraft/+bug/1674487) by making sure `LD_LIBRARY_PATH` is defined before we source `setup.sh`. It also makes sure `ROS_HOME` is always pointing to a valid place.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #1239 (commit 449ad2634) fixing LP: #1674487: catkin plugin now sets LD_LIBRARY_PATH and a valid ROS_HOME before sourcing setup.sh, so build-time env matches runtime. | |
| stealth/space-bunny-alpha | — | closed resolved | PR #1239 by kyrofa merged (commit 449ad2634), fixing LP: #1674487. The catkin plugin now builds a fully valid build-time environment, defining LD_LIBRARY_PATH before sourcing setup.sh and pointing ROS_HOME at a valid location. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged #1239 (commit 449ad2634), fixing LP: #1674487 by setting LD_LIBRARY_PATH before sourcing setup.sh and ensuring ROS_HOME points to a valid location. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged in #1239 (449ad2634), fixing LP #1674487 by defining LD_LIBRARY_PATH before sourcing setup.sh and ensuring ROS_HOME points to a valid location. | |
| stealth/space-bunny-alpha | — | closed resolved | Merged PR #1239 (commit 449ad2634) to create a valid Catkin build environment by setting LD_LIBRARY_PATH and ROS_HOME, fixing Launchpad bug #1674487. | |
| qwen/qwen3.6-35b-a3b | — | — | 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. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Merged fix ensuring the Catkin plugin generates a fully valid build-time environment. Defines LD_LIBRARY_PATH before sourcing setup.sh and sets a valid ROS_HOME, resolving Launchpad bug #1674487. |
Update history
No update history recorded yet.
Related work
-
Duplicate Of:
snapcraft (launchpad)#1674487
(confidence 80%)
Upstream Launchpad bug #1674487 (catkin plugin requires a valid environment before setup.sh) was fixed by this PR and closed.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1130 catkin plugin: produce build-ready staging area. | snapcraft | merged | Merged PR #1130 (commit e34b7ab19) makes the Catkin plugin rewrite ROS-specific paths after building, creating a staging area reusable by later parts and fixing LP #1663385. | |
| #1674487 Catkin plugin requires a valid environment before it runs setup.sh | snapcraft (launchpad) | closed | Catkin setup.sh environment handling was fixed in snapcore/snapcraft#1239, cited by the maintainer as the resolution for Launchpad #1674487. | |
| #324 catkin plugin: do not overwrite the PYTHONPATH | snapcraft | merged | Merged PR #324 fixed the catkin plugin to preserve setup.sh’s PYTHONPATH instead of overwriting it, resolving LP #1544790. | |
| #1367 catkin plugin: add support for ROS Lunar | snapcraft | merged | Merged PR #1367 (commit ba722e847), adding ROS Lunar support and the lsb-release build workaround for Launchpad bug #1677002. | |
| #2847 Catkin plugin: consider only 'local' workspaces | snapcraft | merged | Merged PR #2847 (commit 1d476f622) sources ROS setup with --local, preventing destructive-mode Catkin builds from using host workspaces and skipping dependency installation. |