Skip to content

Conversation

@allisonkarlitskaya
Copy link
Contributor

This is mostly about the new splitstream API, but it also adopts the new library API exposed by the cfsctl crate, removing our private copy.

@github-actions github-actions bot added area/install Issues related to `bootc install` area/documentation Updates to the documentation labels Nov 20, 2025
@bootc-bot bootc-bot bot requested a review from jmarrero November 20, 2025 13:00
@cgwalters
Copy link
Collaborator

Needs DCO, also looks like some of the hashes changed

@cgwalters
Copy link
Collaborator

I've rebased and tweaked this a bit, so it should probably be reviewed by someone other than me now.

@bootc-bot bootc-bot bot requested a review from cgwalters January 9, 2026 19:42
@cgwalters cgwalters enabled auto-merge (rebase) January 9, 2026 19:50
Copy link
Contributor Author

@allisonkarlitskaya allisonkarlitskaya left a comment

Choose a reason for hiding this comment

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

All looks good to me but this is technically my PR so I can't self-review.

I guess we'll do a composefs-rs release after this?

let size = header.entry_size()?;

match layer_stream.read_exact(size as usize, ((size + 511) & !511) as usize)? {
match layer_stream.read_exact(size as usize, ((size as usize) + 511) & !511)? {
Copy link
Contributor Author

Choose a reason for hiding this comment

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

. o O ( Reminds me that I wanted to get rid of the magic handling of padding in the writer side . . )

cgwalters and others added 2 commits January 12, 2026 11:57
The `cp -a lbi/usr/. /usr` command was preserving local directory
permissions which in one case for me have a restrictive mode 0750
which breaks booting.

Switch to `install -D -m 0644` which explicitly sets file modes and
creates parent directories with correct 755 permissions, while also
simplifying the directory structure.

Assisted-by: OpenCode (Opus 4.5)
Signed-off-by: Colin Walters <[email protected]>
Update composefs-rs from rev b636e0e9 to e9008489, adapting to API changes:

- merge_splitstream now takes 4 arguments instead of 3
- import_layer takes digest as string directly
- pull/seal return (digest, verity) as (String, ObjectID)
- SplitStreamWriter::new and write_stream have new signatures
- initialize_composefs_repository returns String instead of Sha256Digest

Co-authored-by: Allison Karlitskaya <[email protected]>
Assisted-by: OpenCode (Claude claude-sonnet-4-20250514)
Signed-off-by: Colin Walters <[email protected]>
Copy link
Collaborator

@jeckersb jeckersb left a comment

Choose a reason for hiding this comment

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

LGTM

@cgwalters cgwalters merged commit 49d753f into bootc-dev:main Jan 12, 2026
47 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/documentation Updates to the documentation area/install Issues related to `bootc install`

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants