Skip to content

feat: Systemd one-shot service for Kernel fallback mechanism#153

Merged
mkukri-canonical merged 1 commit into
canonical:ubuntu/mainfrom
mikeraymond7:azure/fallback-systemd-service
Jun 25, 2026
Merged

feat: Systemd one-shot service for Kernel fallback mechanism#153
mkukri-canonical merged 1 commit into
canonical:ubuntu/mainfrom
mikeraymond7:azure/fallback-systemd-service

Conversation

@mikeraymond7

Copy link
Copy Markdown
Contributor

Adds a systemd one-shot service to amend the bootloader on a successfully booted, new kernel entry using the -no-boot-next option.

Should a newly installed kernel panic while booting, no changes will occur in the boot loader and the service ensures BootNext is not set again on the bad kernel (unless another evocation of nullbootctl does).

In the event that a new kernel successfully boots, nullboot will amend the boot loader with the new kernel.

This is the first systemd service I've written, so feel free to nit pick anything. I did test that this works with my changes to ubuntu-boot-test.

Also note: we cannot merge this until the changes from #144 reach the ubuntu/main branch since it requires the no-boot-next flag and the new fallback-mechanism to be enabled.

Adds a systemd one-shot service to amend the bootloader on a successfully
booted, new kernel entry using the -no-boot-next option.

Should a newly installed kernel panic while booting, no changes will
occur in the boot loader and the service ensures BootNext is not set
again on the bad kernel (unless another evocation of nullbootctl does).

In the event that a new kernel successfully boots, nullboot will amend
the boot loader with the new kernel.
@mkukri-canonical
mkukri-canonical force-pushed the azure/fallback-systemd-service branch from 684c78b to 2d1c852 Compare June 25, 2026 15:45
@mkukri-canonical
mkukri-canonical merged commit 23f8d40 into canonical:ubuntu/main Jun 25, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants