Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

install: Support /usr/lib/bootc/install-to-disk executable #440

Open
cgwalters opened this issue Mar 26, 2024 · 1 comment
Open

install: Support /usr/lib/bootc/install-to-disk executable #440

cgwalters opened this issue Mar 26, 2024 · 1 comment
Labels
area/install Issues related to `bootc install` area/osintegration Relates to an external OS/distro base image

Comments

@cgwalters
Copy link
Collaborator

One thing to consider: Support the container image to shipping its own default to-disk installer that sets up partitioning etc. that is an executable in /usr/lib/bootc/install-to-disk for example.

This would be clearer actually if we more cleanly severed the existing "to-disk" and "to-filesystem" code here, and we ship the to-disk setup as /usr/lib/bootc/install-to-disk.default or something?

Also xref #437 where I think we need configurability for what the base image supports in general.


Alternatively to this, what I think could work well is just recommending that folks add their own bootc install wrapper in the container image e.g. /usr/bin/exampleos-installer that sets up partitioning using whatever CLI and configfiles it wants, then just invokes bootc install to-filesystem. Then they can also drop in a config file that disables bootc install to-disk entirely.

@cgwalters cgwalters added area/install Issues related to `bootc install` area/osintegration Relates to an external OS/distro base image labels Mar 26, 2024
@cgwalters
Copy link
Collaborator Author

See also #448

cgwalters added a commit to cgwalters/bootc that referenced this issue May 14, 2024
In order to simplify what we're doing here, let's drop the separate
`/boot` aka XBOOTLDR partition by default for the `to-disk --block-setup=direct`
path (the default).

We retain it when using `--block-setup=tpm2-luks` as it's required there.

Notably this kills off a hardcoded "ext4 for /boot" which is suboptimal
for many reasons.

Longer term again I'd like to emphasize `install to-filesystem` with
external installers, plus integrating external installation scripts
as part of `bootc install to-disk`.

xref:
- containers#499
- containers#440
cgwalters added a commit to cgwalters/bootc that referenced this issue May 14, 2024
In order to simplify what we're doing here, let's drop the separate
`/boot` aka XBOOTLDR partition by default for the `to-disk --block-setup=direct`
path (the default).

We retain it when using `--block-setup=tpm2-luks` as it's required there.

Notably this kills off a hardcoded "ext4 for /boot" which is suboptimal
for many reasons.

Longer term again I'd like to emphasize `install to-filesystem` with
external installers, plus integrating external installation scripts
as part of `bootc install to-disk`.

xref:
- containers#499
- containers#440

Signed-off-by: Colin Walters <[email protected]>
cgwalters added a commit to cgwalters/bootc that referenced this issue May 15, 2024
In order to simplify what we're doing here, let's drop the separate
`/boot` aka XBOOTLDR partition by default for the `to-disk --block-setup=direct`
path (the default).

We retain it when using `--block-setup=tpm2-luks` as it's required there.

Notably this kills off a hardcoded "ext4 for /boot" which is suboptimal
for many reasons.

Longer term again I'd like to emphasize `install to-filesystem` with
external installers, plus integrating external installation scripts
as part of `bootc install to-disk`.

xref:
- containers#499
- containers#440

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/install Issues related to `bootc install` area/osintegration Relates to an external OS/distro base image
Projects
None yet
Development

No branches or pull requests

1 participant