If the keyboard does nothing inside a ZVM installer, troubleshoot the browser console before rebuilding the virtual machine. Click inside the VM display so it captures input, switch to a clean Chrome or Edge session, disable non-English input methods temporarily, and test again.
A solved community case failed across Windows 10, Windows 11, Linux Mint, and Ubuntu installers, but the same ZVM worked as soon as the user switched to Chrome. That makes browser/noVNC input handling the strongest first diagnosis when multiple unrelated guest operating systems show the same keyboard failure.
How to Tell Whether the Problem Is the VM or the Browser
If one ISO fails, the guest image may be the problem. If four unrelated installers all reach their first screen but none accept Enter or Tab, the shared layer is the web console, browser, or local input method.
Before changing virtual hardware, check whether the mouse moves inside the VM and whether the console reacts to special actions. If the mouse also cannot interact, the console may not have focus at all.
Step 1: Click Inside the VM Console
Web-based VNC consoles usually capture input only after the page has focus and the VM canvas has been clicked. Move the pointer into the guest display, click once, then try simple keys such as arrows, Enter, Tab, or Esc.
If the first click suddenly makes the keyboard work, nothing inside the guest needs to be changed.
Step 2: Test Chrome or Edge
Browser differences can affect keyboard events, focus, clipboard behavior, and special key combinations. In the verified source case, switching to Chrome solved the problem immediately.
The noVNC project is useful technical background for understanding why input behavior can vary by browser.
Step 3: Disable Input Methods That Intercept Keys
Temporarily switch the host computer to a basic English keyboard layout and turn off IME/composition modes while testing. Some input methods transform keystrokes before the browser sends them to the remote console.
This does not mean non-English keyboards are unsupported. It is a diagnostic step that removes one interception layer.
Step 4: Test a Clean Browser Session
Open a private/incognito window, log in to ZimaOS, and launch the VM again. Extensions that remap keys, provide password management, intercept shortcuts, or alter pages can interfere with a web console.
If the VM works in a private session but not the normal profile, re-enable extensions one by one instead of changing ZVM settings.
Step 5: Rule Out the Physical Keyboard
On a laptop, test the built-in keyboard and a simple USB keyboard. Also try the VM from another computer if one is available. This quickly separates a local device or OS-specific input issue from a ZimaOS-side issue.
When Should You Inspect VM Hardware Settings?
Only move to the VM definition after the keyboard fails across multiple clean browsers and computers. At that point, check whether the guest has normal virtual input devices and whether the issue affects a newly created test VM as well as the original one.
The ZVM setup guide provides the broader VM configuration context.
What Not to Do First
- Do not repeatedly download new ISOs when several unrelated guest installers fail identically.
- Do not edit libvirt XML before ruling out browser focus.
- Do not reinstall ZimaOS just because one browser cannot send keys.
- Do not assume a mouse working means keyboard capture is also correct.
FAQ
Why does ZVM mouse input work but keyboard input does not?
The browser may be passing pointer events while keyboard focus remains on another page element, extension, or input method. Click the console and test a clean browser.
Which browser should I try first?
Chrome is a strong diagnostic choice because it solved the verified community case. Edge is another Chromium-based option worth testing.
Do I need to change my VM ISO?
Not if the same keyboard failure happens across multiple operating-system installers. That pattern points to the console/input path before the ISO.
Should I use SSH to fix this?
Usually not. Start with browser focus and compatibility. SSH or VM-definition changes only make sense after the web-input layer has been ruled out.
