mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-11-03 20:01:16 +00:00
5e055f8bcd
s/libvirt.org/libvirt/ Signed-off-by: Ján Tomko <jtomko@redhat.com>
393 lines
13 KiB
ReStructuredText
393 lines
13 KiB
ReStructuredText
=========
|
|
Downloads
|
|
=========
|
|
|
|
.. contents::
|
|
|
|
Project modules
|
|
---------------
|
|
|
|
The libvirt project maintains a number of inter-related modules beyond the core
|
|
C library/daemon.
|
|
|
|
Libvirt
|
|
~~~~~~~
|
|
|
|
.. list-table::
|
|
:header-rows: 1
|
|
|
|
* - Module
|
|
- Releases
|
|
- GIT Repo
|
|
- Bug Tracker
|
|
- GIT Mirrors
|
|
- Resources
|
|
|
|
* - libvirt
|
|
- `libvirt <https://libvirt.org/sources/>`__
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt>`__
|
|
- `api ref <html/index.html>`__
|
|
`changes <news.html>`__
|
|
|
|
Language bindings
|
|
~~~~~~~~~~~~~~~~~
|
|
|
|
.. list-table::
|
|
:header-rows: 1
|
|
|
|
* - Module
|
|
- Releases
|
|
- GIT Repo
|
|
- Bug Tracker
|
|
- GIT Mirrors
|
|
- Resources
|
|
|
|
* - C#
|
|
- `libvirt <https://libvirt.org/sources/csharp/>`__
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-csharp>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-csharp/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-csharp>`__
|
|
-
|
|
|
|
* - Go
|
|
- `libvirt <https://libvirt.org/go/libvirt>`__
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-go-module>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-go-module/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-go-module>`__
|
|
- `api ref <https://pkg.go.dev/libvirt.org/go/libvirt>`__
|
|
|
|
* - Java
|
|
- `libvirt <https://libvirt.org/sources/java/>`__
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-java>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-java/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-java>`__
|
|
-
|
|
|
|
* - OCaml
|
|
- `libvirt <https://libvirt.org/sources/ocaml/>`__
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-ocaml>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-ocaml/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-ocaml>`__
|
|
-
|
|
|
|
* - Perl (Sys::Virt)
|
|
- `cpan <https://metacpan.org/release/Sys-Virt/>`__
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-perl>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-perl/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-perl>`__
|
|
- `api ref <https://metacpan.org/release/Sys-Virt/>`__
|
|
`changes <https://libvirt.org/git/?p=libvirt-perl.git;a=blob;f=Changes;hb=HEAD>`__
|
|
|
|
* - PHP
|
|
- `libvirt <https://libvirt.org/sources/php/>`__
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-php>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-php/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-php>`__
|
|
-
|
|
|
|
* - Python
|
|
- `libvirt <https://libvirt.org/sources/python/>`__
|
|
`pypi <https://pypi.python.org/pypi/libvirt-python>`__
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-python>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-python/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-python>`__
|
|
-
|
|
|
|
* - Ruby
|
|
- `libvirt <https://libvirt.org/sources/ruby/>`__
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-ruby>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-ruby/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-ruby>`__
|
|
-
|
|
|
|
* - Rust
|
|
- `crates.io <https://crates.io/crates/virt>`__
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-rust>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-rust/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-rust>`__
|
|
- `api ref <https://docs.rs/virt>`__
|
|
|
|
Integration modules
|
|
~~~~~~~~~~~~~~~~~~~
|
|
|
|
.. list-table::
|
|
:header-rows: 1
|
|
|
|
* - Module
|
|
- Releases
|
|
- GIT Repo
|
|
- Bug Tracker
|
|
- GIT Mirrors
|
|
- Resources
|
|
|
|
* - GLib / GConfig / GObject
|
|
- `libvirt <https://libvirt.org/sources/glib/>`__
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-glib>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-glib/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-glib>`__
|
|
-
|
|
|
|
* - Go XML
|
|
- `libvirt <https://libvirt.org/go/libvirtxml>`__
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-go-xml-module>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-go-xml-module/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-go-xml-module>`__
|
|
- `api ref <https://pkg.go.dev/libvirt.org/go/libvirtxml>`__
|
|
|
|
* - D-Bus
|
|
- `libvirt <https://libvirt.org/sources/dbus/>`__
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-dbus>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-dbus/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-dbus>`__
|
|
-
|
|
|
|
* - Console Proxy
|
|
- `libvirt <https://libvirt.org/sources/consoleproxy/>`__
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-console-proxy>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-console-proxy/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-console-proxy>`__
|
|
-
|
|
|
|
* - CIM provider
|
|
- `libvirt <https://libvirt.org/sources/CIM/>`__
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-cim>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-cim/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-cim>`__
|
|
-
|
|
|
|
* - CIM utils
|
|
- `libvirt <https://libvirt.org/sources/CIM/>`__
|
|
- `gitlab <https://gitlab.com/libvirt/libcmpiutil>`__
|
|
- `issues <https://gitlab.com/libvirt/libcmpiutil/-/issues>`__
|
|
- `github <https://github.com/libvirt/libcmpiutil>`__
|
|
-
|
|
|
|
* - SNMP
|
|
- `libvirt <https://libvirt.org/sources/snmp/>`__
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-snmp>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-snmp/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-snmp>`__
|
|
-
|
|
|
|
* - Application Sandbox
|
|
- `libvirt <https://libvirt.org/sources/sandbox/>`__
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-sandbox>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-sandbox/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-sandbox>`__
|
|
-
|
|
|
|
Testing
|
|
~~~~~~~
|
|
|
|
.. list-table::
|
|
:header-rows: 1
|
|
|
|
* - Module
|
|
- Releases
|
|
- GIT Repo
|
|
- Bug Tracker
|
|
- GIT Mirrors
|
|
|
|
* - TCK
|
|
- `libvirt <https://libvirt.org/sources/tck/>`__
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-tck>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-tck/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-tck>`__
|
|
|
|
* - Test API
|
|
-
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-test-API>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-test-API/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-test-API>`__
|
|
|
|
* - Continuous Integration Config
|
|
-
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-ci>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-ci/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-ci>`__
|
|
|
|
* - CIM Test
|
|
-
|
|
- `gitlab <https://gitlab.com/libvirt/cimtest>`__
|
|
- `issues <https://gitlab.com/libvirt/cimtest/-/issues>`__
|
|
- `github <https://github.com/libvirt/cimtest>`__
|
|
|
|
Documentation
|
|
~~~~~~~~~~~~~
|
|
|
|
.. list-table::
|
|
:header-rows: 1
|
|
|
|
* - Module
|
|
- GIT Repo
|
|
- Bug Tracker
|
|
- GIT Mirrors
|
|
|
|
* - Publican Brand
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-publican>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-publican/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-publican>`__
|
|
|
|
* - App Development Guide
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-appdev-guide>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-appdev-guide/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-appdev-guide>`__
|
|
|
|
* - App Development Guide Python
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-appdev-guide-python>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-appdev-guide-python/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-appdev-guide-python>`__
|
|
|
|
* - virsh Command Reference
|
|
- `gitlab <https://gitlab.com/libvirt/libvirt-virshcmdref>`__
|
|
- `issues <https://gitlab.com/libvirt/libvirt-virshcmdref/-/issues>`__
|
|
- `github <https://github.com/libvirt/libvirt-virshcmdref>`__
|
|
|
|
Primary download site
|
|
---------------------
|
|
|
|
Most modules have releases made available for download on the project site via
|
|
HTTPS. Some modules are instead made available at alternative locations, for
|
|
example, the Perl binding is made available only on CPAN.
|
|
|
|
- `libvirt.org HTTPS server <https://libvirt.org/sources/>`__
|
|
|
|
Primary release schedule
|
|
------------------------
|
|
|
|
The core libvirt module 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.
|
|
The Python and Perl modules will aim to release at the same time as the core
|
|
libvirt module. Other modules have independent ad-hoc releases with no fixed
|
|
time schedule.
|
|
|
|
Release numbering
|
|
-----------------
|
|
|
|
Since libvirt 2.0.0, a time based version numbering rule is applied to the core
|
|
library releases. 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``
|
|
reset to 0 with every major increment, otherwise 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. The language bindings will aim to
|
|
use the same version number as the most recent core library API they support.
|
|
The other modules have their own distinct release numbering sequence, though
|
|
they generally aim to follow the above rules for incrementing major/minor/micro
|
|
digits.
|
|
|
|
Maintenance releases
|
|
--------------------
|
|
|
|
In the git repository are several stable maintenance branches for the core
|
|
library, 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. The
|
|
language bindings and other modules generally do not provide stable branch
|
|
releases.
|
|
|
|
For more details about contents of maintenance releases, see `the wiki
|
|
page <https://wiki.libvirt.org/page/Maintenance_Releases>`__.
|
|
|
|
GIT source repository
|
|
---------------------
|
|
|
|
All modules maintained by the libvirt project have their primary source
|
|
available in the `libvirt group on GitLab <https://gitlab.com/libvirt/>`__.
|
|
Each module can be cloned anonymously using:
|
|
|
|
::
|
|
|
|
git clone https://gitlab.com/libvirt/[module name].git
|
|
|
|
In addition to this primary repository, there are mirrored read-only git
|
|
repositories on GitHub:
|
|
|
|
::
|
|
|
|
https://github.com/libvirt/
|
|
|
|
And there are also read-only mirrors on libvirt.org:
|
|
|
|
::
|
|
|
|
git clone https://libvirt.org/git/[module name].git
|
|
|
|
Note that for most repositories, development happens via merge requests
|
|
on GitLab. However, for the main `libvirt.git` repository all patch review and
|
|
discussion only occurs on the `libvir-list <contact.html>`__ mailing list.
|
|
|
|
The GitHub repository is read-only and pull requests and issues there are ignored.
|
|
|
|
Signing keys
|
|
------------
|
|
|
|
Source RPM packages and tarballs for libvirt and libvirt-python published on
|
|
this project site are signed with a GPG signature. You should always verify the
|
|
package signature before using the source to compile binary packages. The
|
|
following key is currently used to generate the GPG signatures:
|
|
|
|
::
|
|
|
|
pub 4096R/10084C9C 2020-07-20 Jiří Denemark <jdenemar@redhat.com>
|
|
Fingerprint=453B 6531 0595 5628 5547 1199 CA68 BE80 1008 4C9C
|
|
|
|
It can be downloaded from `this
|
|
site <https://libvirt.org/sources/gpg_key.asc>`__ or from public GPG key
|
|
servers.
|
|
|
|
Releases prior to libvirt-6.6 were signed with the following GPG key:
|
|
|
|
::
|
|
|
|
pub dsa1024 2000-05-31 [SC]
|
|
C744 15BA 7C9C 7F78 F02E 1DC3 4606 B8A5 DE95 BC1F
|
|
uid [ unknown] Daniel Veillard (Red Hat work email) <veillard@redhat.com>
|
|
uid [ unknown] Daniel Veillard <Daniel.Veillard@w3.org>
|
|
|
|
::
|
|
|
|
-----BEGIN PGP SIGNED MESSAGE-----
|
|
Hash: SHA256
|
|
|
|
Starting from libvirt-6.6.0 the upstream releases will be done by Jiří Denemark
|
|
signed with his PGP key:
|
|
|
|
pub 4096R/10084C9C 2020-07-20 Jiří Denemark <jdenemar@redhat.com>
|
|
Fingerprint=453B 6531 0595 5628 5547 1199 CA68 BE80 1008 4C9C
|
|
|
|
This message is signed by the old signing key which was used for previous
|
|
releases.
|
|
-----BEGIN PGP SIGNATURE-----
|
|
|
|
iQEzBAEBCAAdFiEE20ZoG7ka3OoXD6LUFViLJllr6l0FAl/8H9cACgkQFViLJllr
|
|
6l3iVwgAm9n703/QoIfPbxT5qGQzWK6LNriEcG2R9MLgFcW+UuGA9cqIBLhH1RaJ
|
|
q7Gc3gK0dgE2HAF6DxuG5+nkDY6LdmonLOVFWQkMCh41JHFrV6tw8y9hc/RNOb/m
|
|
gFAl4HpwYisjTRvsTRcpR3ElK6lI0Yu4GY4gJxj5qH4L5exR+kkylwuAxqP+wuyY
|
|
b/L/tP76F4+Q9SSPj0M01NRVC7V8m3yvnok5y374vtxvRFome0WMELn81vphxBLx
|
|
X7LQ1LyjvRs0HhN5MutJES5FYDzArTYZfZJozJgE465XrHxMMCbXbZ/AgAs/aD+5
|
|
x+m2mFplbS57tMEoMBP/ezbbL5wpvA==
|
|
=KnaO
|
|
-----END PGP SIGNATURE-----
|