Audio qube revisions

Go back to topic: Audio qube

  1. v42 anchor; v42 full version
  2. v41 anchor; v41 full version
  3. v40 anchor; v40 full version
  4. v39 anchor; v39 full version
  5. v38 anchor; v38 full version
  6. v37 anchor; v37 full version
  7. v36 anchor; v36 full version
  8. v35 anchor; v35 full version
  9. v34 anchor; v34 full version
  10. v33 anchor; v33 full version
  11. v32 anchor; v32 full version
  12. v31 anchor; v31 full version
  13. v30 anchor; v30 full version
  14. v29 anchor; v29 full version
  15. v28 anchor; v28 full version
  16. v27 anchor; v27 full version
  17. v26 anchor; v26 full version
  18. v25 anchor; v25 full version
  19. v24 anchor; v24 full version
  20. v23 anchor; v23 full version
  21. v22 anchor; v22 full version
  22. v21 anchor; v21 full version
  23. v20 anchor; v20 full version
  24. v19 anchor; v19 full version
  25. v18 anchor; v18 full version
  26. v17 anchor; v17 full version
  27. v16 anchor; v16 full version
  28. v15 anchor; v15 full version
  29. v14 anchor; v14 full version
  30. v13 anchor; v13 full version
  31. v12 anchor; v12 full version
  32. v11 anchor; v11 full version
  33. v10 anchor; v10 full version
  34. v9 anchor; v9 full version
  35. v8 anchor; v8 full version
  36. v7 anchor; v7 full version
  37. v6 anchor; v6 full version
  38. v5 anchor; v5 full version
  39. v4 anchor; v4 full version
  40. v3 anchor; v3 full version
  41. downloaded local copies of images v2 anchor; v2 full version

Revision #42

Edited on
2025-02-01
Edited by user
neowutran
### Patch the source code | HELP WANTED In the audio template, you need to patch the source code. Modify the file "/usr/lib/python3.12/site-packages/qubesadmin/tools/qvm_start_daemon.py" Change the line ``` events = qubesadmin.events.EventsDispatcher(args.app) ``` to ``` events = qubesadmin.events.EventsDispatcher(args.app, enable_cache=False) ``` **HELP WANTED** This should not be necessary, either there is an issue in this guide, or there is a kind of issue in how the caching mecanisme work for Qubes OS. If you have technical skills and time, this point need to be fixed properly.
admin.Events * sys-audio @adminvm allow target=dom0 admin.Events +domain-stopped sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.Events +domain-shutdown sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.Events +domain-start sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.Events * sys-audio @adminvm allow target=dom0 # TODO: check if more / less are required admin.Events +property-set_audiovm sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.Events +property-pre-set_audiovm sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.Events +property-pre-reset_audiovm sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.Events +property-reset_audiovm sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.Events +property-reset_xid sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.Events +domain-stopped sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.Events +domain-shutdown sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.Events +domain-start sys-audio @tag:audiovm-sys-audio allow target=dom0
admin.vm.CurrentState * sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.List * sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.CurrentState * sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.List * sys-audio @tag:audiovm-sys-audio allow target=dom0
admin.vm.property.Get +audiovm sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.property.Get +xid sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.feature.CheckWithTemplate +audio sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.feature.CheckWithTemplate +audio-model sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.feature.CheckWithTemplate +supported-service.pipewire sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.feature.CheckWithTemplate +audio-low-latency sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.property.Get +stubdom_xid sys-audio @tag:audiovm-sys-audio allow target=dom0 # Once the caching issue mentionned in the "Patch the source code | HELP WANTED", the line below could be reactivated #admin.vm.property.GetAll * sys-audio @tag:audiovm-sys-audio deny notify=no admin.vm.property.Get +audiovm sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.property.Get +xid sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.feature.CheckWithTemplate +audio sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.feature.CheckWithTemplate +audio-model sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.feature.CheckWithTemplate +supported-service.pipewire sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.feature.CheckWithTemplate +audio-low-latency sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.property.Get +stubdom_xid sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.property.GetAll * sys-audio @tag:audiovm-sys-audio deny notify=no
- Autoreconnect to audio vm when audio vm is restarted - Audio quality in some cases (at least jack seems to be problematic)

Revision #41

Edited on
2025-02-01
Edited by user
neowutran

Revision #40

