← Back to issue list

catkin plugin: create completely valid environment

View original Github issue

Metadata

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

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.
74%
#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.
73%
#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.
73%
#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.
71%
#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.
71%