virt-manager: update to 1.0.1, fix & update dependencies, gtk3 support

- Vte, add gtk3 support, enable introspection, update to 0.35.90
- Spice-gtk, add gtk3 support
- gtk-vnc, add gtk3 support
- Add libvirt-glib (thanks @bjornfor)
- Add usbredir
- qemu, enable usbredir
- spice-gtk, enable usbredir
- virt-manager, update to 1.0.1

[Bjørn:
* Set namePrefix = "" to preserve package name "virt-manager"
  (instead of "python2.7-virt-manager")
* Add dconf to GIO_EXTRA_MODULES to get persistent settings in
  virt-manager. Without it:
  GLib-GIO-Message: Using the 'memory' GSettings backend. Your settings will not be saved or shared with other applications.
* Add ${gtk3}/share to XDG_DATA_DIRS to unbreak "Take Screenshot"
  feature (fixes "Settings schema 'org.gtk.Settings.FileChooser' is not installed")
* gtk-vnc: don't pull "pkgs" attrset for optionalString, use stdenv.lib.optionalString instead.
]
This commit is contained in:
Jaka Hudoklin
2014-03-23 18:12:07 +01:00
committed by Bjørn Forsman
parent 85b1ede2bf
commit 413ebfb246
8 changed files with 151 additions and 85 deletions

View File

@@ -0,0 +1,48 @@
{ stdenv, fetchurl, pkgconfig, libvirt, glib, libxml2, intltool, libtool, yajl
, nettle, libgcrypt, python, pygobject, gobjectIntrospection, libcap_ng
}:
stdenv.mkDerivation rec {
name = "libvirt-glib-0.1.8";
src = fetchurl {
url = "http://libvirt.org/sources/glib/${name}.tar.gz";
sha256 = "0ld7g9vlpdzx8rm90i8y1gnpygkn20x5z12gvsgms7dy5nala3ns";
};
buildInputs = [
pkgconfig libvirt glib libxml2 intltool libtool yajl nettle libgcrypt
python pygobject gobjectIntrospection libcap_ng
];
# Compiler flag -fstack-protector-all fixes this build error:
#
# ./.libs/libvirt-glib-1.0.so: undefined reference to `__stack_chk_guard'
#
# And the extra include path fixes this build error:
#
# In file included from ../libvirt-gobject/libvirt-gobject-domain-device.h:30:0,
# from /tmp/nix-build-libvirt-glib-0.1.7.drv-2/libvirt-glib-0.1.7/libvirt-gobject/libvirt-gobject.h:33,
# from <stdin>:4:
# ../libvirt-gobject/libvirt-gobject-domain.h:33:29: fatal error: libvirt/libvirt.h: No such file or directory
# compilation terminated.
# make[3]: *** [LibvirtGObject-1.0.gir] Error 1
preConfigure = ''
export NIX_CFLAGS_COMPILE="-fstack-protector-all -I${libvirt}/include"
'';
meta = with stdenv.lib; {
description = "Library for working with virtual machines";
longDescription = ''
libvirt-glib wraps libvirt to provide a high-level object-oriented API better
suited for glib-based applications, via three libraries:
- libvirt-glib - GLib main loop integration & misc helper APIs
- libvirt-gconfig - GObjects for manipulating libvirt XML documents
- libvirt-gobject - GObjects for managing libvirt objects
'';
homepage = http://libvirt.org/;
license = licenses.lgpl2Plus;
platforms = platforms.linux;
};
}

View File

@@ -1,6 +1,7 @@
{ stdenv, fetchurl, pkgconfig, gtk, spice_protocol, intltool, celt_0_5_1
, openssl, pulseaudio, pixman, gobjectIntrospection, libjpeg_turbo, zlib
, cyrus_sasl, python, pygtk, autoconf, automake, libtool }:
, cyrus_sasl, python, pygtk, autoconf, automake, libtool, usbredir
, gtk3, enableGTK3 ? false }:
with stdenv.lib;
@@ -13,9 +14,9 @@ stdenv.mkDerivation rec {
};
buildInputs = [
gtk spice_protocol celt_0_5_1 openssl pulseaudio pixman gobjectIntrospection
libjpeg_turbo zlib cyrus_sasl python pygtk
];
spice_protocol celt_0_5_1 openssl pulseaudio pixman gobjectIntrospection
libjpeg_turbo zlib cyrus_sasl python pygtk usbredir
] ++ (if enableGTK3 then [ gtk3 ] else [ gtk ]);
nativeBuildInputs = [ pkgconfig intltool libtool autoconf automake ];
@@ -31,7 +32,7 @@ stdenv.mkDerivation rec {
configureFlags = [
"--disable-maintainer-mode"
"--with-gtk=2.0"
(if enableGTK3 then "--with-gtk3" else "--with-gtk=2.0")
];
dontDisableStatic = true; # Needed by the coroutine test

View File

@@ -0,0 +1,23 @@
{ stdenv, fetchurl, pkgconfig, libusb }:
stdenv.mkDerivation rec {
name = "usbredir-${version}";
version = "0.6";
src = fetchurl {
url = "http://spice-space.org/download/usbredir/${name}.tar.bz2";
sha256 = "028184960044ea4124030000b3c55a35c3238835116e3a0fbcaff449df2c8edf";
};
buildInputs = [ pkgconfig libusb ];
propagatedBuildInputs = [ libusb ];
meta = with stdenv.lib; {
description = "USB traffic redirection protocol";
homepage = http://spice-space.org/page/UsbRedir;
license = licenses.lgpl21;
maintainers = [ maintainers.offline ];
platforms = platforms.linux;
};
}