Edited on
2024-11-14
Edited by user
neowutran
#### Optional step: Noise suppression In "audio-app" you can configure noise suppression: https://github.com/werman/noise-suppression-for-voice#pipewire Audio recording is **much** better, at the cost of a bit of cpu consumption

Revision #39

Edited on
2024-11-09
Edited by user
neowutran
### Configuring policy ### Patch the source code | HELP WANTED In the audio template, you need to patch the source code. Modify the file "/usr/lib/python3.12/site-packages/qubesadmin/tools/qvm_start_daemon.py" Change the line ``` events = qubesadmin.events.EventsDispatcher(args.app) ``` to ``` events = qubesadmin.events.EventsDispatcher(args.app, enable_cache=False) ``` **HELP WANTED** This should not be necessary, either there is an issue in this guide, or there is a kind of issue in how the caching mecanisme work for Qubes OS. If you have technical skills and time, this point need to be fixed properly. ### Configuring policy
admin.vm.property.GetAll * sys-audio @tag:audiovm-sys-audio deny notify=no # Once the caching issue mentionned in the "Patch the source code | HELP WANTED", the line below could be reactivated #admin.vm.property.GetAll * sys-audio @tag:audiovm-sys-audio deny notify=no

Revision #38

Edited on
2024-11-08
Edited by user
neowutran
admin.vm.CurrentState * sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.List * sys-audio @tag:audiovm-sys-audio allow target=dom0
[/details] [/details] ## Known issues. HELP WANTED - Keyboard layout switching issue - Autoreconnect to audio vm when audio vm is restarted

Revision #37

Edited on
2024-09-15
Edited by user
neowutran
``` **TODO**: this list of privileges may not be minimal + some new events may be missed (property-set / property-reset ) ```

Revision #36

Edited on
2024-09-15
Edited by user
neowutran
#### Bluetooth service Additionally, if you intend to use bluetooth services, you probably want to also enable "blueman" service

Revision #35

Edited on
2024-07-15
Edited by user
neowutran
# Salt A community effort to have this configuration done by a salt script is available here: [qusal/salt/sys-audio at main · ben-grande/qusal · GitHub](https://github.com/ben-grande/qusal/tree/main/salt/sys-audio)

Revision #34

Edited on
2024-07-14
Edited by user
neowutran
Optional package, software to configure sound effect, like noise cancellation: ``` sudo dnf install easyeffects ```

Revision #33

Edited on
2024-06-30
Edited by user
XMachina
sudo dnf install -y blueman cairo-dock ``` sudo dnf install -y blueman ``` [details="Note for `debian-12-minimal` templates"] Debian Minimal requires the `libspa-0.2-bluetooth` for bluetooth to work with Pipewire. [/details]

Revision #32

Edited on
2024-06-02
Edited by user
neowutran
#### Important note: Most user will never encounter such a case, but for people that have a LOT of qubes running, it is important to properly configure the audiovm property, it need to be empty for qubes that will never use audio There is a maximum of ~19 qubes that can be running simultaneously without using audio (but with a audiovm configured). After that number, when a new qube is created, sys-audio will stop working. (xenstore quota issue, https://github.com/QubesOS/qubes-issues/issues/8966 )
## Special cases of non-linux HVM. ## Special cases of non-linux HVM. Support have been added by the QubesOS team, so no additional configuration is needed. I haven't yet personnally tested it. If it doesn't work, the old way of doing that is below [details="Old way of doing that"]
Redo the same things but for the file "stubdom-linux-full-rootfs" Redo the same things but for the file "stubdom-linux-full-rootfs" [/details]
the vchan modules. [details="Obsolete"] ### Audio is scratchy [Need someone to comment if this is still usefull] It may be a power-saving issue with the sound card. In the "audio-template", create the file ‘/etc/modprobe.d/50-snd.conf’ with the following content: ``` options snd_hda_intel power_save=0 ``` [/details] [details="Important note"] A lot of thoses modifications can be overwritten by update, like xen.xml, stubdom-linux-rootfs, and qvm_start_daemon. You could need to re-patch them after updates [/details] the vchan modules.

Revision #31

Edited on
2024-06-02
Edited by user
neowutran

Revision #30

Edited on
2024-06-02
Edited by user
neowutran

Revision #29

