1{ stdenv, fetchurl, pythonPackages, intltool, libxml2Python, curl, python
2, wrapGAppsHook, virtinst, pyGtkGlade, pythonDBus, gnome_python, gtkvnc, vte
3, gtk3, gobjectIntrospection, libvirt-glib, gsettings_desktop_schemas, glib
4, avahi, dconf, spiceSupport ? true, spice_gtk, libosinfo, gnome3
5}:
6
7with stdenv.lib;
8with pythonPackages;
9
10buildPythonPackage rec {
11 name = "virt-manager-${version}";
12 version = "1.2.1";
13 namePrefix = "";
14
15 src = fetchurl {
16 url = "http://virt-manager.org/download/sources/virt-manager/${name}.tar.gz";
17 sha256 = "1gp6ijrwl6kjs54l395002pc9sblp08p4nqx9zcb9qg5f87aifvl";
18 };
19
20 propagatedBuildInputs =
21 [ eventlet greenlet gflags netaddr sqlalchemy carrot routes
22 paste_deploy m2crypto ipy twisted sqlalchemy_migrate
23 distutils_extra simplejson readline glance cheetah lockfile httplib2
24 urlgrabber virtinst pyGtkGlade pythonDBus gnome_python pygobject3
25 libvirt libxml2Python ipaddr vte libosinfo
26 ] ++ optional spiceSupport spice_gtk;
27
28 buildInputs =
29 [ mox
30 intltool
31 gtkvnc
32 gtk3
33 libvirt-glib
34 avahi
35 glib
36 gobjectIntrospection
37 gsettings_desktop_schemas
38 gnome3.defaultIconTheme
39 wrapGAppsHook
40 ];
41
42 configurePhase = ''
43 sed -i 's/from distutils.core/from setuptools/g' setup.py
44 sed -i 's/from distutils.command.install/from setuptools.command.install/g' setup.py
45 python setup.py configure --prefix=$out
46 '';
47
48 buildPhase = "true";
49
50 postInstall = ''
51 ${glib}/bin/glib-compile-schemas "$out"/share/glib-2.0/schemas
52 '';
53
54 # Failed tests
55 doCheck = false;
56
57 meta = with stdenv.lib; {
58 homepage = http://virt-manager.org;
59 description = "Desktop user interface for managing virtual machines";
60 longDescription = ''
61 The virt-manager application is a desktop user interface for managing
62 virtual machines through libvirt. It primarily targets KVM VMs, but also
63 manages Xen and LXC (linux containers).
64 '';
65 license = licenses.gpl2;
66 maintainers = with maintainers; [qknight offline];
67 };
68}