Firefox - CTRL or SHIFT or ALT not working in Guest VM

gb00s

Well-Known Member
Aug 4, 2017
34
2
48
45
Proxmox 6.4 / Firefox 88.0.1

My journey with Firefox issues continues. Now I'm unable to use CTRL- or SHIFT- or ALT -keys in the console of a guest in Firefox. In Chromium it works just fine. Each of these do not work and it's not a matter of the issues with CTRL-ALT-SHIFT issues in the past.

Does anyone experience the same issue?
 
Does the problem occur with only one VM or all VMs?

Are you use SPICE or noVNC?

Please post a full output of the pveversion -v also the VM config qm config <VMID>
 
@Moayad

Thank you for the quick reply. Unfortunately, the issue appears in all virtual machines after upgrade to 6.4-4. I also tested and upgraded to 6.4-5 and have the same problem. I'm using noVNC exclusively. Maybe the issue startet together with Firefox 88.

Here I'm posting the output of pvmversion -v of one of the hosts. They are all the same.

Code:
root@pve1:~# pveversion -v
proxmox-ve: 6.4-1 (running kernel: 5.4.106-1-pve)
pve-manager: 6.4-5 (running version: 6.4-5/6c7bf5de)
pve-kernel-5.4: 6.4-1
pve-kernel-helper: 6.4-1
pve-kernel-5.4.106-1-pve: 5.4.106-1
pve-kernel-5.4.103-1-pve: 5.4.103-1
pve-kernel-5.4.73-1-pve: 5.4.73-1
ceph-fuse: 12.2.11+dfsg1-2.1+b1
corosync: 3.1.2-pve1
criu: 3.11-3
glusterfs-client: 5.5-3
ifupdown: residual config
ifupdown2: 3.0.0-1+pve3
ksm-control-daemon: 1.3-1
libjs-extjs: 6.0.1-10
libknet1: 1.20-pve1
libproxmox-acme-perl: 1.0.8
libproxmox-backup-qemu0: 1.0.3-1
libpve-access-control: 6.4-1
libpve-apiclient-perl: 3.1-3
libpve-common-perl: 6.4-2
libpve-guest-common-perl: 3.1-5
libpve-http-server-perl: 3.2-1
libpve-storage-perl: 6.4-1
libqb0: 1.0.5-1
libspice-server1: 0.14.2-4~pve6+1
lvm2: 2.03.02-pve4
lxc-pve: 4.0.6-2
lxcfs: 4.0.6-pve1
novnc-pve: 1.1.0-1
proxmox-backup-client: 1.1.5-1
proxmox-mini-journalreader: 1.1-1
proxmox-widget-toolkit: 2.5-3
pve-cluster: 6.4-1
pve-container: 3.3-5
pve-docs: 6.4-1
pve-edk2-firmware: 2.20200531-1
pve-firewall: 4.1-3
pve-firmware: 3.2-2
pve-ha-manager: 3.1-1
pve-i18n: 2.3-1
pve-qemu-kvm: 5.2.0-6
pve-xtermjs: 4.7.0-3
qemu-server: 6.4-2
smartmontools: 7.2-pve2
spiceterm: 3.1-1
vncterm: 1.6-2
zfsutils-linux: 2.0.4-pve1
root@pve1:~#

Additionally I provide two config outputs of 2 vm's.

Code:
oot@prox2:~# qm config 1001
agent: 1
balloon: 4096
boot: order=scsi0;net0
cores: 4
cpu: host,flags=+aes
memory: 16382
name: port0
net0: virtio=6E:BB:87:24:53:14,bridge=vmbr0,firewall=1
numa: 1
onboot: 1
ostype: l26
protection: 1
scsi0: VM:vm-1001-disk-0,cache=writeback,discard=on,iothread=1,size=50G,ssd=1
scsihw: virtio-scsi-single
smbios1: uuid=dd38b8e8-f12d-4acb-ac6b-83d6f44b30ac
sockets: 2
startup: order=1,up=10
vmgenid: 95aaa35f-b315-417a-9789-f4842b5b9ecd
root@prox2:~#

and

