Documentation

Deployment / operation

Applications
Applications known to use libvirt
Manual pages
Manual pages for libvirt tools / daemons
Windows
Downloads for Windows
macOS
Working with libvirt on macOS
Migration
Migrating guests between machines
Daemons
Overview of the daemons provided by libvirt
Remote access
Enable remote access over TCP
TLS certs
Generate and deploy x509 certificates for TLS
Authentication
Configure authentication for the libvirt daemon
Access control
Configure access control libvirt APIs with polkit
Logging
The library and the daemon logging support
Audit log
Audit trail logs for host operations
Firewall
Firewall and network filter configuration
Hooks
Hooks for system specific management
NSS module
Enable domain host name translation to IP addresses
FAQ
Frequently asked questions

Application development

API reference
Reference manual for the C public API, split in common, domain, domain checkpoint, domain snapshot, error, event, host, interface, network, node device, network filter, secret, storage, stream and admin, QEMU, LXC libs
Language bindings and API modules
Bindings of the libvirt API for c#, go, java, ocaml, perl, python, php, ruby and integration API modules for D-Bus
XML schemas
Description of the XML schemas for domains, networks, network ports, network filtering, storage, storage encryption, capabilities, domain capabilities, storage pool capabilities, node devices, secrets, snapshots, checkpoints, backup jobs
URI format
The URI formats used for connecting to libvirt
CGroups
Control groups integration
Drivers
Hypervisor specific driver information
Support guarantees
Details of support status for various interfaces
Driver support
matrix of API support per hypervisor per release
Knowledge Base
Task oriented guides to key features

Project development

Contributor guidelines
General hacking guidelines for contributors
Docs style guide
Style guidelines for reStructuredText docs
Project strategy
Sets a vision for future direction & technical choices
CI Testing
Details of the Continuous Integration testing strategy
Bug reports
How and where to report bugs and request features
Compiling
How to compile libvirt
Goals
Terminology and goals of libvirt API
API concepts
The libvirt API concepts
API extensions
Adding new public libvirt APIs
Event loop and worker pool
Libvirt's event loop and worker pool mode
Spawning commands
Spawning commands from libvirt driver code
RPC protocol & APIs
RPC protocol information and API / dispatch guide
Lock managers
Use lock managers to protect disk content
Functional testing
Testing libvirt with TCK test suite and Libvirt-test-API
New repo setup
Procedure for configuring new git repositories for libvirt