Unable to "snap install multipass/docker/pebble" on riscv64 ubuntu-server-24.10 (oracular-live-server-riscv64)

Hi, I’ve installed ubuntu server 24.10 (oracular-live-server-riscv64) on riscv64 (qemu) because I wanted to start developing rocks on that architecture, but I cannot install multipass inside that quemu machine:

lgryglicki@vmrv64:~$ snap services multipass
error: snap "multipass" not found
lgryglicki@vmrv64:~$ sudo snap install multipass
error: snap "multipass" is not available on stable for this architecture
       (riscv64) but exists on other architectures (amd64, arm64, armhf,
       ppc64el, s390x).
lgryglicki@vmrv64:~$ uname -a
Linux vmrv64 6.11.0-8-generic #8.1-Ubuntu SMP PREEMPT_DYNAMIC Tue Oct  1 11:40:56 UTC 2024 riscv64 riscv64 riscv64 GNU/Linux

Is there a way of installing multipass on RV64, maybe compiling from sources?

Instead of using multipass I was trying to install rockcraft directly in the qemu box, lxd succeeded, but then docker is not available:

error: snap "docker" is not available on stable for this architecture (riscv64)
       but exists on other architectures (amd64, arm64, armhf, ppc64el, s390x).

So is there another way of installing docker on riscv64? Any recommended path?

But docker isn’t needed for rocks (as it is only used to test the final containers) so I’ve tried to continue and install rockcraft which succeeds.

Then I’ve follwed rocks tutorial https://documentation.ubuntu.com/rockcraft/en/latest/tutorial/hello-world/ and attempting to create a rock with the following rockcraft.yaml:

name: hello
summary: Hello World
description: The most basic example of a rock.
version: "latest"
license: Apache-2.0
base: bare
build-base: ubuntu@22.04
platforms:
  riscv64:
parts:
  hello:
    plugin: nil
    stage-packages:
      - hello

This in turn fails with:

Error downloading snap 'pebble' from channel 'latest/stable'.

Which I guess means that there is no pebble (rocks init/PID 1 process) for riscv64 as well.

Summing up - is there a way of get the following things working on ubuntu-24.10-server-riscv64:

  • multipass.
  • docker.
  • pebble.
  • rockcraft (the command installs and kinda works, but nothing can be built without pebble).

Have you tried reaching out to the respective publishers asking them to build a snap for riscv?

The snap info output for each of those returns some links that look useful:

maciek@galeon:~ snap info docker |grep -E 'https?:.*'
store-url: https://snapcraft.io/docker
contact:   https://github.com/docker-snap/docker-snap/issues?q=
  https://docs.docker.com/engine/security/#docker-daemon-attack-surface

maciek@galeon:~ snap info pebble |grep -E 'https?:.*'
store-url: https://snapcraft.io/pebble
  https://github.com/canonical/pebble.

maciek@galeon:~ snap info multipass |grep -E 'https?:.*'
store-url: https://snapcraft.io/multipass
contact:   https://github.com/canonical/multipass/issues/new

I didn’t, I was thinking that this is a good place to ask. I’ll do, thanks!