Raspberry Pi Image Description Provisioning

Type: object

The Image Description Provisioning (IDP) document describes a Raspberry Pi image for secure on-device provisioning. It combines image layout information (partition table, partition images, sizes, filesystem types and attributes) with a Provisioning Map (PMAP) that defines how the image is deployed — including partition creation, LUKS encryption, and security attributes. IDP documents are consumed by Raspberry Pi provisioning tools such as rpi-sb-provisioner.

No Additional Properties

Type: string

The IDP document format version in semver format (MAJOR.MINOR.PATCH). Provisioning tools use this field to select the correct parsing and provisioning path, enabling backward compatibility across document format revisions.

Must match regular expression: ^[0-9]+\.[0-9]+\.[0-9]+$

Type: object

Build configuration metadata derived from the rpi-image-gen environment. For images built outside rpi-image-gen these fields must be populated manually.

No Additional Properties

Type: enum (of string)

The Raspberry Pi device family the image is intended for.

Must be one of:

  • "zero2w"
  • "pi3"
  • "pi4"
  • "cm4"
  • "pi5"
  • "cm5"

Type: string

An optional device variant identifier, e.g. memory size or edition (8G, lite). Use 'none' if no variant applies.

Type: enum (of string)

The storage media type the image is intended for, as seen by the OS. Determines which block device the provisioning tool will target.

Must be one of:

  • "sd"
  • "emmc"
  • "nvme"

Type: enum (of integer)

The logical sector size in bytes of the target storage device. Used to guide image layout decisions such as alignment and padding.

Must be one of:

  • 512
  • 4096

Type: string

The version string of the image, typically matching the artefact version set at build time.

Type: string

The output directory path where the image and associated artefacts were written by the build.

Type: object

Image-level attributes describing the overall image geometry and identity.

No Additional Properties

Type: string

The base name of the image, used to identify the image artefact.

Must be at least 1 characters long

Type: integer

The physical size of the raw disk image in bytes.

Value must be greater or equal to 0

Type: string

The partition alignment of the image in bytes. Accepts integer values or genimage-style size suffixes (e.g. 8M).

Type: object

The image layout, comprising the partition table, partition images, and provisioning map.

No Additional Properties

Type: object

The partition table descriptor, including type and disk identifier.

If the conditions in the "If" tab are respected, then the conditions in the "Then" tab should be respected. Otherwise, the conditions in the "Else" tab should be respected.

Type: object

Type: const
Specific value: "gpt"
Type: object

Type: string

A standard UUID string (case-insensitive), e.g. F5C56D0D-B6D9-4353-9F7C-9E8FBF89D864.

Must match regular expression: ^[0-9A-Fa-f]{8}(-[0-9A-Fa-f]{4}){3}-[0-9A-Fa-f]{12}$
Type: object

Type: string
Must match regular expression: ^0x[0-9A-Fa-f]{8}$

Type: enum (of string)

The partition table type. 'gpt' for GUID Partition Table, 'dos' for MBR.

Must be one of:

  • "gpt"
  • "dos"

Type: string

The disk identifier. A UUID for GPT disks, or a 4-byte hex value (e.g. 0x1234abcd) for MBR disks.

Additional Properties of any type are allowed.

Type: object

Type: object

A map of partition entries keyed by partition name, each describing a partition's geometry, filesystem type, and attributes.

Each additional property must conform to the following schema

Type: object

Describes a single partition image, including its geometry, filesystem type, and attributes.

Type: string

An arbitrary string identifying this partition. Used as the key in the partitionimages map and referenced by name in the PMAP.

Must be at least 1 characters long

Type: enum (of string)

Whether this partition image has a corresponding entry in the partition table. Represented as a string boolean.

Must be one of:

  • "true"
  • "false"

Type: integer

The physical size of the partition image in bytes. Must be at least one sector (512 bytes).

Value must be greater or equal to 512

Type: string

The filename of the raw partition image file.

Must be at least 1 characters long

Type: string

The filesystem or image type of this partition, e.g. ext4.

Must be at least 1 characters long

Type: enum (of string)

Whether the partition is flagged as bootable. Represented as a string boolean.

Must be one of:

  • "true"
  • "false"

Type: string

The mountpoint of this partition on the running device, e.g. /boot or /.

Type: string

The GPT partition type UUID, identifying the type of partition (e.g. Linux filesystem, EFI System).

Same definition as id

Type: string

The GPT partition label, a human-readable name for the partition entry in the partition table.

Type: string

The GPT partition UUID, uniquely identifying this partition entry in the partition table.

Same definition as id

Type: string

The filesystem label assigned to this partition.


The filesystem UUID. A standard UUID for most filesystem types, or a 4-byte hex vfat volume ID.

Type: string

A standard UUID string (case-insensitive), e.g. F5C56D0D-B6D9-4353-9F7C-9E8FBF89D864.

Same definition as id
Type: string

A vfat volume ID in 4-byte hexadecimal format, e.g. 1234-ABCD.

Must match regular expression: ^[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}$

Type: string

The filename of the sparse image file containing this partition's data, e.g. boot.sparse. Required for fastboot provisioning flows.

Must be at least 1 characters long

Additional Properties of any type are allowed.

Type: object

Type: array

The embedded Provisioning Map (PMAP), defining how partitions are assigned, ordered, and optionally encrypted on the target device. See the PMAP schema for full details.

No Additional Items