Edited on
2024-06-02
Edited by user
neowutran
following content: [details="Recommended way - patching source code required"] following content:
admin.Events * sys-audio @adminvm allow target=dom0 admin.Events * sys-audio @adminvm allow target=dom0
admin.vm.CurrentState * sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.List * sys-audio @adminvm allow target=dom0 admin.vm.List * sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.List * sys-audio @adminvm allow target=dom0
admin.vm.feature.CheckWithTemplate +supported-service.pipewire sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.feature.CheckWithTemplate +audio-low-latency sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.property.Get +stubdom_xid sys-audio @tag:audiovm-sys-audio allow target=dom0 ``` You additionally need to apply this patch: https://github.com/QubesOS/qubes-core-admin-client/compare/main...neowutran:qubes-core-admin-client:fix-8109-and-further3 To manually patch the file, modify the file "/usr/lib/python3.12/site-packages/qubesadmin/tools/qvm_start_daemon.py" in your "audio-template" qube [/details] [details="NON RECOMMENDED WAY - Giving much more permission than theorically needed (I am not personnaly using it, so it is less maintained than the other way)"] admin.vm.feature.CheckWithTemplate +supported-service.pipewire sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.feature.CheckWithTemplate +audio-low-latency sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.property.Get +stubdom_xid sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.property.GetAll * sys-audio @tag:audiovm-sys-audio deny notify=no
admin.Events * sys-audio sys-audio allow target=dom0 admin.Events * sys-audio @adminvm allow target=dom0 admin.Events * sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.CurrentState * sys-audio sys-audio allow target=dom0 admin.vm.CurrentState * sys-audio @adminvm allow target=dom0 admin.vm.CurrentState * sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.List * sys-audio sys-audio allow target=dom0 admin.vm.List * sys-audio @adminvm allow target=dom0 admin.vm.List * sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.property.Get +audiovm sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.property.Get +xid sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.property.Get +stubdom_xid sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.feature.CheckWithTemplate +audio sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.feature.CheckWithTemplate +audio-model sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.feature.CheckWithTemplate +supported-service.pipewire sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.feature.CheckWithTemplate +audio-low-latency sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.property.GetAll * sys-audio sys-audio allow target=dom0 admin.vm.property.GetAll * sys-audio @tag:audiovm-sys-audio allow target=dom0 ``` [/details] **TODO**: this list of privileges may not be minimal + some new events may be missed (property-set / property-reset )

Revision #28

Edited on
2024-06-02
Edited by user
neowutran

Revision #27

Edited on
2024-05-06
Edited by user
neowutran
You additionally need to apply this patch: https://github.com/QubesOS/qubes-core-admin-client/compare/main...neowutran:qubes-core-admin-client:fix-8109-and-further2 You additionally need to apply this patch: https://github.com/QubesOS/qubes-core-admin-client/compare/main...neowutran:qubes-core-admin-client:fix-8109-and-further3

Revision #26

Edited on
2024-05-06
Edited by user
neowutran
You additionally need to apply this patch: https://github.com/QubesOS/qubes-core-admin-client/compare/main...neowutran:qubes-core-admin-client:fix-8109-and-further You additionally need to apply this patch: https://github.com/QubesOS/qubes-core-admin-client/compare/main...neowutran:qubes-core-admin-client:fix-8109-and-further2
the vchan modules. the vchan modules. [details="Obsolete"]
``` ``` [/details]

Revision #25

Edited on
2024-03-13
Edited by user
neowutran
For example "sys-net" "sys-firewall" and others qubes that will never need audio. In dom0: For example "sys-net" "sys-firewall" and others qubes that will never need audio. #### Case 1: Most of your qubes need to have audio By default, configure all qubes to use 'sys-audio' as the audiovm
qubes-prefs default_audiovm sys-audio ``` Then remove the audiovm from the qubes that doesn't need audio ```
#### Case 2: Most of your qubes doesn't need to have audio By default, configure all qubes to use nothing as the audiovm ``` qubes-prefs default_audiovm '' ``` Then add the audiovm for the qubes that need audio ``` qvm-prefs sys-net audiovm 'sys-audio' ... ```

Revision #24

