Exposes a messagebus API to check for and initiate OS-level updates. This plugin
expects an update-initramfs
system service to be installed to apply InitramFS
updates and for the SquashFS update path to be applied upon restarting.
The remote URLs and local paths for InitramFS and SquashFS files used by this plugin
may be set in configuration. The messagebus API supports branch
in data which is
used to fill string templates in configured URLs; this is generally used to select a
git branch.
PHAL:
admin:
neon-phal-plugin-device-updater:
enabled: True
initramfs_url: "https://github.com/NeonGeckoCom/neon_debos/raw/{}/overlays/02-rpi4/boot/firmware/initramfs"
initramfs_path: /opt/neon/firmware/initramfs
initramfs_update_path: /opt/neon/initramfs
squashfs_path: /opt/neon/update.squashfs
default_track: dev
The following Messagebus listeners are exposed by this plugin. The track
data
parameter is optional and will default to the configured default_track
if not
specified.
Check for an available InitramFS update and emit a response with data:
update_available
and track
.
Message("neon.check_update_initramfs", {'track': 'dev'})
Install an available InitramFS update and emit a response with data:
updated
and optionally error
.
Message("neon.update_initramfs", {'track': 'dev'})
Check for an available SquashFS update and emit a response with data:
update_available
and track
.
Message("neon.check_update_squashfs", {'track': 'dev'})
Check for an available InitramFS update and emit a response with data:
new_version
or error
.
Message("neon.update_squashfs", {'track': 'dev'})
Get metadata for currently installed build:
Message("neon.device_updater.get_build_info")
Query the plugin if an update is currently downloading:
Message("neon.device_updater.get_download_status")