building a classic snap does'nt remove /snap/core/current
Metadata
Current evaluation
Closed without a code fix; the maintainer clarified that SNAPCRAFT_SETUP_CLASSIC=1 is only intended for CI use.
Resolution: closed not a bug
Reason: No resolving PR or commit was identified. Sergiusens' comment states, "This flag is only meant to be used in CI," placing the reported behavior outside supported usage.
Evaluated by: mr-cal-bot
No scores available.
Issue body
After building a classic snap with SNAPCRAFT_SETUP_CLASSIC=1, /snap/core/current is created and left behind.
Then, the core snap can't be installed:
$ sudo snap install core
error: cannot perform the following tasks:
- Make snap "core" (888) available to the system (cannot cleanup failed attempt at making snap "core" available to the system: cannot remove snap current symlink: remove /snap/core/current: directory not empty)
- Make snap "core" (888) available to the system (symlink 888 /snap/core/current: file exists)
snapcraft should remove /snap/core/current after it finishes, even when it fails.
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed not a bug | Closed without a code fix; the maintainer clarified that SNAPCRAFT_SETUP_CLASSIC=1 is only intended for CI use. | |
| stealth/space-bunny-alpha | — | closed not a bug | Closed as unsupported usage: maintainer @~sergiusens clarified that SNAPCRAFT_SETUP_CLASSIC=1 was intended only for CI, not general builds. | |
| stealth/space-bunny-alpha | — | closed resolved | Classic-build teardown was changed to remove /snap/core/current, including on failure, so the leftover link no longer blocks installation of core. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without resolution. Snapcraft leaves /snap/core/current after classic snap builds, blocking core snap installation. Abandoned without a fix or merge. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed as fixed. Snapcraft now removes /snap/core/current after building classic snaps, resolving the directory conflict that blocked core snap installation. | |
| qwen/qwen3.6-35b-a3b | — | — | Abandoned. The issue reported that snapcraft left /snap/core/current after building classic snaps, blocking core installation. No fix, PR, or resolution was provided. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Fixed. Snapcraft now automatically removes /snap/core/current after building classic snaps, resolving the symlink conflict that blocked core snap installation. |
Update history
| Date | Change |
|---|---|
| created |
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1752957 Building classic snap without core snap installed succeeds, but creates snap that doesn't run | snapcraft (launchpad) | open | Legacy Snapcraft 2.x classic builds could emit a non-running snap when core was absent; the affected base and implementation are now obsolete. | |
| #1647699 Support classic building in snapcraft | snapcraft (launchpad) | closed | Classic-snap builds were implemented by merged snapcore/snapcraft#949 (commit 058f5626d), resolving libraries from the core/base snap. | |
| #1674828 SNAPCRAFT_SETUP_CORE=1 doesn't work for foreign architectures | snapcraft (launchpad) | closed | Closed as obsolete when core-based classic builds moved to base snaps; no foreign-architecture code fix was identified. | |
| #1650946 unhelpful error when building a classic snap: classic confinement requires the core_dynamic_linker to be set | snapcraft (launchpad) | closed | Resolved: the cryptic "classic confinement requires the core_dynamic_linker to be set" error was fixed by snapcore/snapcraft PR #1025 (better diagnostic) and PR #1112 / commit 49b39ef9a, which auto-installs/unpacks the core snap; Launchpad builds snapcraft 2.27+ via LP: #1650946. | |
| #1765482 Building a classic snap on trusty doesn't work | snapcraft (launchpad) | closed | Trusty classic-snap build segfaults traced to core paths in LD_LIBRARY_PATH. Proposed fix PR canonical/snapcraft#2128 was closed unmerged as unnecessary, leaving the bug unfixed. | |
| #3087 meta: remove snapd workaround for classic for core20 onwards | snapcraft | merged | Merged canonical/snapcraft#3087 as commit 244b997ca, removing the automatic classic snapcraft-runner workaround for core20 and newer while retaining it for legacy bases. | |
| #1090 core: classic with no exported variables. | snapcraft | closed | Closed unmerged and superseded by snapcraft#1093, which implemented the classic-confinement fix in commit e7824093f for LP #1657504. |