Skip to content

docs: Add apple/container integration analysis#211

Closed
cgwalters wants to merge 1 commit intobootc-dev:mainfrom
cgwalters:vs-apple-container
Closed

docs: Add apple/container integration analysis#211
cgwalters wants to merge 1 commit intobootc-dev:mainfrom
cgwalters:vs-apple-container

Conversation

@cgwalters
Copy link
Collaborator

Describe how bcvk could reuse ext4 filesystem images that apple/container already creates, rather than reimplementing ext4 synthesis. The key insight is that apple/container's snapshot store contains plain ext4 files at predictable paths, and bcvk can read them directly.

Cover the kernel extraction problem: bcvk always boots the image's own kernel, so it needs to read the kernel out of the ext4 image before booting. The ext4-view crate (pure Rust, read-only ext4 access) solves this without requiring mount privileges.

Also document apple/container's storage APIs (content store layout, snapshot store structure) based on source analysis of the Containerization Swift package.

Assisted-by: OpenCode (claude-opus-4-6)

@cgwalters cgwalters mentioned this pull request Feb 25, 2026
Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request adds extensive documentation, including a detailed analysis of a potential integration between bcvk and Apple's container tool. The changes introduce three new documentation pages comparing bcvk with bootc, podman-bootc, and analyzing the apple/container integration. The new analysis in vs-apple-container.md is thorough, covering technical implementation details and providing a clear path forward. The documentation is well-structured and valuable. I have one minor suggestion to correct a version number for accuracy. It would also be beneficial to update the pull request title and description to reflect the full scope of the documentation added.

Describe how bcvk could reuse ext4 filesystem images that apple/container
already creates, rather than reimplementing ext4 synthesis. The key insight
is that apple/container's snapshot store contains plain ext4 files at
predictable paths, and bcvk can read them directly.

Cover the kernel extraction problem: bcvk always boots the image's own
kernel, so it needs to read the kernel out of the ext4 image before
booting. The ext4-view crate (pure Rust, read-only ext4 access) solves
this without requiring mount privileges.

Also document apple/container's storage APIs (content store layout,
snapshot store structure) based on source analysis of the Containerization
Swift package.

Assisted-by: OpenCode (claude-opus-4-6)
Signed-off-by: Colin Walters <walters@verbum.org>
@paschun
Copy link

paschun commented Feb 26, 2026

Thanks for putting it together but the document is long and difficult to read. Lots of repeated information, minor details given too much attention, paragraphs don't seem to flow towards an overall point

@cgwalters
Copy link
Collaborator Author

Thank you, you're 100% right. This was a LLM-assisted (but definitely guided and partially checked) research dump, intended to be early raw material for further refinement.

I recently read https://rfd.shared.oxide.computer/rfd/0576 and agree with a lot of it, though I have specifically found this "LLMs for writing" to generate rough draft research reports to actually be really useful sometimes, but for sure it should be clearly marked as such and not presented to humans by default.

A procedure I'm starting to follow is filing an issue, and then editing the issue with a <details> section where I stash this stuff. When editing an issue it doesn't send email to watching humans. That's what I did in #214

@cgwalters cgwalters closed this Feb 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants