-
Notifications
You must be signed in to change notification settings - Fork 88
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
Add support for e.g. /usr/lib/bootc/kargs.d
or equivalent
#255
Comments
/usr/lib/bootc/kargs.d
or equivalent
Anything around having Ultimately when executed in a container image, Note a large difference versus the bootc install configs is that those kargs are only applied at |
I know bootc wants to leave the door open for non-ostree backends, but given that kargs are intimately linked to the thing that updates the bootloader, isn't the right place to implement this at the ostree level? (I.e. revive ostreedev/ostree#2217 and then users can put things in those directories in their derived builds.) I can certainly imagine |
Yeah, it's a fair point. Mainly for things like this I just want to ideally do new features in Rust in this project, having it more of a mono-repo style. |
This came out of discussion in CentOS/centos-bootc-dev#27 Basically...I think what we should emphasize in the future is the combination of `bootc` and `dnf`. There's no really strong reason to use `rpm-ostree` at container build time versus `dnf`. Now on the *client* side...well, here's the interesting thing; with transient root enabled, `dnf install` etc generally just works. Of course, *persistent* changes don't. However, anyone who wants that can just `dnf install rpm-ostree` in their container builds. There is one gap that's somewhat important which is kernel arguments. Because we haven't taught `grubby` do deal with ostree, and we don't have containers/bootc#255 to change kargs per machine outside of install time one will need to just hand-edit the configs in `/boot/loader`. Another fallout from this is that `ostree container` goes away inside the booted host...and today actually this totally breaks bib until osbuild/bootc-image-builder#18 is fixed. Probably bootc should grow the interception for that too optionally.
As part of whatever kargs support is implemented, we should consider how to support per-architecture kargs. For example, console settings; see the discussion on the MR from @trgeiger - https://gitlab.com/bootc-org/examples/-/merge_requests/11#note_1783996244 |
This is also relevant for bootc-image-builder where it is nice to support customizing the kernel commandline |
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - push the contents of each file (kargs) into a vector containing all the desired kargs - pass the kargs to the stage() function
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - push the contents of each file (kargs) into a vector containing all the desired kargs - pass the kargs to the stage() function Signed-off-by: Luke Yang <[email protected]>
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - push the contents of each file (kargs) into a vector containing all the desired kargs - pass the kargs to the stage() function Signed-off-by: Luke Yang <[email protected]>
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - push the contents of each file (kargs) into a vector containing all the desired kargs - pass the kargs to the stage() function Signed-off-by: Luke Yang <[email protected]>
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - push the contents of each file (kargs) into a vector containing all the desired kargs - pass the kargs to the stage() function Signed-off-by: Luke Yang <[email protected]>
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - calculate the diff between the booted and fetched kargs in kargs.d - apply the diff to the kargs currently on the running system - pass the kargs to the stage() function Signed-off-by: Luke Yang <[email protected]>
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - calculate the diff between the booted and fetched kargs in kargs.d - apply the diff to the kargs currently on the running system - pass the kargs to the stage() function Signed-off-by: Luke Yang <[email protected]>
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - calculate the diff between the booted and fetched kargs in kargs.d - apply the diff to the kargs currently on the running system - pass the kargs to the stage() function Signed-off-by: Luke Yang <[email protected]>
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - calculate the diff between the booted and fetched kargs in kargs.d - apply the diff to the kargs currently on the running system - pass the kargs to the stage() function Signed-off-by: Luke Yang <[email protected]>
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - calculate the diff between the booted and fetched kargs in kargs.d - apply the diff to the kargs currently on the running system - pass the kargs to the stage() function Signed-off-by: Luke Yang <[email protected]>
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - calculate the diff between the booted and fetched kargs in kargs.d - apply the diff to the kargs currently on the running system - pass the kargs to the stage() function Signed-off-by: Luke Yang <[email protected]>
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - calculate the diff between the booted and fetched kargs in kargs.d - apply the diff to the kargs currently on the running system - pass the kargs to the stage() function Signed-off-by: Luke Yang <[email protected]>
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - calculate the diff between the booted and fetched kargs in kargs.d - apply the diff to the kargs currently on the running system - pass the kargs to the stage() function Signed-off-by: Luke Yang <[email protected]>
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - calculate the diff between the booted and fetched kargs in kargs.d - apply the diff to the kargs currently on the running system - pass the kargs to the stage() function Signed-off-by: Luke Yang <[email protected]>
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - calculate the diff between the booted and fetched kargs in kargs.d - apply the diff to the kargs currently on the running system - pass the kargs to the stage() function Signed-off-by: Luke Yang <[email protected]>
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - calculate the diff between the booted and fetched kargs in kargs.d - apply the diff to the kargs currently on the running system - pass the kargs to the stage() function Signed-off-by: Luke Yang <[email protected]>
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - calculate the diff between the booted and fetched kargs in kargs.d - apply the diff to the kargs currently on the running system - pass the kargs to the stage() function Signed-off-by: Luke Yang <[email protected]>
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - calculate the diff between the booted and fetched kargs in kargs.d - apply the diff to the kargs currently on the running system - pass the kargs to the stage() function Signed-off-by: Luke Yang <[email protected]>
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - calculate the diff between the booted and fetched kargs in kargs.d - apply the diff to the kargs currently on the running system - pass the kargs to the stage() function Signed-off-by: Luke Yang <[email protected]>
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - calculate the diff between the booted and fetched kargs in kargs.d - apply the diff to the kargs currently on the running system - pass the kargs to the stage() function Signed-off-by: Luke Yang <[email protected]>
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - calculate the diff between the booted and fetched kargs in kargs.d - apply the diff to the kargs currently on the running system - pass the kargs to the stage() function Signed-off-by: Luke Yang <[email protected]>
Fixes containers#255. Allows users to create files within /usr/lib/bootc/kargs.d with kernel arguments. These arguments can now be applied on a switch, upgrade, or edit. General process: - use ostree commit of fetched container image to return the file tree - navigate to /usr/lib/bootc/kargs.d - read each file within the directory - calculate the diff between the booted and fetched kargs in kargs.d - apply the diff to the kargs currently on the running system - pass the kargs to the stage() function Signed-off-by: Luke Yang <[email protected]>
(Edited by @cgwalters )
This issue is basically the bootc equivalent of ostreedev/ostree#2217
which has a lot of history.
I think it makes sense to revisit this in a container-native flow. Having a drop-in dir for kernel arguments that can be applied alongside kernel updates would make sense to me.
Original issue text:
rpm-ostree kargs --append='audit=0' is not working:
This is the containerfile:
kargs support needs to be added. Current workaround (thanks @miabbott ) is here: https://containers.github.io/bootc/install/#operating-system-install-configuration-required
The text was updated successfully, but these errors were encountered: