@@ -7,17 +7,31 @@ SPDX-License-Identifier: CC-BY-4.0
77---
88# Discoverable Disk Image (DDI)
99
10- DDIs (Discoverable Disk Images) are self-describing file system images that follow the DPS
11- ( [ Discoverable Partitions Specification] ( discoverable_partitions_specification.md ) ), wrapped in a GPT
12- partition table, that may contain root (or ` /usr/ ` ) filesystems, system extensions, configuration extensions,
13- portable services, containers and more, and are all protected by signed dm-verity all combined into one.
14- They are designed to be composable and stackable, and provide security by default.
10+ DDIs (Discoverable Disk Images) are self-describing file system images that follow the DPS ( [ Discoverable
11+ Partitions Specification] ( discoverable_partitions_specification.md ) ), wrapped in a GPT partition table, that
12+ may contain root (or ` /usr/ ` ) filesystems for bootable OS images , system extensions, configuration
13+ extensions, portable services, containers and more, and shall be protected by signed ` dm-verity ` all combined
14+ into one. They are designed to be composable and stackable, and provide security by default.
1515
1616## Image Format
1717The images use the GPT partition table verbatim, so it will not be redefined here. Each partition contains
18- a standard Linux filesystem (e.g.: squashfs ), so again this will not be redefined here.
18+ a standard Linux filesystem (e.g.: ` erofs ` ), so again this will not be redefined here.
1919The [ DPS] ( discoverable_partitions_specification.md ) defines the GUIDs to use and the format of the
20- dm-verity signature partition's JSON content.
20+ ` dm-verity ` signature partition's JSON content.
21+
22+ It is recommended to use a sector size of 512 bytes or 4096 for DDIs. Software operating with DDIs should
23+ automatically derive the sector size used for a DDI by looking for the ` EFI PART ` magic string at offsets 512
24+ or 4096, as per GPT specification.
25+
26+ ## Naming
27+
28+ DDIs should use ` .raw ` as file suffix. A secondary suffix may be used to clarify the specific usage class of
29+ a DDI. For now the two secondary suffixes ` .sysext.raw ` and ` .confext.raw ` are defined (for system extension
30+ DDIs and configuration extension DDIs, see [ Extension
31+ Images] ( https://uapi-group.org/specifications/specs/extension_image ) for details).
32+
33+ The MIME type for DDIs is ` application/vnd.efi.img ` , [ as per
34+ IANA] ( https://www.iana.org/assignments/media-types/application/vnd.efi.img ) .
2135
2236## Image Version
2337If the DDI is versioned, the version format described in the
0 commit comments