--- /usr/lib/python3/dist-packages/middlewared/plugins/vm/supervisor/domain_xml.py 2022-12-13 06:32:23.000000000 -0600 +++ /usr/lib/python3/dist-packages/middlewared/plugins/vm/supervisor/domain_xml.py.patched 2022-12-31 22:29:48.212387984 -0600 @@ -168,14 +168,20 @@ # default if not all headless servers like ubuntu etc require it to boot devices.append(create_element('video')) - if spice_server_available: - # We always add spicevmc channel device when a spice display device is available to allow users - # to install guest agents for improved vm experience - devices.append(create_element( - 'channel', type='spicevmc', attribute_dict={ - 'children': [create_element('target', type='virtio', name='com.redhat.spice.0')] - } - )) + # We always add spicevmc channel device to allow users + # to install guest agents for improved vm experience + devices.append(create_element( + 'channel', type='spicevmc', attribute_dict={ + 'children': [create_element('target', type='virtio', name='com.redhat.spice.0')] + } + )) + devices.append(create_element( + 'channel', type='unix', attribute_dict={ + 'children': [create_element('source', mode='bind', path='/var/lib/libvirt/qemu/f16x86_64.agent'), + create_element('target', type='virtio', name='org.qemu.guest_agent.0'), + ] + } + )) devices.append(create_element('serial', type='pty')) return create_element('devices', attribute_dict={'children': devices})