Ubuntu-image unable to build a simple armhf image

Hello forum members.

This one is a bit of a head-scratcher, I cannot get around it to build a simple image for my OrangePi R1.

Ubuntu-Image throws me this error:

error: cannot use snap “orangepi-r1-kernel-ruhan_0.1_armhf”, parallel snap instances are unsupported COMMAND FAILED: snap prepare-image --channel=edge --snap=orangepi-r1-kernel-ruhan_0.1_armhf --snap=orangepi-r1-ruhan_16-0.1_armhf.snap models/orangepi-r1-uc16.model /tmp/tmp3ngomiws/unpack

Here is my model file:

{ “type”: “model”, “series”: “16”, “model”: “ruhan-ubuntucore”, “display-name”:“Ubuntu Core 16 (armhf)”, “architecture”: “armhf”, “kernel”: “orangepi-r1-kernel-ruhan”, “gadget”: “orangepi-r1-ruhan”, “authority-id”: “removed for security purposes”, “brand-id”: “removed for security purposes”, “timestamp”: “2021-08-14T17:00:00+00:00” }

Kernel and gadget snapcraft yaml files:

name: orangepi-r1-ruhan version: 16-0.1 summary: Orange Pi R1 description: | Bootloader files and partitoning data to create a bootable Ubuntu Core image for the Orange Pi R1. type: gadget base: core

architectures:

  • build-on: amd64 run-on: armhf

confinement: strict grade: stable

parts: uboot: plugin: nil –snip –

name: orangepi-r1-kernel-ruhan version: ‘0.1’ #adopt-info: kernel summary: Linux kernel for OrangePi R1 description: | kernel for OrangePi-R1

grade: stable confinement: strict type: kernel

architectures:

  • build-on: amd64 run-on: armhf –snip–

I have tried a model file with the “base” property added, removed it, compiled gadget with and without a base, still the same error.

I have reverted my snapcraft to the legacy 4.x version,

snapcraft --version snapcraft, version 4.8

snap info snapcraft name: snapcraft summary: easily create snaps publisher: Canonical✓ store-url: https://snapcraft.io/snapcraft contact: snapcraft - snapcraft.io license: GPL-3.0 description: | Package, distribute, and update any app for Linux and IoT.

Snaps are containerised software packages that are simple to create and install. They auto-update and are safe to run. And because they bundle their dependencies, they work on all major Linux systems without modification. commands:

  • snapcraft snap-id: vMTKRaLjnOJQetI78HjntT37VuoyssFE tracking: 4.x/stable refresh-date: yesterday at 18:44 SAST channels: latest/stable: 5.0 2021-08-09 (6751) 58MB classic latest/candidate: ↑
    latest/beta: ↑
    latest/edge: 5.0.1.post6+git50600144 2021-08-06 (6777) 58MB classic 5.x/stable: 5.0 2021-08-09 (6751) 58MB classic 5.x/candidate: ↑
    5.x/beta: ↑
    5.x/edge: ↑
    4.x/stable: 4.8 2021-06-03 (6512) 74MB classic 4.x/candidate: ↑
    4.x/beta: ↑
    4.x/edge: ↑
    installed: 4.8 (6512) 74MB classic

Any ideas? I have been searching for the kernel sources, found it after a hefty amount of digging. I plan to release this snapcraft.yamls on my github, so that you can build an image for your OrangePi R1 as well.

is there a .snap missing in your command ?

Hello, it is only these two on the ‘ubuntu-image’ command.

ubuntu-image snap -c edge --snap orangepi-r1-kernel-ruhan_0.1_armhf --snap orangepi-r1-ruhan_16-0.1_armhf.snap -O images models/orangepi-r1-uc16.model And yes, the snaps have been copied over, so the files is present in the current directory.

you are still missing .snap at the end of the kernel snap name …

Oh, simple mistake. I was executing this command in a script, to save me some time, did not notice it.
I realized my mistake just when I posted. Thanks.

1 Like