Bootware Additional Info

Bootware File Structure Overview:

Brief description of Bootware files that complete the Bootware process.

Location: /boot

Critical Files:

Filename: config.txt

Description: RPi Configuration File

Critical Lines:


Filename: u-boot.bin

Description: U-Boot Bootloader

Functions: Loads and executes boot script

Filename: boot.scr

Description: U-Boot Boot Script


  • Generates U-Boot Environment
  • Updates U-Boot Environment
  • Loads and Boots Kernel

Filename: zboot.enc

Description: zboot (Bootware zboot Module)


  • Initialize Bootware
  • Perform Update
  • Perform Rollback
  • Perform Recovery

Filename: zb_config.enc

Description: zboot Configuration File - Generated by zb-wizard

Filename: uboot.env

Description: u-Boot Environment

Filename: kernel8.enc

Description: Bullseye 64 (Encrypted Kernel) - Generated by zboot

Non-Critical Files:

Filename: zboot.log

Description: zboot Log File


zb-wizard internally uses the zbconfig tool to configure the device environment. Developers may directly use the zbconfig CLI interface instead of the zb-wizard GUI to configure their device environment.

zbconfig simply reads and writes values to an encrypted JSON file (/boot/zb_config.enc) that bootware uses to apply updates. The values that can be configured are listed below:

one_root_fsBooleanTrue will facilitate A only filesystems, while false enables A/B filesystems.
resize_aBooleanIf one_root_fs is true, this parameter is checked for resizing A only filesystems.
true - full disk
false - half disk
update_modeStringThis parameter is only checked for A/B filesystems. Set the policy for the updates:
update_endpointStringThe endpoint where new images are pulled from.
Example https URL:
Example USB stick: /dev/sda1
endpoint_typeStringThe type of endpoint for the update_endpoint param. Value must be all uppercase.
update_nameStringThe name of the .zi image that will be used for the update. If the name of the new update is base_ota.zi, this parameter needs to be named “base_ota