Panama learns what a server is: from a root login to running containers
A machine's role is now the interview's first question and the one answer Panama records. Servers get the same shell minus the screen: core packages, nvm, Bun, Claude Code and Codex (desktops get Codex too), linger, rootless ports from 80, firewalld, the nginx-bridge network, and a nightly image updater that replaced watchtower for cause. server/containers/ carries junior's 23 compose services -- secrets moved to per-machine .env files that never enter this public repo, every transformed compose proven to render byte-identical to what is live. 'panama server' enables, disables and relinks them; nothing here restarts a running service. 'boot --server' walks a fresh VPS from its root login to a normal install. Five new contracts pin the secrets rule, the catalog's shape, panama-server's behavior, the role plumbing, and the dotfile classification. Claude-Session: https://claude.ai/code/session_01NU5JGiN3JfzqrLQB6wmJ1E
This commit is contained in:
@@ -202,7 +202,9 @@ done
|
||||
# the GNOME excision was caught by nothing until the array entry was removed too,
|
||||
# which was luck rather than a test.
|
||||
|
||||
mapfile -t linked_dirs < <(sed -n '/^dirs=(/,/)/p' "$repo_dir/setup/scripts/link-dotfiles" \
|
||||
# The array is assembled per role from universal_dirs and desktop_dirs, so
|
||||
# those are what get read -- the assembly line itself carries no names.
|
||||
mapfile -t linked_dirs < <(sed -n '/^universal_dirs=(/,/^handled_dirs=(.*)$/p' "$repo_dir/setup/scripts/link-dotfiles" \
|
||||
| grep -oE '"[^"]+"' | tr -d '"')
|
||||
|
||||
(( ${#linked_dirs[@]} > 0 )) \
|
||||
|
||||
Reference in New Issue
Block a user