-
Notifications
You must be signed in to change notification settings - Fork 2
Description
Environment:
- macOS 26.2 (Build 25C56)
- Apple Silicon (M-series)
- BoxRun 0.3.0 (rust), both Homebrew and source-built
- BoxLite 0.5.12 (source-built with vendored libkrun/libkrunfw)
- libkrun 1.16.0, libkrunfw 5.1.0
Symptom:
Error: [RUNTIME_ERROR] Failed to start BoxLite VM: engine reported an error:
Timeout waiting for guest ready (30s).
What works:
- Hypervisor.framework is detected and verified
- Shim binary spawns successfully (PID assigned, subprocess starts in ~1ms)
- Shim is correctly signed with com.apple.security.hypervisor entitlement
- All dylibs load correctly (verified via DYLD_PRINT_LIBRARIES=1)
- Image pull and rootfs extraction succeeds (ubuntu:24.04, 256MB ext4)
What fails:
- Guest VM never signals readiness via virtio console
- Shim process hangs silently — no crash, no log output to
~/.boxlite/logs/boxlite-shim.log (file never created) - No crash reports in ~/Library/Logs/DiagnosticReports/
- After 30s the server-side timeout triggers and cleans up
Server log (debug level):
INFO boxlite::vmm::controller::shim: Starting Box subprocess engine=Libkrun
transport=Unix { socket_path: "...box.sock" }
INFO boxlite::jailer::command: Jailer disabled, running shim without sandbox isolation
INFO boxlite::vmm::controller::shim: boxlite-shim subprocess spawned box_id=...
pid=... shim_spawn_duration_ms=1
INFO boxlite::vmm::controller::shim: VM subprocess started successfully
ERROR boxlite::litebox::init::tasks: Task failed: engine reported an error: Timeout
waiting for guest ready (30s)
WARN boxlite::litebox::init::types: Box initialization failed, cleaning up
Reproduction:
boxrun create ubuntu:24.04 --name test --cpu 2 --memory 1024
Suspected cause: Hypervisor.framework behavioral change in macOS 26 Tahoe. The
shim/libkrun starts the microVM but the guest kernel never boots or never establishes
the virtio console channel.