Skip to content

release 0.5.0#10

Merged
mobileoverlord merged 9 commits intomainfrom
rel/0.5.0
Mar 6, 2026
Merged

release 0.5.0#10
mobileoverlord merged 9 commits intomainfrom
rel/0.5.0

Conversation

@mobileoverlord
Copy link
Copy Markdown
Contributor

@mobileoverlord mobileoverlord commented Mar 6, 2026

Summary

  • Add Varlink IPC interface with avocadoctl serve subcommand
  • Enforce deterministic extension merge ordering via manifest priority (bind-mask prefixes)
  • Fix ext status duplicate rows caused by NN- order prefixes in systemd-reported extension names
  • Rework ext list to use the full extension scanner with layer-stack ordering and MERGED/READY status correlation
  • Add (high priority / top layer) / (low priority / base layer) labels to ext list and ext status tables
  • Update default extension images path from /var/lib/avocado/extensions to /var/lib/avocado/images
  • Update varlink bindings and add varlink API reference docs

Test plan

  • cargo fmt && cargo clippy -- -D warnings && cargo test all pass (163 tests)
  • avocadoctl ext list shows layer-ordered table with correct MERGED/READY status
  • avocadoctl ext status shows single row per extension (no duplicates from order prefixes)
  • avocadoctl serve starts the Varlink IPC server

Add support for deterministic systemd-sysext/confext merge ordering
controlled by the runtime manifest's extension array position.

- Add merge_index field to Extension struct for tracking priority
- Assign inverted indices from manifest (first listed = highest priority)
- HITL overrides inherit the manifest extension's priority slot
- Bind mount staging dirs over extension-release.d to add prefixed
  extension-release files that match the prefixed symlink names
- Clean up bind mounts and staging dirs during unmerge
- Add Order column to ext status display
- Add order field to JSON output
rustfmt is not available in the Yocto build environment, causing the
build script to fail. The committed generated files are already formatted.
- Strip NN- order prefix from systemd-reported extension names so merged
  and available entries unify into a single row in ext status
- Rewrite ext list to use the full extension scanner instead of a plain
  directory read; shows layer stack ordered high-to-low with MERGED/READY
  status correlated against mounted extensions
- Add (high priority / top layer) / (low priority / base layer) labels to
  both ext list and ext status tables so overlay ordering is unambiguous
- Update default extensions path from /var/lib/avocado/extensions to
  /var/lib/avocado/images to match actual install location
- Update integration tests to reflect new ext list contract
@mobileoverlord mobileoverlord merged commit 28592eb into main Mar 6, 2026
2 checks passed
@mobileoverlord mobileoverlord deleted the rel/0.5.0 branch March 6, 2026 20:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant