A UEFI library written in go to interact with efivars. Compatible with Windows and Linux.
This library tries its best to follow the UEFI 2.9 specification outlined here.
$ go get -u github.com/0x5a17ed/uefi@latest
package main
import (
"fmt"
"github.com/0x5a17ed/uefi/efi/efivaraccess"
"github.com/0x5a17ed/uefi/efi/efivars"
)
func main() {
c := efivaraccess.NewDefaultContext()
if err := efivars.BootNext.Set(c, 1); err != nil {
fmt.Println(err)
return
}
}
- Works on Linux and on Windows
- Reading Boot options
- Setting next Boot option
- Extensible
- Simple API