classic snaps recurse
Metadata
Current evaluation
Classic PATH recursion was addressed by commit 343ac2862, which added the snapcraft-runner workaround; current metadata tests still expect that runner in command chains.
Suggested action: close resolved
Reason: Commit 343ac2862 (snapcraft#2889), explicitly described as a workaround for the classic PATH bug, directly addresses the reported recursive wrapper. Current expected snap metadata also includes snap/command-chain/snapcraft-runner, providing positive evidence that the behavior was handled.
Evaluated by: mr-cal-bot
Impact:
58
Quick Win:
38
Complexity:
24
Confidence:
92
Actionability:
86
Issue body
When building a classic snap, the command wrapper being generated looks like:
#!/bin/sh
exec "command" "$@"
when they should instead look like:
#!/bin/sh
exec "$SNAP/bin/command" "$@"
because the $PATH is not reset inside of a classic snap
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha |
Impact:
58
Quick Win:
38
Complexity:
24
Confidence:
92
Actionability:
86
|
close resolved | Classic PATH recursion was addressed by commit 343ac2862, which added the snapcraft-runner workaround; current metadata tests still expect that runner in command chains. | |
| qwen/qwen3.6-35b-a3b |
Impact:
60
Quick Win:
22
Complexity:
40
Confidence:
70
Actionability:
60
|
needs triage | Classic snap command wrappers use relative paths instead of $SNAP/bin/ paths, causing execution issues due to unreset PATH | |
| qwen/qwen3.8-27b |
Impact:
30
Quick Win:
18
Staleness:
95
Complexity:
40
Confidence:
72
Support Request:
10
|
close stale | Classic snap command wrappers generated by snapcraft use bare command names instead of $SNAP/bin/command paths, causing failures since PATH is not reset in classic confinement. 3429 days old, no labels, no comments, no maintainer interaction. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
98
Complexity:
15
Confidence:
90
Support Request:
10
|
close stale | Bug report on incorrect command wrapper generation in classic snap builds causing path resolution failures. Issue has been completely inactive for over 9 years with no maintainer response or labels. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
98
Complexity:
20
Confidence:
75
Support Request:
5
|
close stale | Classic snap command wrappers incorrectly use bare command names instead of $SNAP/bin/command paths due to unreset $PATH. Untriaged and inactive for over 9 years. | |
| qwen3.6-35b-a3b-mtp-q6 |
Staleness:
98
Complexity:
25
Confidence:
85
Support Request:
10
|
close stale | Bug report regarding incorrect command wrapper generation for classic snaps. Open for ~9 years with no maintainer response or labels. Likely obsolete due to significant changes in snap packaging tooling. |
Update history
| Date | Change |
|---|---|
| created |
Related work
-
Likely Fixed By:
snapcraft#2889
(confidence 96%)
Commit 343ac2862 always generates snapcraft-runner specifically to work around the classic PATH bug.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #2889 meta: always generate snapcraft-runner to workaround classic PATH bug | snapcraft | merged | Merged #2889 as commit 343ac2862, always adding an empty snapcraft-runner to app command chains to work around incorrect PATH in non-shell classic apps. | |
| #2891 meta: always generate snapcraft-runner to workaround classic (#2889) | snapcraft | merged | Merged in PR #2891 as commit 343ac2862, adding an empty snapcraft-runner command-chain workaround for classic apps with incorrect PATH handling and unit tests. | |
| #1670388 classic snap are missing some env variables for reaching command name. (snap build, executing it fails) | snapcraft (launchpad) | open | Classic snap wrappers omit snap-local PATH entries, so commands such as chuck-norris-cli can pass packaging but fail at runtime; the confirmed report remains open. |