Libvirt provides a portable, long term stable C API for managing the virtualization technologies provided by many operating systems. It includes support for QEMU, KVM, Xen, LXC, bhyve, Virtuozzo, VMware vCenter and ESX, VMware Desktop, Hyper-V, VirtualBox and the POWER Hypervisor.
Go to file
Jiri Denemark 1bf8934066 spec: Restart libvirtd in posttrans
When upgrading libvirt packages, there's no strict ordering for the
installation or removal of the individual libvirt sub packages. Thus
libvirt-daemon may be upgraded (and its %postun scriptlet) started
before all sub packages with driver libraries are upgraded. When
libvirt-daemon's %postun scriptlet restarts the daemon old drivers may
still be laying around and the daemon may crash when it tries to use
them.

Let's restart the daemon in %posttrans to make sure libvirtd is
restarted only after all sub packages are at the same version.

https://bugzilla.redhat.com/show_bug.cgi?id=1464300

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
2017-10-31 16:00:50 +01:00
.gnulib@5e9abf8716 maint: update to latest gnulib 2017-10-11 11:59:42 +01:00
build-aux perl: Don't hardcode interpreter path 2017-09-19 16:04:53 +02:00
daemon daemon: remove minsize directive from hypervisor logrotate files 2017-10-26 11:23:07 -06:00
docs docs: Add news article 2017-10-27 05:46:35 -04:00
examples virt-aa-helper: fix libusb access to udev usb descriptions 2017-10-26 12:48:32 +02:00
gnulib build: drop hack for old mingw ssize_t 2016-07-12 08:57:13 -06:00
include/libvirt lib: introduce virDomainSetLifecycleAction() API 2017-10-19 11:52:26 +02:00
m4 m4: Disable -Wdisabled-optimization 2017-09-06 09:06:26 +02:00
po Release of libvirt-3.8.0 2017-10-04 10:20:23 +02:00
src virNetDevSupportBandwidth: Enable QoS for vhostuser 2017-10-27 14:59:29 +02:00
tests qemuhotplugtest: Test user supplied alias 2017-10-27 14:43:21 +02:00
tools virsh: domain: Fix option handling in domxml-to-native 2017-10-24 11:21:27 +02:00
.color_coded.in Add color_coded support 2017-05-09 09:51:11 +02:00
.ctags maint: Make ctags work out of the box 2013-07-18 08:47:21 +02:00
.dir-locals.el build: avoid tabs that failed syntax-check 2012-09-06 09:43:46 -06:00
.gitignore Add YouCompleteMe support 2017-05-09 09:51:11 +02:00
.gitmodules util: switch over to use keycodemapdb GIT submodule 2017-04-25 21:14:18 +01:00
.mailmap maint: update .mailmap for recent contributions 2015-03-20 06:17:55 -06:00
.travis.yml Revert "travis: Limit git depth to 5 commits" 2017-09-19 17:08:15 +02:00
.ycm_extra_conf.py.in Add YouCompleteMe support 2017-05-09 09:51:11 +02:00
AUTHORS.in Change maintainers list 2016-02-12 13:10:05 +03:00
autogen.sh autogen.sh: Improve and generalize 2017-04-25 09:52:37 +02:00
bootstrap maint: update to latest gnulib 2017-10-11 11:59:42 +01:00
bootstrap.conf hvsupport: use a regex instead of XML::XPath 2016-07-19 18:42:44 +02:00
cfg.mk Use https:// links for most sites 2017-10-16 10:22:34 +01:00
ChangeLog-old Fix typos in src/* 2014-04-21 16:49:08 -06:00
config-post.h Require use of GCC 4.4 or CLang compilers 2017-07-11 13:57:11 +01:00
configure.ac Use https:// links for most sites 2017-10-16 10:22:34 +01:00
COPYING maint: follow recommended practice for using LGPL 2013-05-20 14:15:21 -06:00
COPYING.LESSER maint: Remove control characters from LGPL license file 2015-09-25 09:16:24 +02:00
libvirt-admin.pc.in Add libvirt-admin library 2015-06-16 13:46:20 +02:00
libvirt-lxc.pc.in Add pkg-config files for libvirt-qemu & libvirt-lxc 2014-06-23 16:17:27 +01:00
libvirt-qemu.pc.in Add pkg-config files for libvirt-qemu & libvirt-lxc 2014-06-23 16:17:27 +01:00
libvirt.pc.in Add pkg-config files for libvirt-qemu & libvirt-lxc 2014-06-23 16:17:27 +01:00
libvirt.spec.in spec: Restart libvirtd in posttrans 2017-10-31 16:00:50 +01:00
Makefile.am HACKING: Drop from the git repository 2017-06-26 14:25:54 +02:00
Makefile.nonreentrant Makefile.nonreentrant: Rebuild against Fedora 26 2017-09-04 16:12:10 +02:00
mingw-libvirt.spec.in Add libxslt as build requires for mingw RPMs 2017-09-04 13:05:24 +01:00
README Provide a useful README file 2017-05-22 17:01:37 +01:00
README-hacking HACKING: Drop from the git repository 2017-06-26 14:25:54 +02:00
README.md Add CII best practices badge 2017-10-13 16:08:01 +01:00
run.in Add PKG_CONFIG_PATH to run.in script. 2014-06-26 14:32:35 +01:00

Build Status CII Best Practices

Libvirt API for virtualization

Libvirt provides a portable, long term stable C API for managing the virtualization technologies provided by many operating systems. It includes support for QEMU, KVM, Xen, LXC, bhyve, Virtuozzo, VMware vCenter and ESX, VMware Desktop, Hyper-V, VirtualBox and the POWER Hypervisor.

For some of these hypervisors, it provides a stateful management daemon which runs on the virtualization host allowing access to the API both by non-privileged local users and remote users.

Layered packages provide bindings of the libvirt C API into other languages including Python, Perl, PHP, Go, Java, OCaml, as well as mappings into object systems such as GObject, CIM and SNMP.

Further information about the libvirt project can be found on the website:

https://libvirt.org

License

The libvirt C API is distributed under the terms of GNU Lesser General Public License, version 2.1 (or later). Some parts of the code that are not part of the C library may have the more restrictive GNU General Public License, version 2.1 (or later). See the files COPYING.LESSER and COPYING for full license terms & conditions.

Installation

Libvirt uses the GNU Autotools build system, so in general can be built and installed with the usual commands. For example, to build in a manner that is suitable for installing as root, use:

$ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
$ make
$ sudo make install

While to build & install as an unprivileged user

$ ./configure --prefix=$HOME/usr
$ make
$ make install

The libvirt code relies on a large number of 3rd party libraries. These will be detected during execution of the configure script and a summary printed which lists any missing (optional) dependencies.

Contributing

The libvirt project welcomes contributions in many ways. For most components the best way to contribute is to send patches to the primary development mailing list. Further guidance on this can be found on the website:

https://libvirt.org/contribute.html

Contact

The libvirt project has two primary mailing lists:

Further details on contacting the project are available on the website:

https://libvirt.org/contact.html