Fix Snapcraft 7 builds on riscv64
Metadata
Current evaluation
Closed as obsolete without a riscv64 fix: Snapcraft 7 now serves core18-only builds, which do not support RISC-V.
Resolution: closed not a bug
Reason: Maintainer @lengau said the report was likely no longer needed because Snapcraft 7 is reserved for core18 builds, which do not support RISC-V. No cryptography-wheel workaround was implemented.
Evaluated by: mr-cal-bot
No scores available.
Issue body
### What needs to get done
### Option 1
* Find the most-recent version of setuptools that can build cryptography
* Add a part that creates a venv with the right version of setuptools and builds the wheel with https://pip.pypa.io/en/stable/cli/pip_install/#cmdoption-no-build-isolation
* Stage the wheel before the snapcraft part builds
* Unprime the wheel
### Option 2
* Build the cryptography wheel locally and upload it to people.canonical.com
* Source the wheel for builds
### Why it needs to get done
Snapcraft 7 has not been built on `riscv64` since `7.5.3` was built on 2023-Sep-07.
Snapcraft 7 fails to build because pip uses a version of setuptools that is too new when building the cryptography wheel.
This is assuming `setuptools` is at fault, @dariuszd21 suspects it may be another dependency failure.
Failing logs: https://paste.ubuntu.com/p/rKQFswhxyq/
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed not a bug | Closed as obsolete without a riscv64 fix: Snapcraft 7 now serves core18-only builds, which do not support RISC-V. | |
| stealth/space-bunny-alpha | — | closed stale | Closed as obsolete: no riscv64 fix landed. Maintainer @lengau noted Snapcraft 7 is now only needed for core18 builds, which don't support RISC-V, so the cryptography/setuptools wheel build issue is moot. | |
| stealth/space-bunny-alpha | — | closed stale | No riscv64 fix was implemented: #4980 was closed as obsolete because Snapcraft 7 is now for core18-only builds, which do not support RISC-V. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed as obsolete. Snapcraft 7 is now limited to core18 builds, which lack RISC-V support, rendering the riscv64 fix unnecessary. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed and abandoned. The riscv64 build fix is unnecessary because Snapcraft 7 is now limited to core18 builds, which lack RISC-V support. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed as unnecessary. Snapcraft 7 is now only required for core18 builds, which lack RISC-V support, making the riscv64 build fix obsolete. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Abandoned. Snapcraft 7 is deprecated for core18, which lacks RISC-V support, making the riscv64 setuptools build failure irrelevant. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1984227 Snapcraft 7.1.1 does not build with core22 on riscv64 | snapcraft (launchpad) | closed | Fixed in Snapcraft 7.1.2, which added the missing riscv64 support needed to build core22 snaps. | |
| #772 build(snap): drop 'riscv64' for now | rockcraft | merged | Merged as f0e8fe0d: removed riscv64 from the snap build (1-line change) because core24+riscv64 was unsupported by the store, which had left 'edge' diverged from 'main'. Risсv64 was later restored in #1024. | |
| #2012074 snapcraft cannot build snap by default on aarch64 | snapcraft (launchpad) | open | ARM64 default builds failed on Snapcraft 7.3.1 because core20 selected amd64-only Multipass images; later defaults use core22/LXD on Linux, addressing the reported path. | |
| #2080728 A core24 snap creation fails on compression (RISCV64) | snapcraft (launchpad) | closed | core24 riscv64 snap builds failed at `snap pack` (exit 20). Maintainers traced it to older snapd on RISCV lacking core24 support, not snapcraft; fixed once newer snapd shipped. Reporter confirmed 'Fixed now' on 2024-10-26. | |
| #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. | |
| #1943603 snapcraft --target-arch=i386 does not build i386 images, because core20 does not support i386 and yet the build starts and wastes time | snapcraft (launchpad) | open | Legacy Snapcraft accepted an unsupported core20/i386 target, wasted build time, and produced an amd64 snap; current validation excludes i386 and drops core20. | |
| #2099923 Snapcraft builds are failing: install of snap "snapcraft" failed | snapcraft (launchpad) | open | Reported Launchpad Bionic non-i386 builds cannot install Snapcraft 7.x/stable because core20 needs snapd 2.61; the issue remains open, untriaged, and unanswered. | |
| #1570835 snapcraft 2.8 fails on s390x | snapcraft (launchpad) | closed | Snapcraft 2.8's missing s390x handling was fixed by ubuntu-core/snapcraft PR #461, merged as commit d3c242fa2. | |
| #2064639 snapcraft remote-build core20 armhf openssl error | snapcraft (launchpad) | closed | armhf/riscv64/ppc64el/s390x remote-build failed on core20 after cryptography 42.0.5 broke the OpenSSL legacy provider. Fixed by merged PR canonical/snapcraft#4784 (commit 7aeffed19), setting CRYPTOGRAPHY_OPENSSL_NO_LEGACY=1 in the snap manifest; LP#2064639 closed as fixed. |