Replace the shell-only user workflow with `banger` and `bangerd`: Cobra commands, XDG/SQLite-backed state, managed VM and image lifecycle, and a Bubble Tea TUI for browsing and operating VMs.\n\nKeep Firecracker orchestration behind the daemon so VM specs become persistent objects, and add repo entrypoints for building, installing, and documenting the new flow while still delegating rootfs customization to the existing shell tooling.\n\nHarden the control plane around real usage by reclaiming Firecracker API sockets for the user, restarting stale daemons after rebuilds, and returning the correct `vm.create` payload so the CLI and TUI creation flow work reliably.\n\nValidation: `go test ./...`, `make build`, and a host-side smoke test with `./banger vm create --name codex-smoke`.
37 lines
1.4 KiB
Modula-2
37 lines
1.4 KiB
Modula-2
module banger
|
|
|
|
go 1.25.0
|
|
|
|
require (
|
|
github.com/charmbracelet/bubbles v0.14.0
|
|
github.com/charmbracelet/bubbletea v0.21.1-0.20220623121936-ca32c4c62873
|
|
github.com/charmbracelet/lipgloss v0.5.1-0.20220407020210-a86f21a0ae43
|
|
github.com/mattn/go-isatty v0.0.20
|
|
github.com/pelletier/go-toml v1.9.5
|
|
github.com/spf13/cobra v1.8.1
|
|
modernc.org/sqlite v1.38.2
|
|
)
|
|
|
|
require (
|
|
github.com/atotto/clipboard v0.1.4 // indirect
|
|
github.com/containerd/console v1.0.3 // indirect
|
|
github.com/dustin/go-humanize v1.0.1 // indirect
|
|
github.com/google/uuid v1.6.0 // indirect
|
|
github.com/inconshreveable/mousetrap v1.1.0 // indirect
|
|
github.com/lucasb-eyer/go-colorful v1.2.0 // indirect
|
|
github.com/mattn/go-runewidth v0.0.13 // indirect
|
|
github.com/muesli/ansi v0.0.0-20211018074035-2e021307bc4b // indirect
|
|
github.com/muesli/cancelreader v0.2.1 // indirect
|
|
github.com/muesli/reflow v0.3.0 // indirect
|
|
github.com/muesli/termenv v0.11.1-0.20220212125758-44cd13922739 // indirect
|
|
github.com/ncruces/go-strftime v0.1.9 // indirect
|
|
github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec // indirect
|
|
github.com/rivo/uniseg v0.2.0 // indirect
|
|
github.com/spf13/pflag v1.0.5 // indirect
|
|
golang.org/x/exp v0.0.0-20250620022241-b7579e27df2b // indirect
|
|
golang.org/x/sys v0.34.0 // indirect
|
|
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211 // indirect
|
|
modernc.org/libc v1.66.3 // indirect
|
|
modernc.org/mathutil v1.7.1 // indirect
|
|
modernc.org/memory v1.11.0 // indirect
|
|
)
|