uefi

License: APACHE-2.0

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.

📦 Installation

$ go get -u github.com/0x5a17ed/[email protected]

🤔 Usage

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
	}
}

💡 Features

  • Works on Linux and on Windows
  • Reading Boot options
  • Setting next Boot option
  • Extensible
  • Simple API

GitHub

View Github