Skip to content

Switch x86_64 to use Discoverable Disk Images (DDIs) - #1695

Draft
wkz wants to merge 19 commits into
mainfrom
ddi-image
Draft

wkz wants to merge 19 commits into
mainfrom
ddi-image

Conversation

@wkz

@wkz wkz commented Oct 8, 2026

Copy link
Copy Markdown
Contributor

Description

Checklist

Tick relevant boxes, this PR is-a or has-a:

  • Bugfix
    • Regression tests
    • ChangeLog updates (for next release)
  • Feature
    • YANG model change => revision updated?
    • Regression tests added?
    • ChangeLog updates (for next release)
    • Documentation added?
  • Test changes
    • Checked in changed Readme.adoc (make test-spec)
    • Added new test to group Readme.adoc and yaml file
  • Code style update (formatting, renaming)
  • Refactoring (please detail in commit messages)
  • Build related changes
  • Documentation content changes
    • ChangeLog updated (for major changes)
  • Other (please describe):

@wkz wkz added the ci:main Build default defconfig, not minimal label Oct 8, 2026
wkz added 14 commits October 9, 2026 08:39
Also, add a local patch for the growfs bit, which has not been
upstreamed yet.
This is the only mode that supports the `-append` option. It has
nothing to do with "not MMC".
In addition to triggering a factory-reset, add the ability to
check for (and in the case of a marker file, optionally clear) a
factory reset condition.

With the upcoming DDI image support, the location of the marker file
will move, so having the check implementation in factory will make it
easier to keep them in sync.
This is needed when we move away from overlay to plain mounts of /var.
This makes it possible to ship differing system files depending on the
images being built. E.g. an ITB image might expect a different
/etc/fstab than a DDI.
This opens up for DDI images to ship their own implementation. Now
that it is supported, defer factory-reset condition check to the
factory binary instead of having a separate implementation here.
In the upcoming DDI image format, a pre-script is required.
Sign the image, allowing a UEFI firmware to load run Barebox when
secure boot is enabled (provided the corresponding cert is loaded in
the db, of course).
First user is the initramfs, where it is used to setup the verity
device.

Later on, it will be extended for use by RAUC during upgrades, to
fetch image info in statd, etc.
wkz added 2 commits October 9, 2026 09:43
run.sh has degenerated quite a bit over the years - in no small part
due to the way the qemu-system argv is constructed.

Cut our losses by taking a fresh look at this problem, now that lots
of things need to change anyway. Keep the old script as-is for targets
that still use ITB based images.
wkz added 3 commits October 9, 2026 11:28
With DDI images, test-mode and other marker files are stored on
/boot/efi instead of /mnt/aux. Add a --with-marker-dir configure
option, and select the right directory based on IX_IMAGE_DDI.
Until we have a Barebox release which includes the upstream LVM
support, build from a GIT tag on the kernelkit branch.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci:main Build default defconfig, not minimal

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant