Downloads
- Official Releases
- Hourly development snapshots
- Primary release schedule
- Release numbering
- Maintenance releases
- GIT source repository
- Application Development Guide PDF
- Application Development Guide source GIT repository
Official Releases ¶
The latest versions of the libvirt C library can be downloaded from:
Hourly development snapshots ¶
Once an hour, an automated snapshot is made from the git server source tree. These snapshots should be usable, but we make no guarantees about their stability; furthermore, they should NOT be considered formal releases, and they may have transient security problems that will not be assigned a CVE.
Primary release schedule ¶
Libvirt follows a time based plan, with releases made once a month on the 1st of each month give or take a few days. The only exception is at the start of the year where there are two 6 weeks gaps (first release in the middle of Jan, then skip the Feb release), giving a total of 11 releases a year.
Release numbering ¶
Since libvirt 2.0.0, a time based version numbering rule is applied. As such, the changes in version number have do not have any implications with respect to the scope of features or bugfixes included, the stability of the code, or the API / ABI compatibility (libvirt API / ABI is guaranteed stable forever). The rules applied for changing the libvirt version number are:
major
- incremented by 1 for the first release of the year (the Jan 15th release)
minor
- incremented by 1 for each monthly release from git master
micro
- always 0 for releases from git master, incremented by 1 for each stable maintenance release
Prior to 2.0.0, the major/minor numbers were incremented fairly arbitrarily, and maintenance releases appended a fourth digit.
Maintenance releases ¶
In the git repository are several stable maintenance branches,
matching the
pattern vmajor.minor-maint
;
these branches are forked off the corresponding
vmajor.minor.0
formal
release, and may have further releases of the
form vmajor.minor.micro
.
These maintenance branches should only contain bug fixes, and no
new features, backported from the master branch, and are
supported as long as at least one downstream distribution
expresses interest in a given branch. These maintenance
branches are considered during CVE analysis. In contrast
to the primary releases which are made once a month, there
is no formal schedule for the maintenance releases, which
are made whenever there is a need to make available key
bugfixes to downstream consumers.
For more details about contents of maintenance releases, see the wiki page.
GIT source repository ¶
Libvirt code source is now maintained in a git repository available on libvirt.org:
git clone git://libvirt.org/libvirt.git
It can also be browsed at:
http://libvirt.org/git/?p=libvirt.git;a=summary
In addition to this repository, there are the following read-only git repositories which mirror the master one. Note that we currently do not use the full set of features on these mirrors (e.g. pull requests on GitHub, so please don't use them). All patch review and discussion only occurs on the libvir-list mailing list. Also note that some repositories listed below allow HTTP checkouts too.
https://github.com/libvirt/libvirt http://repo.or.cz/w/libvirt.git https://gitlab.com/libvirt/libvirt
libvirt Application Development Guide
The guide is both a learning tool for developing with libvirt and an API reference document. It is a work in progress, composed by a professional author from contributions written by members of the libvirt team.
Contributions to the guide are VERY welcome. If you'd like to get your name on this and demonstrate your virtualisation prowess, a solid contribution to the content here will do it. :)
Application Development Guide PDF ¶
PDF download is available here:
- libvirt App Dev Guide (PDF)
Application Development Guide source GIT repository ¶
The source is also in a git repository:
git clone git://libvirt.org/libvirt-appdev-guide.git
Browsable at:
http://libvirt.org/git/?p=libvirt-appdev-guide.git;a=summary
Once you've have obtained the libvirt source code, you can compile it using the instructions here.