From 477e5e0974adaa59bb47b239cbd469d6b92ea70e Mon Sep 17 00:00:00 2001 From: Jonathan Lebon Date: Tue, 7 Jan 2025 11:38:29 -0500 Subject: [PATCH] docs/relationships: add section about ostree I think this info can probably be pieced together from the rest of the docs, but let's add a dedicated section for it. Came up in an internal chat. Signed-off-by: Jonathan Lebon --- docs/src/relationships.md | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/docs/src/relationships.md b/docs/src/relationships.md index 089b83e78..977d6aa9c 100644 --- a/docs/src/relationships.md +++ b/docs/src/relationships.md @@ -39,12 +39,26 @@ However, there are also plans for `bootc` to also understand Kubernetes API type Perhaps in the future we may actually support some kind of `Pod` analogue for representing the host state. Or we may define a [CRD](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/) which can be used inside and outside of Kubernetes. +## Relationship with ostree + +OSTree provides many things: +1. a git-like repo for OS data from which you can check out an entire rootfs +2. a bootloader integration layer +3. a transport layer for pulling content over HTTP + +With bootc, the OSTree transport layer is not used. Instead, content is pulled +as OCI containers using `skopeo` as mentioned above. However, this content +is then imported into the local OSTree repo to perform a deployment checkout. +The role of OSTree may further shrink in the future, especially as tighter +integration with podman and composefs occurs, but it will remain an important +part of the bootc stack (in particular the bootloader integration layer and +management of deployment roots). + ## Relationship with rpm-ostree -Today both bootc and rpm-ostree use the [ostree project](https://github.com/ostreedev/ostree-rs-ext) -as a backing model. Hence, when using a container source, -`rpm-ostree upgrade` and `bootc upgrade` are effectively equivalent; -you can use either command. +As mentioned above, bootc uses OSTree as a backing model, and so does +rpm-ostree. Hence, when using a container source, `rpm-ostree upgrade` and +`bootc upgrade` are effectively equivalent; you can use either command. ### Differences from rpm-ostree