-
Notifications
You must be signed in to change notification settings - Fork 52
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
Implement bootloader interface for GRUB #193
Conversation
@anpep A couple of things:
|
Sorry about that, should have included a link to the document in the first place. I've added it now.
It is, and in a similar fashion with the Let me know what you think, I greatly appreciate your feedback! |
* Remove `GetBootVars()`/`SetBootVars()` from the interface. * Update interface methods with more consistent Go naming conventions. * Unexport internal symbols. * Add an `export_test.go` file to the `bootloader` package so internal symbols remain accessible from within the tests for mocking. * Fix permissions bug leading to dangling files in tests. * `Status()` no longer returns an error. * `ActiveSlot()` no longer returns an error.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just one comment about changing Find
to return Bootloader
(an interface type) instead of *Bootloader
.
My comments on grubenv.go
remain, but yeah, if we're copying that verbatim from snapd, might be better to leave as is for now.
* Remove `Status()` from interface for now. * Use underscores instead of dots for GRUB variables.
Per our agreements, closing as this is moving elsewhere now. |
This commit implements the new bootloader interface for GRUB (doc).
The aim is to support bootloader operations directly on Pebble, like snapd does.
Note that the
grubenv
package is taken directly from snapd and is meant to be merged inx-go
in the near future.