Testing bootc - confused

Hi all!

I’m currently on Fedora 44 (minimal install via dnf install --installroot, configured Sway and apps on top) and am looking to give Fedora Atomic Desktop a try, however, I perhaps have niche requirements and am struggling to pull the relevant instructions/docs together from across the wiki, forums, SIGs, various forges, etc. It’s all very splintered and confusing.

I’d like to install atomic to my existing system without losing my current data, my partition layout is 2GB EFI volume, and the rest as LUKS+LVM, with other distros installed, and a /home LV. It seems this can be achieved via bootc install to-filesystem and some manual tweaking after, e.g. signing the vmlinuz/UKI files, adding a systemd-boot entry, etc.

Eventually I’d like to build my own images from scratch and use those, but that comes after.

I’m struggling to find the current best bootc images to use for Sway Atomic. I know there was originally ostree images with chattr +i on root, then came bootc images, then composefs (true immutability). Is this accurate? Where are the latest best images to use that use bootc+composefs?

Any help would be appreciated, information appears to be so scattered and although I’m usually good at piecing things together, I’m at a loss here. I tried some forum searching but anything relevant appears to be fairly outdated.

Thanks!

EDIT: I think I’ve found the image I should be using: Quay

This is the bootc command I’ve crafted so far:

bootc install to-filesystem \
	--root-mount-spec=... \
	--boot-mount-spec=UUID=... \
	--replace=alongside \
	--skip-finalize \
	--source-imgref=registry:quay.io/fedora-ostree-desktops/sway-atomic \
	--bootloader=systemd \
	--composefs-backend \
	--karg=rd.luks.uuid=... \
	--karg=amdgpu.dcdebugmask=0x10 \
	/mnt

Now I’m getting:

Installing image: docker://quay.io/fedora-ostree-desktops/sway-atomic
error: Installing to filesystem: Failed to find ostree/prepare-root.conf in /usr/lib or /etc

Edit: missed that you are trying to move to Atomic in-place of your current setup, whereas what I suggest below is just a way to build bootc images locally

I’d recommend checking out this out. It’s the simplest way I’ve found to do locally-built images: novafunc/fedora-bootc-template: Locally build a bootc image and (optionally) handle updates automatically - Codeberg.org

If you have any questions about it, feel free to ask.

I actually already found your repo and it provided some valuable hints, so thanks. :slight_smile:

But yeah, I’m struggling with installing Atomic to an existing system, and still keeping what’s on there. I have a few distros installed as LVM logical volumes, I want to add a new LV, and installed Atomic to that.

Seems like it’s possible in theory, but I can’t seem to figure out the specific steps and commands I need to use.

I’d love to give bootc a go, but I’d rather not have to blitz my machine in the process.