In case anyone else is looking for a more official source for the RPC policy for an audio qube, I found this one in the qubes-mgmt-salt-dom0-virtual-machines
repository. You can switch to the branch for your Qubes OS version if it makes a difference.
But did you test it?
Yes, on my Qubes 4.2 system, I followed most of the guide but with the RPC policy from the repository in place of the one from the guide. In a simple test, I was able to both play and record audio in a VM other than the AudioVM, despite some RPC denial notifications. I experienced some glitches that I havenât investigated, but I donât think they were related to RPC policy. Because my motivation for using an AudioVM was to use Bluetooth headphones, not concern about the attack surface of audio in dom0, I decided to revert to audio in dom0 so I donât have to live with the glitches unless/until I need the AudioVM again.
The two policy files are very similar, as you can see if you diff them (it helps to sort the lines first). AFAICT the only things allowed by the policy in the guide and not in the repository are admin.vm.feature.CheckWithTemplate +audio-low-latency
and +supported-service.pipewire
; those might be relevant to features I didnât test. The policy in the guide also suppresses the denial notifications for admin.vm.property.GetAll
. The policy in the repository provides an alternative for security-conscious users who feel itâs sufficiently clear that most of the guide is harmless but arenât sure about the policy, which was my case.
So, my HVM owns dGPU and its audio device. HVM is sent to TV via HDMI/DP. HVMâs audiovm is set to sys-audio, but naturally no sound there, because sys-audio doesnât own sound device and the only way to get the audio is on TVâs speakers.
Can I get this HVMâs audio via sys-audio at all? I am not sure I can split dGPU to HVM and its audio device to sys-audio and HVM to start successfully.
For the sake of clarity, Iâm replying to myself:
Actually it is possible to split audio device from its dGPU and to assign it to sys-audio and everything works smoothly!
Jesus, and I tortured myself for so long with a shitty TV sound, so thanks @solene for an inspiration!
Now, new idea: does it make sense to create separate sys-audio for each audio device for the goal of compartmentalization?