- Split into "local virt" and "production"
- Link to podman-desktop-extension-bootc
- Link to podman-bootc-cli
- Clean up, fix and inline kickstart example for readability
- Include bootc-image-builder in both local and production paths
I added steps to move container image updates around with skopeo and apply them with bootc. Please double check that this is correc! It works really well on my side, but I'm unsure if bootc edit is a better option for changing where the update is pulled from.
First, we're still in a situation where bib doesn't work with c9s.
Let's link to the existing docs for using `bootc install to-disk`
which *does* work (and fixes multiple other bugs at the same time too).
Second: Let's document using systemd credentials to inject a root
SSH key, because this works across every image we ship where
one can inject SMBIOS bits. (But notably this doesn't work in
most production IaaS virt systems like KubeVirt, AWS etc. which
gets into cloud agents).
I was a bit confused into thinking our `-dev` images had
`root.transient` on, but they don't quite right now because
we don't regenerate the initramfs after installing the updated
ostree in that image.
However, because bootc-image-builder today is throwing away
the immutable bit on `/` (a different bug, see
https://github.com/ostreedev/ostree/pull/3094 ) we actually...
amazingly get a very similar effect in practice!
Anyways, let's go ahead and describe filesystem state here.
There is some overlap with `install.md`, but that doc is all about
how to just get started.
This doc aims to cover things that are somewhat different about
the base image we ship here versus just what one might get
from installing the same RPM packages.
The automatic updates being on by default is a big one.
Signed-off-by: Colin Walters <walters@verbum.org>
The partitioning defined in the example kickstart file suggests that the
installer supports hybrid boot. That's misleading and not true. Let's use
the `reqpart` kickstart command to automatically create partitions required
by the detected platform instead of creating all of them for all platforms.
Note: The `reqpart` command doesn't work with `bootloader --location=none` or
`bootloader --disabled`, so this commit depends on the installer's support
for bootupd: https://github.com/rhinstaller/anaconda/pull/5298/