github raspberrypi/rpi-sb-provisioner v2.3.0
2.3.0

4 hours ago

This release adds IDP image provisioning, firmware-crypto-backed device identity
workflows, OpenSSL 3 PKCS#11 provider support, and a broad set of provisioning
reliability fixes accumulated through the 2.3.0 preview series.

Highlights

  • Add IDP (Image Description Provisioning) support for rpi-image-gen artefacts,
    including archive upload, JSON/image validation, metadata-driven WebUI
    configuration, secure-boot slot signing, customisation hooks, and service-log
    viewing.
  • Add Raspberry Pi firmware crypto integration for cryptroot unlock and
    Raspberry Pi Connect device identity registration. The device firmware crypto
    key is provisioned and OTP-locked as part of the provisioning flow.
  • Move HSM support from the deprecated OpenSSL ENGINE path to OpenSSL 3
    pkcs11-provider/OSSL_STORE, with provider readiness checks and HSM key
    discovery in the WebUI.
  • Encrypt stored HSM PINs and uploaded PEM signing keys at rest using a
    device-bound AES-256-GCM wrapper derived from the Raspberry Pi firmware crypto
    device key.
  • Add A/B-capable 2712 EEPROM signing support and refresh bundled fastboot
    gadgets for EEPROM measurements, fixed A/B bootfiles, and monolithic sparse
    whole-disk image writing.
  • Remove the manual Raspberry Pi 5 re-plug step by using set_reboot_order=0x3
    in the recovery configuration so devices return to RPIBOOT automatically.

Reliability Fixes

  • Fix the Trixie/systemd 257 cryptroot initramfs switch-root regression reported
    in #299.
  • Use kernel crypto module aliases and copy modules for all applicable kernels,
    improving compatibility across kernel updates.
  • Preserve real provisioner exit statuses from cleanup traps so failures are
    visible to systemd, the WebUI, and manufacturing records.
  • Invalidate cached signed artefacts when firmware or signing keys change, and
    wipe cached workdir artefacts on package upgrade.
  • Replace the WebUI state database inotify watcher with authenticated local
    notification endpoints to avoid steady-state CPU spin while keeping device
    status updates responsive.

Upgrade Notes

  • The final supported release is 2.3.0; the 2.3.0~pre* builds are no longer
    supported.
  • Runtime dependencies now require recent rpi-eeprom and rpiboot packages,
    plus pkcs11-provider, p11-kit support, gnutls-bin, and
    librpifwcrypto.
  • Package upgrades clear /srv/rpi-sb-provisioner/workdir cached artefacts.
    Persistent data such as images, manufacturing databases, state databases, logs
    and configuration are preserved.
  • Stored PINs and uploaded PEM signing keys are migrated to device-wrapped
    storage when saved on a system with firmware crypto support. Wrapped material
    is intentionally bound to that provisioner device.

What's Changed

New Contributors

Full Changelog: v2.2.0...v2.3.0

Don't miss a new rpi-sb-provisioner release

NewReleases is sending notifications on new releases.