efivarfs, osimage: fix boot entry handling

efivarfs was updated to handle partition UUIDs in the mixed-endian
format [1], enabling it to produce correct boot entries. Its interface
was changed in the process, leading to further changes in osimage.

In addition, BootEntry.Marshal will replace any backslash with a
forward slash in the EFI executable path.

[1] https://en.wikipedia.org/wiki/Universally_unique_identifier#Encoding

Change-Id: Ib8300e01fd1664d0c08bb033b1dc36addb925b20
Reviewed-on: https://review.monogon.dev/c/monogon/+/456
Reviewed-by: Lorenz Brun <lorenz@monogon.tech>
diff --git a/metropolis/pkg/efivarfs/BUILD.bazel b/metropolis/pkg/efivarfs/BUILD.bazel
index 3b1e0b0..c41bb88 100644
--- a/metropolis/pkg/efivarfs/BUILD.bazel
+++ b/metropolis/pkg/efivarfs/BUILD.bazel
@@ -5,10 +5,12 @@
     srcs = [
         "boot.go",
         "efivarfs.go",
+        "format.go",
     ],
     importpath = "source.monogon.dev/metropolis/pkg/efivarfs",
     visibility = ["//visibility:public"],
     deps = [
+        "@com_github_google_uuid//:go_default_library",
         "@org_golang_x_text//encoding/unicode:go_default_library",
         "@org_golang_x_text//transform:go_default_library",
     ],