8. Multiple monitor support

When using Spice, it’s possible to use multiple monitors. For that, the guest must have multiple QXL devices (for Windows guests), or a single QXL device configured to support multiple heads (for Linux guests).

Before following the instructions in this section, make sure your virtual machine already has a QXL device. If that is not the case, refer to this section. Your guest OS will also need to have the QXL driver installed or multiple monitor support will not work.

Once your virtual machine is using a QXL device, you don’t need to make any other change to get multiple heads in a Linux guest. The following paragraph will deal with adding multiple QXL devices to get multiple monitors in a Windows guest.

8.1. Configuration

Using virt-manager. To add an additional QXL device for Windows guests, simply go to your virtual machine details. Check that you already have a "Video QXL" device, if not, click on "Add Hardware", and add a "Video" device with model "QXL". This can also work with Linux guests if your are willing to configure X.Org to use Xinerama (instead of XRandR).

If you are using a new enough distribution (for example Fedora 19), and if your virtual machine already has a QXL device, you should not need to make any changes in virt-manager. If you are using an older distribution, you can’t do the required changes from virt-manager, you’ll need to edit libvirt XML as described on this blog post.

Using libvirt. To add an additional QXL device to your virtual machine managed by libvirt, you simply need to append a new video node whose model is QXL:

<video>
    <model type='qxl'/>
</video>
<video>
    <model type='qxl'/>
</video>

Using QEMU. To get a second QXL device in your virtual machine, you need to append -device qxl to your QEMU command line in addition to the -vga qxl that is already there:

-vga qxl -device qxl

8.2. Client

You can enable additional displays from the "View → Displays" menu in remote-viewer.