fix/join-hive-requires-feature-colibri #288

Merged
clawdie merged 2 commits from fix/join-hive-requires-feature-colibri into main 2026-07-22 17:32:45 +02:00
Owner
No description provided.
Join Hive only works on a colibri-tier image (it starts colibri_daemon
and registers the box as an agent), but its icon/launcher were staged
unconditionally in configure_live_operator_session() — unlike the
daemon/agent staging blocks right next to them, which already check
FEATURE_COLIBRI. On a minimal-pi image (FEATURE_COLIBRI=NO, the
default per build.cfg), the icon was present but guaranteed to fail:
no colibri_daemon rc.d script, binary, or colibri user exist there.

Root-caused live on a booted 0.13.0-dev minimal-pi image (22.jul.26):
clicking Join Hive surfaced raw, confusing errors ("colibri_daemon
does not exist in /etc/rc.d", "Failed to launch child:
/usr/local/bin/colibri-tui: No such file or directory") instead of
anything actionable.

Two changes:
- build.sh: only stage the Join Hive script + both desktop entries
  when FEATURE_COLIBRI=YES.
- clawdie-join-hive.sh: fail fast with an explanatory message if
  colibri_daemon isn't actually installed, so images built before
  this fix (or any other partial-staging edge case) get a clear error
  instead of raw rc.d/exec failures.
fix(build): provision colibri user/dirs regardless of FEATURE_COLIBRI
All checks were successful
format-check / prettier (pull_request) Successful in 35s
6d7f4270c9
install_colibri_service() gated the colibri user/group and its
data/run/log directories behind FEATURE_COLIBRI, same as the actual
binary/rc.d staging. That's backwards for the live-rebuild lane
(docs/LIVE-COLIBRI-REBUILD.md): every live-operator image ships
rust/cargo/git regardless of tier and is a valid target for installing
Colibri from source after boot — but a minimal-pi image had no colibri
user to chown into, so the documented install steps failed with
"illegal group name" (root-caused live on a booted image, 22.jul.26).

Split identity/directory provisioning into provision_colibri_identity(),
called unconditionally before the FEATURE_COLIBRI check. Binary/rc.d
staging stays gated as before.

Also fill the same gap in LIVE-COLIBRI-REBUILD.md itself, which jumped
straight to `chown -R colibri:colibri` without ever creating the user —
add the one-time pw groupadd/useradd step for images predating this fix.
clawdie deleted branch fix/join-hive-requires-feature-colibri 2026-07-22 17:32:56 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
clawdie/clawdie-iso!288
No description provided.