Snapcraft stopped working issuing multipass error

Now, I think I found a fix. The problem seems to be that the file kinetic-server-cloudimg-amd64-disk.img is not present on the server. Here is how to fix it. Assume you are making the project hello, and you are in its root directory (which is hello, and which contains the sub-directory snap with the file snapcraft.yaml.)

Step 1: Clean the project. You can omit this step if you are 100% sure it is clean. Launch a multipass Virtual Machine (VM):

multipass launch -n snapcraft-hello -m 2G -d 12G https://cloud-images.ubuntu.com/kinetic/current/kinetic-server-cloudimg-amd64.img

The switch -m 2G means, the VM will use 2G RAM, and -d 12G 12G disk space. You need this much space if, for example, you run flutter. If you build a project with another name, say myprj adjust the VM name to snapcraft-myprj. Check that the VM is correctly created and running with the command:

multipass list

It should output something like this:

Name                    State             IPv4             Image
snapcraft-hello         Running           11.239.64.56     Not Available

Now clean the project:

snapcraft clean

This is also cleaning the VM; thus, in the next step, you have to re-run it.

Step 2: Build the snap. Again, launch a multipass Virtual Machine (VM):

multipass launch -n snapcraft-hello -m 2G -d 12G https://cloud-images.ubuntu.com/kinetic/current/kinetic-server-cloudimg-amd64.img

and check that it is correctly created and running. Now build your project:

snapcraft

Step 3: Clean the project. You don’t have to create another VM, because the VM from Step 2 is still there. Just run

snapcraft clean

This will also clean away the VM. Check this with

multipass list

which should output something like this:

No instances found.

Enjoy your build!

2 Likes