How Automotive Image Builder works¶
Automotive Image Builder (AIB) takes a YAML manifest and a set of build options as input and produces a deployable OS image as output.
The build process resolves package dependencies, fetches content from configured repositories, and assembles the final image in the requested format.
Input: manifests and options¶
Every build starts with a manifest file that defines what goes into the image. The manifest specifies packages, container images, configuration files, and other content to include. For details on the manifest format, see Automotive Image Builder manifests.
In addition to the manifest, the build command accepts options that control the target hardware platform, distribution, architecture, and output format. For a full list of options, see Options and mechanics.
Build paths¶
AIB provides two build paths for producing OS images:
Package-based disk images with aib-dev build
The aib-dev build command creates a traditional, package-based disk image
directly from a manifest. The output is a bootable disk image file in the
format you specify (for example, qcow2 or raw). Package-based images are
useful for development and testing because they use conventional package
management and produce a mutable filesystem.
Bootc container images with aib build
The aib build command creates a bootc container image from a manifest.
Bootc images are immutable and atomically updatable, making them suitable
for production deployments. You can push the resulting container image to a
OCI-compliant container registry and update running systems with bootc switch or bootc update
without re-flashing a disk image.
The following sample command shows how to create a bootc container image from a YML manifest:
To convert a bootc container image to a bootable disk image, use the
aib to-disk-image command:
To produce a bootc container image and disk image with a single command, add the disk image path as a second output argument:
$ aib build \
--target <target> \
<path-to-manifest>.aib.yml \
localhost/<my-image-name>:latest \
<my-image-name>.qcow2
For a detailed explanation of the bootc workflow, see Bootc image building. For step-by-step build instructions, see Building bootc images. For information about pushing images to a registry and updating running systems, see Registry-based distribution.
The builder image¶
Automotive images are intentionally minimal and lack many build-time tools
such as dnf, mkfs, and other utilities.
To help work around this limitation, AIB uses a builder image, a container that provides all the tools required to assemble an OS image. The builder image acts as a self-contained build environment, ensuring reproducible builds regardless of the host system configuration.