snapcraft shouldn't hardcode the list of libs to strip
Metadata
Current evaluation
Resolved by PR #1234 (commit a7a5a2eae): Snapcraft derives strip exclusions from the selected base snap instead of hardcoding libraries.
Resolution: closed resolved
Reason: Snapcraft now obtains strip exclusions from the actual base snap, eliminating stale and architecture-dependent lists. PR #1234, commit a7a5a2eae, implemented this resolution.
Evaluated by: mr-cal-bot
No scores available.
Issue body
Snapcraft shouldn't hardcode the list of libraries to strip.
This list is per release and that brings multiple issues:
- they don't reflect the latest content of the core snap as it evolves
- core snap have differents content between architectures (see bug 1643885), and so, some libs are stripped from the snap when they are needed
- we will have at some point multiple core snaps, and so, we can't rely on that heuristic.
For the time being, it would be good for ubuntu-image or other ubuntu-core image creation to export this list for snapcraft to fetch. That will avoid the unsync and architecture skew at least.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Resolved by PR #1234 (commit a7a5a2eae): Snapcraft derives strip exclusions from the selected base snap instead of hardcoding libraries. | |
| stealth/space-bunny-alpha | — | closed resolved | Resolved by PR #1234 (a7a5a2eae), deriving library strip exclusions from the selected base snap instead of a hardcoded list. | |
| stealth/space-bunny-alpha | — | closed stale | Closed without a documented fix, linked PR, or explanation; the proposal to export each core snap's release- and architecture-specific library strip list received no recorded resolution. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without resolution or comments. The proposal to dynamically fetch stripped library lists from ubuntu-image instead of hardcoding them was abandoned or superseded by updated snapcraft architecture handling. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without implementation. The request to replace hardcoded library stripping lists with a dynamically exported list from ubuntu-image was abandoned due to inactivity. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed as abandoned. The hardcoded library stripping list remains unresolved, with the suggested dynamic fetching approach never implemented. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Closed without resolution due to prolonged inactivity. The proposal to dynamically fetch stripped library lists from ubuntu-image was abandoned and likely superseded by updated snapcraft core snap management. |
Update history
| Date | Change |
|---|---|
| created |
Related work
-
Likely Fixed By:
canonical/snapcraft#1234
(confidence 99%)
PR #1234 implemented base-snap-derived strip exclusions in commit a7a5a2eae.
-
Related To:
launchpad/bugs/1643885
(confidence 85%)
The issue described the architecture-specific core-snap content mismatch that motivated the fix.
-
Related To:
launchpad/bugs/1573144
(confidence 80%)
Proposed solution discussed for the related architecture-skew problem.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1639831 filter unwanted pkgs in snap creation when relying on content interface | snapcraft (launchpad) | closed | Fixed by merged Snapcraft PR #989 (54aa0ec1b), adding no-system-libraries so parts can skip migrating system libraries into the snap. | |
| #1231 pluginhandler: exclude `/snap/` from libraries. | snapcraft | merged | Merged snapcraft#1231 in commit 0e9b5a84e, excluding /snap/ paths from classic-confinement library collection to avoid bundling libraries from installed snaps. |