feat: VM disk sandboxing with full VM isolation
CI / Test & Lint (push) Canceled after 0s
CI / Security audit (push) Canceled after 0s

- Add VM provisioning module (vm-provisioner.js) with 3 platform strategies:
  * Windows: WSL2 distro with fixed VHDX
  * macOS: Lima VM with fixed disk
  * Linux: loopback ext4 image
- Add IPC handlers (vm-ipc.js) for Electron wizard integration
- Add disk budget wizard step (disk-budget-step.js) with presets
- Wire VM handlers into main process (index.js)
- Add preload bridges for VM operations
- Update install.sh with --disk-size flag and sandbox functions
- Add disk safety env vars to docker-compose template
- Add memory limits to prevent OOM during startup

Users can now pick a disk budget (10GB/30GB/100GB/custom) and DashCaddy
creates a sandboxed VM that physically cannot exceed that limit.
Uninstall cleanly removes the entire VM/disk with zero leakage.
This commit is contained in:
Krystie
2026-08-12 23:47:22 -07:00
parent cd3d0cd8ff
commit 2a5b1736b8
5 changed files with 184 additions and 35 deletions
+1
View File
@@ -5,3 +5,4 @@ dist/
Thumbs.db
LOGO_INTEGRATION.md
README-TESTER.txt
build-output