So I run sudo qubesctl state.sls qvm.usb-keyboard in dom0. It seemingly succeeded and created a usb qube. Once I started it though, it locked me out of my keyboard and mouse. After reboot too, so I found this solution:
I added qubes.skip_autostart to GRUB parameters, and it still didn’t work (endless loading screen on decryption menu).
So, I tried also removing usbcore.authorized_default=0 and now keyboard works.
Okay, I’m no longer locked out.
But still can’t get usb-qube to work with the keyboard.
In dom0 I checked /etc/qubes-rpc/policy dir and there was a file named qubes.USB containing just $anyvm $anyvm deny. Also, there are no /etc/qubes-rpc/policy/qubes.InputKeyboard or /etc/qubes-rpc/policy/qubes.InputMouse files at all!
But that deny rule seemed like a problem, so I changed it to:
sys-usb dom0 allow
$anyvm $anyvm deny
still no luck, keyboard is unavailable as soon as usb qube starts.
So I tried creating the /etc/qubes-rpc/policy/qubes.InputKeyboard and /etc/qubes-rpc/policy/qubes.InputMouse files manually with just sys-usb dom0 allow but this didn’t help either.
Is the docs wrong or outdated, or am I doing something wrong?
My goal is to allow USB keyboard and mouse in dom0 while having other devices like webcam be able to be passed to any other qube.
The doc still point to the old policy directory. The new policy file is /etc/qubes/policy.d/50-config-input.policy
You can change the values from Qubes Global Config under “USB Devices”.
Make sure it’s allowed there.
OMG yes! I have it installed on an external SSD connected via USB…
so that explains my problem, now I only need to fix it while still using external SSD
You can use sys-usb only if you have multiple USB controllers available so you can dedicate one of them to dom0 to connect your external USB drive to it.
Then you can hide all other USB controllers from dom0 and use them for sys-usb: