{"record":{"id":"a9c981c5dbc4a3e5","repo":"lima-vm/lima","slug":"unknown-or-unsupported-vm-type-s-a9c981","errorCode":null,"errorMessage":"unknown or unsupported VM type: %s","messagePattern":"unknown or unsupported VM type: (.+?)","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"pkg/driverutil/vm.go","lineNumber":53,"sourceCode":"\t}\n\n\t// Also accept external drivers discovered in the registry.\n\t_, _, exists := registry.Get(*y.VMType)\n\tif !exists {\n\t\treturn fmt.Errorf(\"vmType %#q is not a registered driver\", *y.VMType)\n\t}\n\n\treturn nil\n}\n\nfunc InspectStatus(ctx context.Context, inst *limatype.Instance) (string, error) {\n\tif inst == nil || inst.Config == nil || inst.Config.VMType == nil {\n\t\treturn \"\", errors.New(\"instance or its configuration is not properly initialized\")\n\t}\n\n\textDriver, intDriver, exists := registry.Get(*inst.Config.VMType)\n\tif !exists {\n\t\treturn \"\", fmt.Errorf(\"unknown or unsupported VM type: %s\", *inst.Config.VMType)\n\t}\n\n\tif extDriver != nil {\n\t\tstatus, err := handleInspectStatusAction(ctx, inst, extDriver.Path)\n\t\tif err != nil {\n\t\t\textDriver.Logger.Errorf(\"Failed to inspect status for instance %#q: %v\", inst.Name, err)\n\t\t\treturn \"\", err\n\t\t}\n\t\textDriver.Logger.Debugf(\"Instance %#q inspected successfully with status: %s\", inst.Name, inst.Status)\n\t\treturn status, nil\n\t}\n\n\treturn intDriver.InspectStatus(ctx, inst), nil\n}\n\nfunc handleInspectStatusAction(ctx context.Context, inst *limatype.Instance, extDriverPath string) (string, error) {\n\tcmd := exec.CommandContext(ctx, extDriverPath, \"--inspect-status\")\n","sourceCodeStart":35,"sourceCodeEnd":71,"githubUrl":"https://github.com/lima-vm/lima/blob/dd909d0973cd84fa35f9e1693181b4585ea616c1/pkg/driverutil/vm.go#L35-L71","documentation":"InspectStatus found a non-nil VMType but the driver registry has no entry for it — neither an external driver binary nor a built-in implementation. This is the runtime counterpart of the ResolveVMType validation error: the config resolved earlier (or was written directly) with a type no driver serves in this build.","triggerScenarios":"Calling InspectStatus on an instance whose stored lima.yaml contains a vmType absent from limatype.VMTypes and registry.Get — e.g. instance created by a Lima build with an external driver that is no longer installed, or a typo introduced via limactl edit.","commonSituations":"External driver uninstalled/upgraded after instance creation; switching between Lima builds (one with a plugin, one without); editing lima.yaml by hand to an unsupported value; downgrading Lima.","solutions":["Reinstall the external driver that used to provide this vmType, then retry `limactl inspect-status`/list","Edit ~/.lima/<instance>/lima.yaml and change vmType to a driver available in the current build (only if the disk format is compatible)","Use the same Lima version that created the instance","Delete and recreate the instance with a supported vmType"],"exampleFix":"// before: vmType: \"vz\" on a Linux build without VZ\n// after\nvmType: \"qemu\"","handlingStrategy":"validation","validationCode":"if inst != nil && inst.Config != nil && inst.Config.VMType != nil {\n    if _, _, ok := registry.Get(*inst.Config.VMType); !ok {\n        return fmt.Errorf(\"driver %q not installed; install it or recreate the instance\", *inst.Config.VMType)\n    }\n}","typeGuard":"func hasDriverFor(inst *limatype.Instance) bool {\n    if inst == nil || inst.Config == nil || inst.Config.VMType == nil {\n        return false\n    }\n    _, _, ok := registry.Get(*inst.Config.VMType)\n    return ok\n}","tryCatchPattern":"status, err := driverutil.InspectStatus(ctx, inst)\nif err != nil {\n    if strings.Contains(err.Error(), \"unknown or unsupported VM type\") {\n        // treat as \"uninspectable\" and prompt to reinstall driver\n    }\n    return err\n}","preventionTips":["Use the same Lima build/plugins that created an instance","Don't remove external drivers while instances using them exist","Pin tool versions in environments where plugins are managed separately"],"tags":["driver-registry","vmtype","instance-state"],"backgroundTag":"unknown-vm-type","analyzedSha":"dd909d0973cd84fa35f9e1693181b4585ea616c1","analyzedAt":"2026-09-01T14:24:59.842Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-08T10:18:20.063Z"}