snapcraft behavior for type: base
Metadata
Current evaluation
Implemented build-base support for base snaps; the proposed branch successfully built core20 using core18 before the issue was closed.
Resolution: closed resolved
Reason: The final reviewer comment reports a successful core20 build using the proposed build-base branch and concludes “Ship it!”, indicating the requested behavior was implemented. LP #1819196 is cited as the directly related follow-up.
Evaluated by: mr-cal-bot
No scores available.
Issue body
When a snapcraft.yaml is found that has
type: base
the "name" set in snapcraft.yaml should be used to determine the what build environment should be setup, thus
name: core18
type: base
# base: not set
shall create an Ubuntu 18.04 based build environment.
For the cases where the base has not been bootstrapped, it shall be possible to set `build-base` to the name of a base to use in order to setup the build environment, thus, the following will fail due to there being no core20 build environment
name: core20
type: base
# base: not set
but,can work with (LP: #1819196)
name: core20
type: base
build-base: core18
# base: not set
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Implemented build-base support for base snaps; the proposed branch successfully built core20 using core18 before the issue was closed. | |
| stealth/space-bunny-alpha | — | closed resolved | Added build-base support in commit 5dea8acba, allowing core20 to build with an available core18 environment. | |
| stealth/space-bunny-alpha | — | closed superseded | Closed as superseded by later core20/base handling; commit 5dea8acba added build-base support. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without comments. The type: base and build-base configuration behavior was superseded by updated snapcraft core20 implementation. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without comments or discussion. The proposed behavior for resolving build environments using type: base and build-base in snapcraft.yaml appears to have been superseded or implemented in a later release. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without implementation. The issue defined expected snapcraft behavior for type: base and build-base configuration but received no comments or resolution. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Closed without discussion or implementation. The proposed type: base build environment logic was abandoned or superseded by later snapcraft versions, with no fix or merge details recorded. |
Update history
| Date | Change |
|---|---|
| created |
Related work
-
Likely Fixed By:
snapcraft (launchpad)#1819196
(confidence 95%)
Directly referenced in the issue as the work introducing build-base behavior.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1862256 snapcraft should complain loudly when building base: core20 snap on i386 | snapcraft (launchpad) | closed | Closed as superseded: improved architecture parsing rejects unsupported core20/i386 builds, making a dedicated check unnecessary; snapcraft#4392 improved this handling. | |
| #3579 snap: move base to core20 (CRAFT-509) | snapcraft | merged | Merged PR #3579 via ed2baf8bd, moving Snapcraft's own snap to the core20 base; implementation commit 18a974e01. | |
| #3583 build providers: snapcraft's new base is core20 (CRAFT-544) | snapcraft | merged | Merged PR #3583 via 2b2d7dbcf, replacing build providers' injected core18 base with core20 to match Snapcraft's new base. | |
| #1833409 core20: cannot specify a sensible base | snapcraft (launchpad) | closed | Build-base support for building base snaps without a runtime base was implemented in snapcraft PRs #2623 and #2619; LP bug #1835532 tracked the follow-up. | |
| #1939713 snapcraft init create base: core18 snap | snapcraft (launchpad) | closed | Snapcraft init was updated to scaffold core20 instead of core18 by merged canonical/snapcraft#3587 (merge commit f91632aab). | |
| #1866300 snapcraft fails to build core20 snap | snapcraft (launchpad) | closed | Closed without a documented fix after core20 Multipass/LXD failures; core20 build-base support was unavailable and the workaround was destructive mode. | |
| #1819290 Support for "base: core" | snapcraft (launchpad) | closed | Implemented by merged snapcore/snapcraft#2499 (commit e1cc2b91c), adding 'base: core' support in snapcraft.yaml and stripping it from generated snap.yaml; Launchpad base config updated by cjwatson. | |
| #1839604 build-base seems broken | snapcraft (launchpad) | open | Closed as implemented: current Snapcraft supports `base: bare` with a required `build-base`, including core22/core24/core26, and documents the configuration. | |
| #4186 snap: migrate to core22 | snapcraft | merged | PR #4186 merged, moving the Snapcraft snap's own build environment to base core22 (8 files, +71/-70), landing as commit 60033305b and closing the core22 migration issue #4166. | |
| #2761 Core20 base | snapcraft | merged | Core20 base support was merged via #3579, moving Snapcraft to core20 in commit 18a974e01 (merge ed2baf8bd). |