diff --git a/osbase/build/genproductinfo/defs.bzl b/osbase/build/genproductinfo/defs.bzl
index c484bbb..f2dde7c 100644
--- a/osbase/build/genproductinfo/defs.bzl
+++ b/osbase/build/genproductinfo/defs.bzl
@@ -12,6 +12,7 @@
     args.add("-id", ctx.attr.os_id)
     args.add("-architecture", ctx.attr.architecture)
     args.add("-build_flags", "-".join(ctx.attr.build_flags))
+    args.add("-platform_os", ctx.attr.platform_os)
     args.add_all(ctx.attr.components, before_each = "-component")
     ctx.actions.run(
         mnemonic = "GenProductInfo",
@@ -29,6 +30,7 @@
         "os_name": attr.string(mandatory = True),
         "os_id": attr.string(mandatory = True),
         "stamp_var": attr.string(mandatory = True),
+        "platform_os": attr.string(default = "unknown"),
         "components": attr.string_list(),
         "out_os_release": attr.output(
             mandatory = True,
diff --git a/osbase/build/genproductinfo/main.go b/osbase/build/genproductinfo/main.go
index e4b566d..87d6e09 100644
--- a/osbase/build/genproductinfo/main.go
+++ b/osbase/build/genproductinfo/main.go
@@ -31,6 +31,7 @@
 	flagID              = flag.String("id", "", "id parameter (see freedesktop spec)")
 	flagArchitecture    = flag.String("architecture", "", "CPU architecture")
 	flagBuildFlags      = flag.String("build_flags", "", "build flags joined by '-'")
+	flagPlatformOS      = flag.String("platform_os", "", "platform OS")
 )
 
 var (
@@ -117,6 +118,7 @@
 		CommitHash:     statusVars["STABLE_MONOGON_gitCommit"],
 		CommitDate:     statusVars["STABLE_MONOGON_gitCommitDate"],
 		BuildTreeDirty: statusVars["STABLE_MONOGON_gitTreeState"] == "dirty",
+		PlatformOS:     *flagPlatformOS,
 		Components:     components,
 	}
 	productInfoBytes, err := json.MarshalIndent(productInfo, "", "\t")
diff --git a/osbase/build/mkoci/main.go b/osbase/build/mkoci/main.go
index 1fb2254..7077887 100644
--- a/osbase/build/mkoci/main.go
+++ b/osbase/build/mkoci/main.go
@@ -34,6 +34,11 @@
 	outPath          = flag.String("out", "", "Output OCI Image Layout directory path")
 )
 
+var architectureToOCI = map[string]string{
+	"x86_64":  "amd64",
+	"aarch64": "arm64",
+}
+
 type payload struct {
 	name string
 	path string
@@ -272,14 +277,30 @@
 	}
 
 	// Write the index.
+	platformArchitecture, ok := architectureToOCI[productInfo.Architecture()]
+	if !ok {
+		log.Fatalf("Missing architectureToOCI entry for %q", productInfo.Architecture())
+	}
+	platformOS := productInfo.PlatformOS
+	if platformOS == "" {
+		platformOS = "unknown"
+	}
 	imageIndex := ocispecv1.Index{
 		Versioned: ocispec.Versioned{SchemaVersion: 2},
 		MediaType: ocispecv1.MediaTypeImageIndex,
 		Manifests: []ocispecv1.Descriptor{{
 			MediaType:    ocispecv1.MediaTypeImageManifest,
 			ArtifactType: osimage.MediaTypeOSImageConfig,
-			Digest:       digest.NewDigestFromEncoded(digest.SHA256, imageManifestHash),
-			Size:         int64(len(imageManifestBytes)),
+			// The platform set here is used when building an OCI index with Bazel.
+			// Other consumers cannot rely on it being present because it is not
+			// preserved when pushing to a registry. We don't use the OS field, but
+			// it's required by the OCI spec.
+			Platform: &ocispecv1.Platform{
+				Architecture: platformArchitecture,
+				OS:           platformOS,
+			},
+			Digest: digest.NewDigestFromEncoded(digest.SHA256, imageManifestHash),
+			Size:   int64(len(imageManifestBytes)),
 		}},
 	}
 	imageIndexBytes, err := json.MarshalIndent(imageIndex, "", "\t")
diff --git a/osbase/oci/osimage/types.go b/osbase/oci/osimage/types.go
index c94ae35..b42c701 100644
--- a/osbase/oci/osimage/types.go
+++ b/osbase/oci/osimage/types.go
@@ -62,6 +62,9 @@
 	// differs from the tree of the commit referenced by commit_hash.
 	BuildTreeDirty bool `json:"build_tree_dirty"`
 
+	// PlatformOS on top of which the product executes. This is put into the
+	// platform os field when building an OCI image index. Example: "uefi"
+	PlatformOS string `json:"platform_os"`
 	// Components contains versions of the most important components. These are
 	// mostly intended for human consumption, but could also be used for certain
 	// automations, e.g. automatically deriving Kubernetes compatibility
