[libvirt] Ten years of libvirt

Daniel P. Berrange berrange at redhat.com
Mon Nov 2 10:04:14 UTC 2015

On Mon, Nov 02, 2015 at 09:57:24AM +0100, Michal Privoznik wrote:
> Dear list,
> join me on this big day in congratulations to libvirt that has just
> turned 10 and is starting new decade of its life. At the same time big
> thanks to all who contributed in any way.

Yes, this is a great milestone for the project. Here is a quick look at
what the last 10 years has achieved...

For the first month of existance the project was actually called libxen[1],
but on Dec 5[2], Daniel renamed it to libvir, and then further to libvirt
on Feb 9 2006[3].

We had our second contributor on Dec 7 2005[4], Karel Zak, also of Red Hat.
Our third contributor, Anthony Liguori, was also our first non-Red Hat
contributor on Jan 11 2006[5]. Since then it looks like[6] the core libvirt.git
repository has had a total of 515 different contributors from countless
different companies. We have about another 30 git repositories hosted on
libvirt.org with contributions from many more, not to mention an unknown
number of 3rd party projects...

The library only supported Xen for the first year of its existence, but
on Feb 14 2007[7] our initial QEMU driver was added. Fast forward to today
and we have many different drivers, Hyper-V, VMWare ESX, OpenVZ, LXC,
Parallels, Power-Hypervisor, QEMU, BHyve, Xen / libxl, User Mode Linux,
Xen API, VirtualBox, VMWare Desktop/GSX and our dummy test driver and
our remote RPC driver. This covers pretty much every important hypervisor
that exists today.

The python language bindings were the first non-C language we supported
in Dec 2005[8], but since then we gained many other bindings including
Perl, Java, Ruby, PHP, OCaml, as well as bindings to other object
models such as GObject, SNMP, and CIM.

We added support for translation in Sep 2006[9], and now have translation
files covering 63 different languages, largely thanks to the help of the
Fedora translation teams, first via Transifex and now via Zanata.

Aside from virsh which has been around since the start, the first 3rd
party application built with libvirt was xenguest-install which used
the libvirt APIs to provision Fedora/RHEL guests on Xen. This was initially
part of Fedora Xen RPMs, but in Aug 2006 it moved into its own project
becoming the virt-install tool[10] everyone knows. The first graphical
user interface, virt-manager, has been around since Mar 2006 [11]. Since
that since, libvirt has found use in a wide variety of places whether as
a plugin to tools like Vagrant and Nagios, are in large scale data center
management apps like oVirt or the cloud platform OpenStack.

It is not all about code development either. We have had many contributors
in other important areas of the project. Many people have made presentations
about the project at various open source conferences and user meetups
worldwide which help to spread knowledge & build interest & enthusiasm
around the project. We've had many contributors to our documentation too,
most recently creating a brand new python development guide[10], but also
work on our in-tree docs, and wiki pages. Countless users have written
blog postings about the project which have helped our community of users
to learn about the many neat features libvirt provides. When we started the
libvirt-users mailing list, we weren't sure how it would work out, but 5
years later it is great to see a sustained high level of activity on the
users mailing list, which a wide variety of people helping each other out.

You might think that after 10 years of development, we'd be slowing down,
but anyone who follows the development list and/or git history will see
we're developing as fast as ever. It seems we're no where near "done"....


A big thankyou to all who have contributed to making libvirt a successful
project, whether by deploying it, writing applications using it, writing
documentation, blog posting, providing end user support, developing new
features, translating the code, providing presentations / talks and much
more that I can't remember off hand...

I look forward to seeing what another 10 years of hard work will bring to
the project.


[1] Initially libxen

[2] Renamed libvir

[3] Renamed libvirt

[4] Second contributor

[5] First non-Red Hat contributor

[6] Counting total contributors is an inexact science, since when we used
    CVS instead of GIT, attribution was not tracked very well.

[7] QEMU driver

[8] Python binding

[9] Translation support

[10] virt-install created


[11] virt-manager created


[12] Python appdev guide

|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|

More information about the libvir-list mailing list