← Back to issue list

classic snaps recurse

View original Launchpad issue

Metadata

Project
snapcraft (launchpad)
Number
#1681861
Type
issue
State
open
Author
~chris.macnaughton
Labels
—
Created
Updated
Closed
—

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