abiosoft/colima · warning
error starting %s: %w
Error message
error starting %s: %w
What it means
A per-process warning emitted while inspecting daemon status after a chain failure: for each daemon process whose Running flag is false (skipping the inotify process, which is handled separately), colima records the failure in ctx (daemon.CtxKey(p.Name) = false) and logs 'error starting <p.Name>'. Typically p.Name is a specific vmnet network (e.g. shared or a custom network), pinpointing which network daemon failed to run.
Source
Thrown at environment/vm/lima/daemon.go:131
}
status, ok := ctx.Value(statusKey).(daemon.Status)
if !ok {
return
}
if !status.Running {
log.Warnln(fmt.Errorf("error starting network: %w", err))
return
}
for _, p := range status.Processes {
// TODO: handle inotify separate from network
if p.Name == inotify.Name {
continue
}
if !p.Running {
ctx = context.WithValue(ctx, daemon.CtxKey(p.Name), false)
log.Warnln(fmt.Errorf("error starting %s: %w", p.Name, err))
}
}
}()
}
}
// check if inotify is running
if conf.MountINotify {
if inotifyEnabled, _ := ctx.Value(ctxKeyInotify).(bool); !inotifyEnabled {
log.Warnln("error occurred enabling inotify daemon")
}
}
// preserve vmnet context
if vmnetEnabled, _ := ctx.Value(ctxKeyVmnet).(bool); vmnetEnabled {
// env var for subprocess to detect vmnet
l.host = l.host.WithEnv(vmnet.SubProcessEnvVar + "=1")
}View on GitHub (pinned to c3a5f9184d)
Solutions
- Identify the failing network name from the message, then check its config: 'colima start --network-address --network name=...,interface=...' options or the networks: section in ~/.colima/_templates/lima/0.yaml / instance config; fix subnet/interface conflicts.
- Disconnect VPNs that conflict with the daemon network's subnet and retry 'colima start'.
- Restart to retry child spawn: 'colima stop -f && colima start'.
- If the named network is optional, remove it from the config to get a clean start, then re-add it correctly.
- Verify per-network status: 'colima network ls' / daemon status commands after start.
Defensive patterns
Strategy: type-guard
Validate before calling
// validate network names/subnets before start to avoid per-process failures
for _, n := range conf.Network.Networks {
if n.Name == "" {
return fmt.Errorf("network name required for custom networks")
}
} Type guard
func failedDaemonProcesses(s daemon.Status) []daemon.Process {
var failed []daemon.Process
for _, p := range s.Processes {
if p.Name == inotify.Name {
continue // handled separately
}
if !p.Running {
failed = append(failed, p)
}
}
return failed
} Try / catch
for _, p := range status.Processes {
if p.Name == inotify.Name || p.Running {
continue
}
ctx = context.WithValue(ctx, daemon.CtxKey(p.Name), false)
log.Warnln(fmt.Errorf("error starting %s: %w", p.Name, err))
} Prevention
- Choose custom network subnets that don't collide with VPN/corporate ranges.
- Remove unused custom networks from config before start.
- Check 'colima network ls' after start to confirm each network's process state.
When it happens
Trigger: 'colima start --network-address' or with custom networks where the overall daemon runs but one child network process is down: one vmnet network's interface failed (name collision, vmnet entitlement for that network, subnet conflict with host VPN), or the child crashed while others started; the loop marks exactly the failed networks so later steps can skip them.
Common situations: Custom named networks in config whose subnets overlap corporate VPN ranges; one of several networks configured but the corresponding vmnet helper config missing; VPN clients grabbing the same 192.168.x range colima's network uses.
Related errors
- error setting up network dependencies: %w
- error starting network: %w
- error checking vmnet process: %w
- error listing networks: %w
- error setting up inotify dependencies: %w
AI-assisted analysis of abiosoft/colima@c3a5f9184d (2026-08-15).
Data as JSON: /api/errors/b277a48fd46d0ad0.
Report an issue: GitHub.