Code:
root@pve1:~# qm config 800
agent: 1
bios: seabios
boot: order=scsi0
cores: 8
cpu: host
memory: 32768
name: nh-fun2build0
net0: e1000=16:05:16:2E:62:14,bridge=vmbr0,firewall=1
numa: 1
ostype: l26
scsi0: VM:vm-800-disk-0,cache=writeback,iothread=1,size=100G,ssd=1
scsihw: virtio-scsi-single
smbios1: uuid=055e14b3-3214-412a-8c9a-91a165f63f68
sockets: 2
vga: vmware,memory=512
vmgenid: 383f9366-dd61-4a53-9b9a-9cfbcff51e7c
root@pve1:~#
 
Thank you for the VM configs and the version.

I just tested it on my workstation the keys on Firefox 88.0.1 (OS Ubuntu) the SHIFT, ALT and CTRL are works.

Have you tried to open noVNC on a different browser?
 
@Moayad

Yes, as mentioned in the opening thread, Chromium works. Tested other browsers as well. But they are all Chromium-based. It's just Firefox. Just wondering what the issue is and where to look for settings to be changed.

Any advice?
 
@Moayad

Yes, as mentioned in the opening thread, Chromium works. Tested other browsers as well. But they are all Chromium-based. It's just Firefox. Just wondering what the issue is and where to look for settings to be changed.

Any advice?
maybe a plugin/extension on firefox messing with the keys?
 
  • Like
Reactions: Moayad
Unfortunately, even with all addon's disabled I have the same issue. Also, there is no difference between FF on Windows and/or Linux. I almost ruled out everything that could point to a problem on the host itself. But other browsers don't show the issue and even different plaforms make no difference with FF.
 
Old thread, but just to add my findings in 2024:

I had the same issue with Shift, Alt, Ctrl not being recognized in Librewolf (based on FF), version 129 and earlier too.
While it works fine on FF 130 and Chromium-based browsers.
I found a hint on Reddit, pointing to fingerprinting protection.

I disabled "Enable ResistFingerprinting" in Settings > Librewolf > Fingerprinting. After that, modifier keys work fine via noVNC.

I assume the issue in FF was also caused by fingerprinting protection and got fixed since then.
 
Old thread, but just to add my findings in 2024:

I had the same issue with Shift, Alt, Ctrl not being recognized in Librewolf (based on FF), version 129 and earlier too.
While it works fine on FF 130 and Chromium-based browsers.
I found a hint on Reddit, pointing to fingerprinting protection.

I disabled "Enable ResistFingerprinting" in Settings > Librewolf > Fingerprinting. After that, modifier keys work fine via noVNC.

I assume the issue in FF was also caused by fingerprinting protection and got fixed since then.
You saved me a ton of grief. Thank you for pointing out that FireFox was not working correctly with PVE VMs. Chromium worked perfectly.

Cheers!
 
  • Like
