about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/libraries/spice
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2019-06-12 09:59:45 +0000
committerAlyssa Ross <hi@alyssa.is>2019-06-18 18:14:17 +0000
commitc5571a126859eb658ffd7340cb580f7d91f12bb6 (patch)
tree577573c3bf14d9849246d52daece719a10eaf138 /nixpkgs/pkgs/development/libraries/spice
parent828bd4e8ddcbcd354ddfd99f55af69ee8ff5d9e7 (diff)
parent98e3b90b6c8f400ae5438ef868eb992a64b75ce5 (diff)
downloadnixlib-c5571a126859eb658ffd7340cb580f7d91f12bb6.tar
nixlib-c5571a126859eb658ffd7340cb580f7d91f12bb6.tar.gz
nixlib-c5571a126859eb658ffd7340cb580f7d91f12bb6.tar.bz2
nixlib-c5571a126859eb658ffd7340cb580f7d91f12bb6.tar.lz
nixlib-c5571a126859eb658ffd7340cb580f7d91f12bb6.tar.xz
nixlib-c5571a126859eb658ffd7340cb580f7d91f12bb6.tar.zst
nixlib-c5571a126859eb658ffd7340cb580f7d91f12bb6.zip
Merge commit '98e3b90b6c8f400ae5438ef868eb992a64b75ce5'
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/spice')
-rw-r--r--nixpkgs/pkgs/development/libraries/spice/correct-meson.patch26
-rw-r--r--nixpkgs/pkgs/development/libraries/spice/default.nix93
2 files changed, 100 insertions, 19 deletions
diff --git a/nixpkgs/pkgs/development/libraries/spice/correct-meson.patch b/nixpkgs/pkgs/development/libraries/spice/correct-meson.patch
new file mode 100644
index 000000000000..d3422cb915b3
--- /dev/null
+++ b/nixpkgs/pkgs/development/libraries/spice/correct-meson.patch
@@ -0,0 +1,26 @@
+diff --git a/meson.build b/meson.build
+index 8b8ae8bb..e58c436c 100644
+--- a/meson.build
++++ b/meson.build
+@@ -2,7 +2,7 @@
+ # project definition
+ #
+ project('spice', 'c',
+-        version : run_command('build-aux/git-version-gen', '${MESON_SOURCE_ROOT}/.tarball-version', check : true).stdout().strip(),
++        version : run_command('build-aux/git-version-gen', meson.source_root() + '/.tarball-version', check : true).stdout().strip(),
+         license : 'LGPLv2.1',
+         meson_version : '>= 0.48')
+
+diff --git a/server/meson.build b/server/meson.build
+index 34d8eef1..988ccab2 100644
+--- a/server/meson.build
++++ b/server/meson.build
+@@ -7,7 +7,7 @@ version_info = meson.project_version().split('.')
+ major = '@0@'.format(version_info[0])
+ minor = '@0@'.format(version_info[1])
+ micro = version_info[2].to_int()
+-if not version_info[3].contains('git')
++if not version_info.contains('git')
+   micro += 1
+ endif
+ micro = '@0@'.format(micro)
diff --git a/nixpkgs/pkgs/development/libraries/spice/default.nix b/nixpkgs/pkgs/development/libraries/spice/default.nix
index dadbe57dccdd..902bc6a5560f 100644
--- a/nixpkgs/pkgs/development/libraries/spice/default.nix
+++ b/nixpkgs/pkgs/development/libraries/spice/default.nix
@@ -1,38 +1,93 @@
-{ stdenv, fetchurl, pkgconfig, pixman, celt, alsaLib
-, openssl, libXrandr, libXfixes, libXext, libXrender, libXinerama
-, libjpeg, zlib, spice-protocol, python, pyparsing, glib, cyrus_sasl
-, libcacard, lz4 }:
-
-with stdenv.lib;
+{ stdenv
+, substituteAll
+, fetchurl
+, meson
+, ninja
+, pkgconfig
+, pixman
+, alsaLib
+, openssl
+, libXrandr
+, libXfixes
+, libXext
+, libXrender
+, libXinerama
+, libjpeg
+, zlib
+, spice-protocol
+, python3
+, glib
+, cyrus_sasl
+, libcacard
+, lz4
+, libopus
+, gst_all_1
+, orc
+}:
 
 stdenv.mkDerivation rec {
-  name = "spice-0.14.0";
+  pname = "spice";
+  version = "0.14.2";
 
   src = fetchurl {
-    url = "https://www.spice-space.org/download/releases/${name}.tar.bz2";
-    sha256 = "0j5q7cp5p95jk8fp48gz76rz96lifimdsx1wnpmfal0nnnar9nrs";
+    url = "https://www.spice-space.org/download/releases/${pname}-${version}.tar.bz2";
+    sha256 = "19r999py9v9c7md2bb8ysj809ag1hh6djl1ik8jcgx065s4b60xj";
   };
 
-  buildInputs = [ pixman celt alsaLib openssl libjpeg zlib
-                  libXrandr libXfixes libXrender libXext libXinerama
-                  python pyparsing glib cyrus_sasl libcacard lz4 ];
+  patches = [
+    # submitted https://gitlab.freedesktop.org/spice/spice/merge_requests/4
+    ./correct-meson.patch
+  ];
+
+  postPatch = ''
+    patchShebangs build-aux
+  '';
+
+
+  nativeBuildInputs = [
+    meson
+    ninja
+    pkgconfig
+    spice-protocol
+    python3
+    python3.pkgs.six
+    python3.pkgs.pyparsing
+  ];
 
-  nativeBuildInputs = [ pkgconfig spice-protocol ];
+  buildInputs = [
+    alsaLib
+    cyrus_sasl
+    glib
+    gst_all_1.gst-plugins-base
+    libXext
+    libXfixes
+    libXinerama
+    libXrandr
+    libXrender
+    libcacard
+    libjpeg
+    libopus
+    lz4
+    openssl
+    orc
+    pixman
+    python3.pkgs.pyparsing
+    zlib
+  ];
 
   NIX_CFLAGS_COMPILE = "-fno-stack-protector";
 
-  configureFlags = [
-    "--with-sasl"
-    "--enable-smartcard"
-    "--enable-client"
-    "--enable-lz4"
+  mesonFlags = [
+    "-Dauto_features=enabled"
+    "-Dgstreamer=1.0"
+    "-Dcelt051=disabled"
   ];
 
   postInstall = ''
     ln -s spice-server $out/include/spice
   '';
 
-  meta = {
+  meta = with stdenv.lib; {
     description = "Complete open source solution for interaction with virtualized desktop devices";
     longDescription = ''
       The Spice project aims to provide a complete open source solution for interaction