← 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 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.

Suggested action: close stale

Reason: The issue is 3429 days (~9.4 years) old with zero comments, no labels, and no maintainer interaction. The related Launchpad bug #1670388 describes the same problem and notes it was later addressed via a snapcraft-runner workaround. The current snapcraft architecture (core20+) uses a fundamentally different command dispatch mechanism than the simple shell wrappers described here, making the original problem no longer reproducible in the current codebase.

Impact: 30 Quick Win: 18.0 Staleness: 95 Complexity: 40 Confidence: 72 Support Request: 10

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
qwen/qwen3.8-27b
Impact: 30
Quick Win: 18.0
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.
llama3.2
Staleness: 100
Complexity: 20
Confidence: 85
Support Request: 0
close stale Classic snap command wrappers incorrectly use bare command names instead of $SNAP/bin/command paths, causing execution failures due to unreset $PATH. Untriaged and inactive for over 9 years.

Update history

No update history recorded yet.

Related work

  • Related To: snapcraft#1670388 (confidence 75%)

    Launchpad bug describing the same classic-confinement PATH/wrapper issue; summary indicates it was later addressed via snapcraft-runner workaround.

Related issues

Issue Project State Summary Similarity
#1670388 classic snap are missing some env variables for reaching command name. (snap build, executing it fails) snapcraft (launchpad) open Classic-confinement snapcraft 2.27.1 app wrappers omit $SNAP/bin from PATH, so bare command names fail at runtime and shebangs resolve to system binaries instead of snap ones. Reported 2017, zero comments; later addressed in snapcraft via snapcraft-runner workaround (#2889).
85%
#1681722 classic snaps cannot find stage packages in $PATH snapcraft (launchpad) open Classic snaps with stage-packages cannot find dependent binaries because snap bin directories are missing from default PATH. 9+ years old, zero comments, no labels. A related workaround (PR #2889, snapcraft-runner) was merged to address classic snap PATH resolution.
74%