Edited on
2024-03-12
Edited by user
neowutran
![tata|618x339](upload://kmUgfbaj1QctQYFsNKp66yoSuZd.png)

Revision #23

Edited on
2024-03-04
Edited by user
neowutran
### Disabling audio for qubes that doesn't need it You should disable the audiovm for qubes that doesn't need it. For example "sys-net" "sys-firewall" and others qubes that will never need audio. In dom0: ``` qvm-prefs sys-net audiovm '' ... ```

Revision #22

Edited on
2024-03-04
Edited by user
neowutran
To manually patch the file, modify the file "/usr/lib/python3.11/site-packages/qubesadmin/tools/qvm_start_daemon.py" in your "audio-template" qube To manually patch the file, modify the file "/usr/lib/python3.12/site-packages/qubesadmin/tools/qvm_start_daemon.py" in your "audio-template" qube
## Known issues [help could be usefull] If you are using pipewire you could have bad microphone recording with some CPU (https://github.com/QubesOS/qubes-issues/issues/8770#issuecomment-1871055606) Very rarely (happened to me once every few months), the audiovm daemon seems to freeze, restarting the process or qube fix the issue. Couldn't reproduce the issue at will to debug it

Revision #21

Edited on
2024-02-19
Edited by user
neowutran
Note: You could permanently assign a usb device to a qube using the dom0 command `qvm-devices`. Example : ` qvm-devices usb attach --persistent sys-audio sys-usb-1:2-6` Note: You could permanently assign a usb device to a qube using the dom0 command `qvm-device`. Example : ` qvm-device usb attach --persistent sys-audio sys-usb-1:2-6`

Revision #20

Edited on
2024-01-15
Edited by user
neowutran
### Microphone note: You have to attach the device named "dom0:mic" to the qube you want to be able to record your microphone input

Revision #19

Edited on
2024-01-08
Edited by user
neowutran
If you want to have a systray to control the sound, you can install this package ``` sudo dnf install -y pasystray ```

Revision #18

Edited on
2024-01-04
Edited by user
neowutran
### Audio is scratchy ### Audio is scratchy [Need someone to comment if this is still usefull]
## Known issues [help could be usefull] If you are using pipewire you could have bad microphone recording with some CPU (https://github.com/QubesOS/qubes-issues/issues/8770#issuecomment-1871055606) Very rarely (happened to me once every few months), the audiovm daemon seems to freeze, restarting the process or qube fix the issue. Couldn't reproduce the issue at will to debug it

Revision #17

Edited on
2023-12-28
Edited by user
neowutran
{% if vm.virt_mode == 'hvm' %} <emulator
In the rest of the file, you will find two occurences of lines starting by "cmdline=", append the following content to this line (before the closing double-quote) In the rest of the file, you will find two occurrences of lines starting by "cmdline=", append the following content to these two lines (before the closing double-quote)

Revision #16

Edited on
2023-12-26
Edited by user
neowutran
[details="Non recommended way - Giving much more permission than theorically needed"] [details="NON RECOMMENDED WAY - Giving much more permission than theorically needed (I am not personnaly using it, so it is less maintained than the other way)"]
admin.vm.property.Get +stubdom_xid sys-audio @tag:audiovm-sys-audio allow target=dom0

Revision #15

Edited on
2023-12-03
Edited by user
neowutran
You additionally need to apply this patch: https://github.com/QubesOS/qubes-core-admin-client/compare/main...neowutran:qubes-core-admin-client:fix-8109-and-further You additionally need to apply this patch: https://github.com/QubesOS/qubes-core-admin-client/compare/main...neowutran:qubes-core-admin-client:fix-8109-and-further To manually patch the file, modify the file "/usr/lib/python3.11/site-packages/qubesadmin/tools/qvm_start_daemon.py" in your "audio-template" qube

Revision #14

Edited on
2023-11-09
Edited by user
gonzalo-bulnes
devices](/doc/device-handling-security/#usb-security) and Bluetooth devices. devices](https://qubes-os.org/doc/device-handling-security/#usb-security) and Bluetooth devices.
devices](/doc/device-handling-security/#security-warning-on-usb-input-devices) devices before proceeding. devices](https://qubes-os.org//doc/device-handling-security/#security-warning-on-usb-input-devices) devices before proceeding.

Revision #13

Edited on
2023-10-19
Edited by user
neowutran
1. Create a template named ‘audio-template’ – You can clone ‘fedora-XX’ template for that – 1. Create a template named ‘audio-template’ – You can clone ‘fedora-XX’ template (or a fedora minimal template) for that –
admin.vm.feature.CheckWithTemplate +supported-service.pipewire sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.feature.CheckWithTemplate +audio-low-latency sys-audio @tag:audiovm-sys-audio allow target=dom0
admin.vm.feature.CheckWithTemplate +supported-service.pipewire sys-audio @tag:audiovm-sys-audio allow target=dom0 admin.vm.feature.CheckWithTemplate +audio-low-latency sys-audio @tag:audiovm-sys-audio allow target=dom0

Revision #12

Edited on
2023-09-26
Edited by user
neowutran
In any qube, to start pulseaudio with the ‘vchan – *’ modules, run: For pulseaudio setup: In any qube, to start pulseaudio with the ‘vchan – *’ modules, run:
For pipewire setup: In any qube, to start pipewire with the ‘vchan – *’ modules, run: ``` systemctl --user restart pipewire ```
This issue is that the vchan modules of the pulseaudio daemon running in the already started qubes are not using the correct audiovm xid (ID of the xen vm). In standard setup, restarting the pulseaudio daemon is enough. Kill the pulseaudio process and run "start-pulseaudio-with-vchan". This issue is that the vchan modules of the pulseaudio/pipewire daemon running in the already started qubes are not using the correct audiovm xid (ID of the xen vm). **If you are using pulseaudio**: In standard setup, restarting the pulseaudio daemon is enough. Kill the pulseaudio process and run "start-pulseaudio-with-vchan". **If you are using pipewire (pipewire will be the default soon if not already the case)**: ```systemctl --user restart pipewire```

Revision #11

Edited on
2023-09-26
Edited by user
neowutran
sudo dnf install -y alsa-plugins-pulseaudio alsa-utils pulseaudio-qubes pulseaudio-utils pipewire-utils qubes-audio-daemon pavucontrol xfce4-pulseaudio-plugin webrtc-audio-processing qubes-core-admin-client qubes-usb-proxy sudo dnf install -y pipewire-qubes qubes-audio-daemon pavucontrol qubes-core-admin-client qubes-usb-proxy alsa-utils
Note: You could need to first remove the package ‘pipewire-pulseaudio’ before installing the other packages.
sudo dnf install -y blueman pulseaudio-module-bluetooth cairo-dock sudo dnf install -y blueman cairo-dock

Revision #10

Edited on
2023-09-02
Edited by user
neowutran
**WIP**

Revision #9

Edited on
2023-09-01
Edited by user
neowutran
[details="Important note"] A lot of thoses modifications can be overwritten by update, like xen.xml, stubdom-linux-rootfs, and qvm_start_daemon. You could need to re-patch them after updates [/details]

Revision #8

Edited on
2023-08-31
Edited by user
neowutran
In the screenshot below, I passed my Bluetooth device and my audio jack device to In the screenshot below, I passed my audio jack device to
![audiovm-devices.png](https://raw.githubusercontent.com/neowutran/qubes-attachment/audiovm/doc/audiovm-devices.png) ![audiovm-devices|612x435](upload://7r8FmCwJ7z56Aw3qyZyFWvc1NYC.png) Note: You could permanently assign a usb device to a qube using the dom0 command `qvm-devices`. Example : ` qvm-devices usb attach --persistent sys-audio sys-usb-1:2-6`

Revision #7

Edited on
2023-08-31
Edited by user
neowutran
You additionally need to apply this patch: https://github.com/QubesOS/qubes-core-admin-client/pull/237/files You additionally need to apply this patch: https://github.com/QubesOS/qubes-core-admin-client/compare/main...neowutran:qubes-core-admin-client:fix-8109-and-further

Revision #6

Edited on
2023-08-31
Edited by user
neowutran
[![audiovm-manager.png](upload://ctz0EPJA64pSKC3bnoVZoZAAPyM.png)](/attachment/doc/audiovm-manager.png) [![audiovm-sysaudio-1.png](upload://50C82oKVwbOjLIveqXFkoVMgfg6.png)](/attachment/doc/audiovm-sysaudio-1.png) ![audiovm-manager.png](upload://ctz0EPJA64pSKC3bnoVZoZAAPyM.png) ![audiovm-sysaudio-1.png](upload://50C82oKVwbOjLIveqXFkoVMgfg6.png)
[![audiovm-sysaudio-2.png](upload://4CU1b3BPPVIVla74LNVgIlKQbcI.png)](/attachment/doc/audiovm-sysaudio-2.png) [![audiovm-sysaudio-3.png](upload://a6jhtwu1NoE4TkJ0loFEsV5vJMc.png)](/attachment/doc/audiovm-sysaudio-3.png) ![audiovm-sysaudio-2.png](upload://4CU1b3BPPVIVla74LNVgIlKQbcI.png) ![audiovm-sysaudio-3.png](upload://a6jhtwu1NoE4TkJ0loFEsV5vJMc.png)
[![audiovm-devices.png](https://raw.githubusercontent.com/neowutran/qubes-attachment/audiovm/doc/audiovm-devices.png)](/attachment/doc/audiovm-devices.png) ![audiovm-devices.png](https://raw.githubusercontent.com/neowutran/qubes-attachment/audiovm/doc/audiovm-devices.png)
[![audiovm-pavu-1.png](upload://wHMYOpe6fx2eF2cvigT7vLTL0dr.png)](/attachment/doc/audiovm-pavu-1.png) [![audiovm-pavu-2.png](upload://zFNND1DU9JsyVXoHUFtagaFqcLA.png)](/attachment/doc/audiovm-pavu-2.png) ![audiovm-pavu-1.png](upload://wHMYOpe6fx2eF2cvigT7vLTL0dr.png) ![audiovm-pavu-2.png](upload://zFNND1DU9JsyVXoHUFtagaFqcLA.png)
[![audiovm-sysaudio-4.png](upload://jYsNzTFcJOrr11Nc0pS2C5n3WoN.png)](/attachment/doc/audiovm-sysaudio-4.png) ![audiovm-sysaudio-4.png](upload://jYsNzTFcJOrr11Nc0pS2C5n3WoN.png)
[![audiovm-pavu-3.png](upload://xKzZ8RSva9s8oC3DKIOmhw7qaHX.png)](/attachment/doc/audiovm-pavu-3.png) ![audiovm-pavu-3.png](upload://xKzZ8RSva9s8oC3DKIOmhw7qaHX.png)

Revision #5

Edited on
2023-08-31
Edited by user
neowutran
[details="Result of `qvm-prefs audio-app`"] ``` audiovm D sys-audio autostart D False backup_timestamp - 1689304025 debug D False default_dispvm D fedora-dvm default_user D user dns D gateway D gateway6 D guivm D dom0 icon D templatevm-gray include_in_backups D True installed_by_rpm D False ip D ip6 D kernel D 6.4.8-1.fc37 kernelopts D swiotlb=2048 keyboard_layout D fr+oss+ klass D AppVM label - gray mac D 00:16:3e:5e:6c:00 management_dispvm D default-mgmt-dvm maxmem D 4000 memory D 400 name - audio-app netvm - None provides_network - False qid - 50 qrexec_timeout D 60 shutdown_timeout D 60 start_time D stubdom_mem U stubdom_xid D -1 template - audio-template template_for_dispvms - True updateable D False uuid - 62ad295e-cfdc-4cbd-a5a7-09284dff87d9 vcpus D 2 virt_mode D pvh visible_gateway D visible_gateway6 D visible_ip D visible_ip6 D visible_netmask D xid D -1 ``` [/details] [details="Result of `qvm-prefs audio-template`"] ``` audiovm D sys-audio autostart D False backup_timestamp - 1689304024 debug D False default_dispvm D fedora-dvm default_user D user dns D gateway D gateway6 D guivm D dom0 icon D templatevm-black include_in_backups D True installed_by_rpm D False ip D ip6 D kernel D 6.4.8-1.fc37 kernelopts D swiotlb=2048 keyboard_layout D fr+oss+ klass D TemplateVM label - black mac D 00:16:3e:5e:6c:00 management_dispvm D default-mgmt-dvm maxmem D 4000 memory D 400 name - audio-template netvm D None provides_network D False qid - 49 qrexec_timeout D 60 shutdown_timeout D 60 start_time D stubdom_mem U stubdom_xid D -1 updateable D True uuid - 43dfeca9-41b6-4b85-b462-2c566cc5da1f vcpus D 2 virt_mode D pvh visible_gateway D visible_gateway6 D visible_ip D visible_ip6 D visible_netmask D xid D -1 ``` [/details] [details="Result of `qvm-prefs sys-audio`"] ``` audiovm D sys-audio auto_cleanup D False autostart - True backup_timestamp - 1689304025 debug D False default_dispvm D audio-app default_user D user dispid - 2229 dns D gateway D gateway6 D guivm D dom0 icon D dispvm-gray include_in_backups D True installed_by_rpm D False ip D ip6 D kernel D 6.4.8-1.fc37 kernelopts D keyboard_layout D fr+oss+ klass D DispVM label - gray mac D 00:16:3e:5e:6c:00 management_dispvm D default-mgmt-dvm maxmem - 0 memory D 400 name - sys-audio netvm - None provides_network - False qid - 51 qrexec_timeout D 60 shutdown_timeout D 60 start_time D 1693413928.06 stubdom_mem U stubdom_xid D 2 template - audio-app updateable D False uuid - 9422a856-7b81-464d-9fd5-987ef2cf99f7 vcpus D 2 virt_mode - hvm visible_gateway D visible_gateway6 D visible_ip D visible_ip6 D visible_netmask D xid D 1 ``` [/details]

Revision #4

Edited on
2023-08-31
Edited by user
neowutran
When you configure a Bluetooth device, the configuration files are stored as root in `/var/lib/bluetooth`. If you want the device to be permanently known by the audiovm (even after reboot), you need to either copy this folder to the template qube, or have any other means of deploying back the configuration that have been saved to `/var/lib/bluetooth`

Revision #3

Edited on
2023-08-31
Edited by user
neowutran
```
```

Revision #2

Edited on
2023-08-31
Edited by user
system
Edit reason
downloaded local copies of images
[![audiovm-manager.png](https://raw.githubusercontent.com/neowutran/qubes-attachment/audiovm/doc/audiovm-manager.png)](/attachment/doc/audiovm-manager.png) [![audiovm-sysaudio-1.png](https://raw.githubusercontent.com/neowutran/qubes-attachment/audiovm/doc/audiovm-sysaudio-1.png)](/attachment/doc/audiovm-sysaudio-1.png) [![audiovm-manager.png](upload://ctz0EPJA64pSKC3bnoVZoZAAPyM.png)](/attachment/doc/audiovm-manager.png) [![audiovm-sysaudio-1.png](upload://50C82oKVwbOjLIveqXFkoVMgfg6.png)](/attachment/doc/audiovm-sysaudio-1.png)
[![audiovm-sysaudio-2.png](https://raw.githubusercontent.com/neowutran/qubes-attachment/audiovm/doc/audiovm-sysaudio-2.png)](/attachment/doc/audiovm-sysaudio-2.png) [![audiovm-sysaudio-3.png](https://raw.githubusercontent.com/neowutran/qubes-attachment/audiovm/doc/audiovm-sysaudio-3.png)](/attachment/doc/audiovm-sysaudio-3.png) [![audiovm-sysaudio-2.png](upload://4CU1b3BPPVIVla74LNVgIlKQbcI.png)](/attachment/doc/audiovm-sysaudio-2.png) [![audiovm-sysaudio-3.png](upload://a6jhtwu1NoE4TkJ0loFEsV5vJMc.png)](/attachment/doc/audiovm-sysaudio-3.png)
[![audiovm-pavu-1.png](https://raw.githubusercontent.com/neowutran/qubes-attachment/audiovm/doc/audiovm-pavu-1.png)](/attachment/doc/audiovm-pavu-1.png) [![audiovm-pavu-2.png](https://raw.githubusercontent.com/neowutran/qubes-attachment/audiovm/doc/audiovm-pavu-2.png)](/attachment/doc/audiovm-pavu-2.png) [![audiovm-pavu-1.png](upload://wHMYOpe6fx2eF2cvigT7vLTL0dr.png)](/attachment/doc/audiovm-pavu-1.png) [![audiovm-pavu-2.png](upload://zFNND1DU9JsyVXoHUFtagaFqcLA.png)](/attachment/doc/audiovm-pavu-2.png)
[![audiovm-sysaudio-4.png](https://raw.githubusercontent.com/neowutran/qubes-attachment/audiovm/doc/audiovm-sysaudio-4.png)](/attachment/doc/audiovm-sysaudio-4.png) [![audiovm-sysaudio-4.png](upload://jYsNzTFcJOrr11Nc0pS2C5n3WoN.png)](/attachment/doc/audiovm-sysaudio-4.png)
[![audiovm-pavu-3.png](https://raw.githubusercontent.com/neowutran/qubes-attachment/audiovm/doc/audiovm-pavu-3.png)](/attachment/doc/audiovm-pavu-3.png) [![audiovm-pavu-3.png](upload://xKzZ8RSva9s8oC3DKIOmhw7qaHX.png)](/attachment/doc/audiovm-pavu-3.png)