Reactions: Apple ][
Were you able to use FireFox when you disabled the tracking protection?
Yep. My odd problem was with the "Shift" keys (left and right) not being recognized in the QEMU (firefox browser) window.

On a side note, I'm new to proxmox and I don't know much about QEMU and or Spice(?) tools, so I don't even know if I could have told proxmox how to use a different browser and keep firefox as my desktop default.
 
  • Like
Reactions: rottenronnie
Well, that didn't seem to work for long. Since I have absolutely no configuration management or version control in my home lab pile-o-electrons, I don't know a root cause. ('cause I'm a tinkerer) Shift isn't working again, so I'll use chromium and break something else.
 
Running latest PVE, with or without ResistFingerprinting, on Librewolf and Chromium, noVNC still refuses to work :(.

This was working until at least a few Weeks ago (I rarely use the Console if I can reach the VM by SSH).
 
Running latest PVE, with or without ResistFingerprinting, on Librewolf and Chromium, noVNC still refuses to work :(.

This was working until at least a few Weeks ago (I rarely use the Console if I can reach the VM by SSH).
interesting, cannot see this here (using latest chromium), do you maybe have some extensions installed? does it work in an incognito window?

if not, could you open the javascript console and see if there is anything logged?
 
interesting, cannot see this here (using latest chromium), do you maybe have some extensions installed? does it work in an incognito window?

if not, could you open the javascript console and see if there is anything logged?
I tried Disabling U-Block Origin on Librewolf OR ResistFingerprinting (NOT both at the same Time).

With everything Enabled I get lots of Errors in the Librewolf Console, but not sure what's causing them:
Code:
TypeError: this is undefined
 bootstrap-legacy-autofill-overlay.js:6247:9
    checkPageContainsShadowDom moz-extension://d3a4d96c-5d94-481f-9980-6d7b050a9723/content/bootstrap-legacy-autofill-overlay.js:6247
    requestIdleCallbackPolyfill moz-extension://d3a4d96c-5d94-481f-9980-6d7b050a9723/content/bootstrap-legacy-autofill-overlay.js:869

In Chromium without any Extension Installed (well, except Chromium PDF Viewer I guess):
Code:
Scrollbar test exception: TypeError: Cannot read properties of null (reading 'appendChild')

Versions:
- Ubuntu Noble 24.04 AMD64
- Librewolf 136.0.4-1
- Chromium 134.0.6998.117 (Official Build) built on Debian GNU/Linux 12 (bookworm) (64-bit)
- PVE: pve-manager/8.3.5/dac3aa88bac3f300 (running kernel: 6.8.12-3-pve)

EDIT 1: I'm pretty sure I updated lastly a few Days ago.
Now I see these Packages can be updated:

Code:
root@HOST:~# apt list --upgradable
Listing... Done
novnc-pve/stable 1.6.0-2 all [upgradable from: 1.5.0-1]
pve-edk2-firmware-legacy/stable 4.2025.02-2 all [upgradable from: 4.2023.08-4]
pve-edk2-firmware-ovmf/stable 4.2025.02-2 all [upgradable from: 4.2023.08-4]
pve-firmware/stable 3.15-2 all [upgradable from: 3.14-3]
pve-qemu-kvm/stable 9.2.0-3 amd64 [upgradable from: 9.2.0-2]

EDIT 2: I'm currently upgrading and will try again soon

EDIT 3: Nope, still not working :(. I also restarted pveproxy before attempting again just to make sure.

I personally don't recall ever having this Issue occur to me while using Proxmox VE after all these Years using it.

Neither CTRL LEFT, CTRL RIGHT nor ENTER work anymore.

1743501093591.png



They Keyboard Layout is also very weirdly now. Previously it was using I think the HOST Keyboard Layout inside the VM Console, but now I'd say that it's completely messed up.

I tried running dpkg-reconfigure keyboard-configuration inside one of my Debian VMs but it doesn't matter what I select there, it keeps using US (?) Keyboard for whatever Reason ...

In another Thread, diggles suggested something about Clicking the CTRL (?) Key in the "Arrow" menu at https://forum.proxmox.com/threads/console-not-catching-control-characters.87862/#post-419440

I NEVER had to use that before, but even if I enable it, nothing happens :(.
 
Last edited:
mhmm i can't reproduce here, with the same chromium version, everything works here as expected.

did something else change in your setup recently (especially in the client ?)

Scrollbar test exception: TypeError: Cannot read properties of null (reading 'appendChild')
that should be fixed with the latest novnc update if I remember correctly, but should not impact functionality.

without anything to go on (logs, some way to reproduce it, etc.) it'll be hard to see what's wrong
 
mhmm i can't reproduce here, with the same chromium version, everything works here as expected.

did something else change in your setup recently (especially in the client ?)


that should be fixed with the latest novnc update if I remember correctly, but should not impact functionality.

without anything to go on (logs, some way to reproduce it, etc.) it'll be hard to see what's wrong
I tried on my Laptop.

One VM didn't work no matter what I did. Rebooting seems to have fixed that Issue on the Laptop. All other VMs seems to work on the Laptop.

On Librewolf on the Desktop everything is still broken. After Reboot, on Chromium on the Desktop (which I never use) it works OK now.

I'm starting to think that just like Libreoffice and NVIDIA Drivers on Ubuntu I might need to use a Virtual Machine on virt-manager / libvirt to also run my Web Browser.

Soon I think I'll be compartmentalizing like Qubes does if this keeps going on :rolleyes:.

EDIT 1: Cleared Cache & Cooking on Librewolf. After disabling "Resist Fingerprinting" it also started working. But it's really a PITA that I have to remove ALL Protection just to use a Console :( .
 
Last edited: