banger/internal
Thales Maciel ce1be52047
Make installed banger self-contained
Fix the misleading make install path where banger and bangerd still depended on a repo checkout for Firecracker, guest artifacts, image builds, and the SSH key.

Replace repo-root inference with an explicit runtime bundle model: resolve a runtime_dir from env/config/install layout, derive concrete artifact paths from it, and update the daemon, CLI, and image-build flow to use those paths. Keep repo_root only as an explicit compatibility alias instead of auto-detecting it.

Teach customize.sh to run from a read-only bundled runtime tree while writing transient state under XDG/BANGER_STATE_DIR, and make make install copy the runtime assets into PREFIX/lib/banger so installed binaries stay usable outside the repo.

Validate with go test ./..., make build, bash -n customize.sh, and make install DESTDIR=/tmp/banger-install PREFIX=/usr. An out-of-repo installed-binary smoke test was attempted, but this sandbox blocked bangerd from binding its Unix socket (setsockopt: operation not permitted).
2026-03-16 14:26:50 -03:00
..
api Add Go daemon-driven VM control plane 2026-03-16 12:52:54 -03:00
cli Make installed banger self-contained 2026-03-16 14:26:50 -03:00
config Make installed banger self-contained 2026-03-16 14:26:50 -03:00
daemon Make installed banger self-contained 2026-03-16 14:26:50 -03:00
firecracker Use Firecracker SDK in daemon 2026-03-16 13:26:41 -03:00
model Make installed banger self-contained 2026-03-16 14:26:50 -03:00
paths Make installed banger self-contained 2026-03-16 14:26:50 -03:00
rpc Add Go daemon-driven VM control plane 2026-03-16 12:52:54 -03:00
store Add Go daemon-driven VM control plane 2026-03-16 12:52:54 -03:00
system Rollback partial dm snapshot startup 2026-03-16 14:06:17 -03:00