Fixing up QubesOS issues on a Thinkpad T460s
Recently I installed QubesOS for its awesome model of encapsulating different domains into VMs, all based on common template VMs, handling this with a XEN hypervisor and a Controller VM called
domain0 which includes a Desktop Environment for convenience.
This post is not an intro to the OS, the website has good documentation to read up on it.
What Id like to focus on in this post, is how I fixed a few problems that seems to be happening to some QubesOS users and Thinkpad Users in particular.
Not resuming from Suspend
This was one of the main problems I had. The solution to this was hiding in the mailing list: the TPM.
Being set to Intel PTT TPM 2.0 in the BIOS by default this will not give the desired Intel TXT support.
So I went ahead and changed it to Discrete TPM 1.2 and voila, the laptop wakes up from suspension again.
Be aware that changing this setting will delete all keys on the security chip.
Not shutting down properly
This issue was related to the TPM2.0 as well. After switching to Discrete TPM1.2 everything works as expected.
This one can be as simple as installing
blueman in your template VM!
In my case though, the bluetooth hardware is integrated into the Wifi card.
While you will be able to use bluetooth from your
sys-usb VM with blueman, you wont be able to redirect e.g. audio to that VM easily. So I have Bluetooth enabled, but cant really use it. Being integrated into the Wifi card I also could not pass the device on to the appVM.
The only solution I have found for now is buying a cheap Bluetooth dongle and attaching that into the
appVM where it is needed via
I would advise against installing
dom0 and attaching bluetooth devices there.
While not having a deep knowledge of the stack I found several sources advising against doing that, since the bluetooth stack can be insecure.
Changing to TPM1.2 and buying a cheap Bluetooth dongle off of Aliexpress were all that was needed to have a fully functioning QubesOS installation. Took me a bit of fiddling to get it to such a simple solution, so hopefully I can save you time.
Any other problem you encounter with the model? Hit up the mailing list or let me know in the comments.