f93c8c5e4f
CI / rust client (hh) (macos-latest) (push) Waiting to run
CI / rust client (hh) (ubuntu-latest) (push) Waiting to run
CI / rust coverage (push) Waiting to run
CI / python server (3.10) (push) Waiting to run
CI / python server (3.11) (push) Waiting to run
CI / python server (3.12) (push) Waiting to run
CI / headless e2e smoke (push) Waiting to run
CI / dependency audit (push) Waiting to run
CI / secret scanning (push) Waiting to run
Add an installable-VM catalog that ships pointers only (no multi-GB images in the repo). When a VM is chosen it is BUILT LOCALLY on the caller's own machine — nothing is relayed to the room. - scripts/vbox-library.json: 7-entry manifest (Windows 11, macOS Sonoma, Kali, Parrot, Ubuntu 24.04, Fedora 41, Debian 12) with download pointers, ostype, cpu/mem/disk, and build kind. - scripts/vbox-library.sh: --list / --info / --plan / --install. Build kinds: iso (download/--iso + createvm + boot installer; EFI+TPM for Win11), cloudimg (delegate to vbox-new.sh, unattended), ova (import), manual (pointer-only, e.g. macOS per Apple licensing). Detect-first: --plan changes nothing, install refuses to clobber and rolls back half-built VMs, direct URLs fall back to the page + --iso <path>. - sbx.rs: vbox_library()/library_vm()/vbox_library_install() loaders + running_vms() for live-state markers. - app.rs: /sbx vmlib (catalog ✓installed/↓available), /sbx vmlib <id> (pointer/notes), /sbx vmlib <id> install [--iso path] (local build); /sbx vms now flags running VMs (▶). Registered in SBX_SUBCOMMANDS + usage. - ui.rs: help entry for the VM library. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
112 lines
4.6 KiB
JSON
112 lines
4.6 KiB
JSON
{
|
|
"_comment": "hack-house VirtualBox VM library. Pointers ONLY — no images are bundled in the repo (they are multi-GB). When a VM is chosen, it is built locally on the caller's own machine by scripts/vbox-library.sh. 'kind' decides how: iso = download installer ISO + create VM + boot the installer; cloudimg = delegate to vbox-new.sh (cloud-init, fully unattended); ova = download + VBoxManage import; manual = pointer-only (licence/availability prevents auto-build). Direct 'url' values are best-effort and version-pinned: when one 404s the script falls back to the 'page' and lets you supply a local file with --iso. Update versions here over time.",
|
|
"version": 1,
|
|
"vms": [
|
|
{
|
|
"id": "windows-11",
|
|
"name": "Windows 11",
|
|
"os": "Windows 11 x64",
|
|
"size": "~25 GB installed",
|
|
"kind": "iso",
|
|
"ostype": "Windows11_64",
|
|
"url": "",
|
|
"page": "https://www.microsoft.com/software-download/windows11",
|
|
"cpus": 4,
|
|
"mem_mb": 8192,
|
|
"disk_gb": 64,
|
|
"efi": true,
|
|
"tpm": "2.0",
|
|
"notes": "Microsoft serves the ISO behind a session-gated page, so there is no stable direct link. Download it from the page, then build locally with: /sbx vmlib windows-11 install --iso <path-to-Win11.iso>. The VM is created with EFI firmware + a TPM 2.0 device + Secure Boot so Setup accepts it."
|
|
},
|
|
{
|
|
"id": "macos-sonoma",
|
|
"name": "macOS Sonoma",
|
|
"os": "macOS 14 (Sonoma)",
|
|
"size": "~40 GB installed",
|
|
"kind": "manual",
|
|
"ostype": "MacOS_64",
|
|
"url": "",
|
|
"page": "https://github.com/kholia/OSX-KVM",
|
|
"cpus": 4,
|
|
"mem_mb": 8192,
|
|
"disk_gb": 80,
|
|
"notes": "Apple's licence permits macOS only on Apple-branded hardware, and the installer is not redistributable, so this cannot be auto-built. Follow the OSX-KVM project (or Docker-OSX / sosumi) on the page to assemble an image yourself, then import it with /sbx vbox <name>."
|
|
},
|
|
{
|
|
"id": "kali-linux",
|
|
"name": "Kali Linux",
|
|
"os": "Debian-based · pentest",
|
|
"size": "~4 GB",
|
|
"kind": "iso",
|
|
"ostype": "Debian_64",
|
|
"version": "2024.4",
|
|
"url": "https://cdimage.kali.org/kali-2024.4/kali-linux-2024.4-installer-amd64.iso",
|
|
"page": "https://www.kali.org/get-kali/#kali-installer-images",
|
|
"cpus": 2,
|
|
"mem_mb": 4096,
|
|
"disk_gb": 30,
|
|
"notes": "The flagship offensive-security distro. Default live creds kali/kali; the installer ISO sets your own during setup."
|
|
},
|
|
{
|
|
"id": "parrot-security",
|
|
"name": "Parrot Security OS",
|
|
"os": "Debian-based · pentest",
|
|
"size": "~5 GB",
|
|
"kind": "iso",
|
|
"ostype": "Debian_64",
|
|
"version": "6.2",
|
|
"url": "https://deb.parrot.sh/parrot/iso/6.2/Parrot-security-6.2_amd64.iso",
|
|
"page": "https://parrotsec.org/download/",
|
|
"cpus": 2,
|
|
"mem_mb": 4096,
|
|
"disk_gb": 30,
|
|
"notes": "Privacy/pentest distro, a lighter-weight alternative to Kali."
|
|
},
|
|
{
|
|
"id": "ubuntu-2404",
|
|
"name": "Ubuntu 24.04 LTS",
|
|
"os": "Ubuntu Server x64",
|
|
"size": "~2 GB base",
|
|
"kind": "cloudimg",
|
|
"ostype": "Ubuntu_64",
|
|
"version": "24.04",
|
|
"url": "https://cloud-images.ubuntu.com/releases/24.04/release/",
|
|
"page": "https://ubuntu.com/download/server",
|
|
"cpus": 2,
|
|
"mem_mb": 2048,
|
|
"disk_gb": 15,
|
|
"notes": "Fully unattended build via vbox-new.sh: a cloud-init seed installs the hack-house dev toolchain and creates a sudo login user on first boot. The only entry that comes up ready-to-use with no manual installer."
|
|
},
|
|
{
|
|
"id": "fedora-workstation",
|
|
"name": "Fedora Workstation",
|
|
"os": "Fedora · RPM",
|
|
"size": "~3 GB",
|
|
"kind": "iso",
|
|
"ostype": "Fedora_64",
|
|
"version": "41",
|
|
"url": "https://download.fedoraproject.org/pub/fedora/linux/releases/41/Workstation/x86_64/iso/Fedora-Workstation-Live-x86_64-41-1.4.iso",
|
|
"page": "https://fedoraproject.org/workstation/download",
|
|
"cpus": 2,
|
|
"mem_mb": 4096,
|
|
"disk_gb": 30,
|
|
"notes": "Cutting-edge GNOME workstation; live ISO, install to disk from the desktop."
|
|
},
|
|
{
|
|
"id": "debian-12",
|
|
"name": "Debian 12 (Bookworm)",
|
|
"os": "Debian · stable",
|
|
"size": "~1 GB (netinst)",
|
|
"kind": "iso",
|
|
"ostype": "Debian_64",
|
|
"version": "12",
|
|
"url": "https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-12.8.0-amd64-netinst.iso",
|
|
"page": "https://www.debian.org/distrib/",
|
|
"cpus": 2,
|
|
"mem_mb": 2048,
|
|
"disk_gb": 20,
|
|
"notes": "Rock-stable base server/desktop. Small netinst ISO pulls packages during install."
|
|
}
|
|
]
|
|
}
|