Building CoreOS offline

How does one build CoreOS in an air-gapped environment?

What’s needed initially (online) is easy via coreos-assembler (cosa container).

Is it possible to mirror a “stable” ostree locally that can be used by coreos-assembler?

I’ve read about “encapsulating” and “un-encapsulating” containers, but the docs are weak on this, or I’m missing how to do it.

If you want to build a Fedora CoreOS image offline then you should only need to mirror the RPM repositories and replace the repo config in the fedora-coreos-config repo.

If you want to mirror CoreOS images for use offline then it’s another story and it should be easier with the container images, which we are moving to for Fedora 42.

Ahh, OK.

RPM repos once mirrored (which ones?) are pointed to (somewhere).

Which fedora-coreos-config yaml files need to be modified so as to not have any dial out for anything when running coreos-assembler?

Once I understand the sequencing, I can update my local repos when needed.

Apologies if this is obvious to everyone.

Bootc is very interesting, but passing around 900 MB containers that still needs an OS installed before the containers can be booted is kind of heavy. Maybe I misunderstand the concept. Even if the ostree containers only have the reference + bins, you still need an initial install.

ONE install on bare metal machines (air-gapped) with CoreOS (with ignition) and then providing internal container updates is the requirement.