Skip to content

Conversation

@cgwalters
Copy link
Collaborator

This fixes bootc's use of the Discoverable Partition Specification (DPS) to properly support systemd-gpt-auto-generator. Previously, bootc was incorrectly setting filesystem UUIDs to the DPS partition type UUID value, which caused UUID collisions and prevented proper DPS functionality.

It's still a TODO on our side to support systemd-repart in this flow.

Note we go back to using random filesystem UUIDs with this, but per above we should likely reinitialize them on boot via repart.

Note we remove root= parameter from kernel cmdline for composefs sealed images, allowing systemd-gpt-auto-generator to auto-discover the root partition and we test this.

Fixes: #1771

Assisted-by: Claude Code (Sonnet 4.5)

@github-actions github-actions bot added area/install Issues related to `bootc install` area/documentation Updates to the documentation labels Nov 15, 2025
@bootc-bot bootc-bot bot requested a review from gursewak1997 November 15, 2025 18:20
Copy link
Contributor

@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 correctly addresses an issue with Discoverable Partition Specification (DPS) support by distinguishing between filesystem UUIDs and partition type UUIDs. The changes ensure that a random UUID is generated for the root filesystem, while the partition type is correctly set to the architecture-specific DPS GUID. I appreciate the removal of the root= kernel argument for composefs images to enable auto-discovery by systemd-gpt-auto-generator. The addition of integration tests to verify this behavior and the documentation updates are excellent. The code is clean and the fix is well-implemented. I have one minor suggestion to make a test more robust.

This fixes bootc's use of the Discoverable Partition Specification (DPS)
to properly support systemd-gpt-auto-generator. Previously, bootc was
incorrectly setting filesystem UUIDs to the DPS partition type UUID value,
which caused UUID collisions and prevented proper DPS functionality.

It's still a TODO on our side to support systemd-repart in this flow.

Note we go back to using random filesystem UUIDs with this, but
per above we should likely reinitialize them on boot via repart.

Note we remove root= parameter from kernel cmdline for composefs sealed images,
allowing systemd-gpt-auto-generator to auto-discover the root partition
and we test this.

Fixes: bootc-dev#1771

Assisted-by: Claude Code (Sonnet 4.5)
Signed-off-by: Colin Walters <[email protected]>
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.

Discoverable partition UUIDs misused

1 participant