Unify the clawdie npm-global PATH snippet into one shared file (image + jail) #122
Labels
No labels
first-proof blocker
hardening
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: clawdie/colibri#122
Loading…
Add table
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Why
The "npm-global on PATH" setup lives in several divergent places, with no single source:
build.shwrites/etc/profile.d/clawdie.shas an inline heredoc (prefix/opt/clawdie/npm-global).packaging/freebsd/agent-jail-bootstrap.shwrites/etc/profile.d/clawdie-npm.sh(prefix/home/clawdie/.npm-global) — added in #121 after #120's~/.profileband-aid.Because the canonical snippet is trapped inside
build.sh, the agent jail (a separate environment) couldn't reuse it and re-grew the "pi/bw not found" bug (#120 → #121). Two prefixes, several copies.Proposal
One shared, committed snippet installed by every environment:
packaging/freebsd/(same "colibri owns runtime packaging, clawdie-iso consumes" pattern as the FreeBSD port);build.shinstalls that file instead of its inline heredoc;NPM_PREFIX);/opt/clawdie/npm-globalvs~/.npm-global) or have the snippet handle both.Acceptance
check-agent-jail-pkgs.sh.Context: #120, #121 — same duplication class as the retired FreeBSD port duplicate.
Status after review:
packaging/freebsd/clawdie-npm-profile.sh; agent-jail-bootstrap now installs it. ✅build.shnow installs the same shared file instead of its inline heredoc. ✅ (This is why I reopened then re-scoped: the original close was premature, but #92 had in fact landed the iso migration.)resolve_colibri_paths/COLIBRI_REPO(it was hardcoded to${SCRIPT_DIR}/../colibri) and preflight its existence (a missing file silently produced a half-written snippet).Acceptance ("exactly one source file defines the snippet, installed by image + jail") is met. Closing once #93 merges.