summary refs log tree commit diff
path: root/pkgs/development/libraries
diff options
context:
space:
mode:
authorJaka Hudoklin <jakahudoklin@gmail.com>2014-03-23 18:12:07 +0100
committerBjørn Forsman <bjorn.forsman@gmail.com>2014-04-05 18:37:05 +0200
commit413ebfb2469b394a4f4d48ba3567be3c68344722 (patch)
treea90c32d27cc940fe09e99e03985dce084158108d /pkgs/development/libraries
parent85b1ede2bfa8c8e7cf946a7372d3b05f15e7735a (diff)
downloadnixpkgs-413ebfb2469b394a4f4d48ba3567be3c68344722.tar
nixpkgs-413ebfb2469b394a4f4d48ba3567be3c68344722.tar.gz
nixpkgs-413ebfb2469b394a4f4d48ba3567be3c68344722.tar.bz2
nixpkgs-413ebfb2469b394a4f4d48ba3567be3c68344722.tar.lz
nixpkgs-413ebfb2469b394a4f4d48ba3567be3c68344722.tar.xz
nixpkgs-413ebfb2469b394a4f4d48ba3567be3c68344722.tar.zst
nixpkgs-413ebfb2469b394a4f4d48ba3567be3c68344722.zip
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.
]
Diffstat (limited to 'pkgs/development/libraries')
-rw-r--r--pkgs/development/libraries/libvirt-glib/default.nix48
-rw-r--r--pkgs/development/libraries/spice-gtk/default.nix11
-rw-r--r--pkgs/development/libraries/usbredir/default.nix23
3 files changed, 77 insertions, 5 deletions
diff --git a/pkgs/development/libraries/libvirt-glib/default.nix b/pkgs/development/libraries/libvirt-glib/default.nix
new file mode 100644
index 00000000000..afce119e396
--- /dev/null
+++ b/pkgs/development/libraries/libvirt-glib/default.nix
@@ -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;
+  };
+}
diff --git a/pkgs/development/libraries/spice-gtk/default.nix b/pkgs/development/libraries/spice-gtk/default.nix
index 60bf24dfd78..adb1fe90558 100644
--- a/pkgs/development/libraries/spice-gtk/default.nix
+++ b/pkgs/development/libraries/spice-gtk/default.nix
@@ -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
diff --git a/pkgs/development/libraries/usbredir/default.nix b/pkgs/development/libraries/usbredir/default.nix
new file mode 100644
index 00000000000..7f05daab021
--- /dev/null
+++ b/pkgs/development/libraries/usbredir/default.nix
@@ -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;
+  };
+}