UC16/UC18 AMD64 cannot mark boot as successful

Good day.

I’m having some issues with Ubuntu Core 18 not booting properly on my new gateway, with the current pc-kernel, running a customised gadget snap. (Nothing funny in particular, the grub segment is utouched, only the slots that has been added)

However, while Core18 has it’s own issues booting, I tried the legacy Core16 image, and it fails horribly here:

Sep 29 06:53:19 localhost.localdomain snapd[1391]: stateengine.go:149: state ensure error: devicemgr: cannot mark boot successful: cannot determine bootloader

This leads to the system not being able to mark the system seeded.

Is the grub bootloader too old, or is the current core16 snap somehow broken, or is it my gadget snap that may be broken?

I forked and built my gadget snap from github.com/snapcore/pc-amd64-gadget, using the “16” branch.

Your input will be greatly appreciated…

Just an update,

Seems like after reviewing my changes on the gadget snap side for Core16, it seems like that the “filesystem-label” does play a role here, I changed mine to “role” as ubuntu-image 2.2x previously complained about this.

I used ubuntu-image 1.11, as I previously have used it to create working Core16 images.

Device seems seeded now, should anyone come across this, I rebuilt my gadget snap, with “filesystem-label”, and not “role”.

great that you solved it, but is there any particular reason you are using the 16 branch for an UbuntuCore18 image ?

there is actually a branch for each UC release and if you desire a UC18 image you should really use the matching 18 branch …


I did use the ‘16’ branch for the UC16 image, as well as the ‘18’ branch for the UC18 image.

It’s just weird that the “role” definition in the gadget should have been “filesystem-label”, hence core and core18 not finding the “bootloader” to mark the system boot as successful.