From 169c8ce3f700482802de5606e72911ba9446e483 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Llu=C3=ADs=20Batlle=20i=20Rossell?= Date: Sat, 29 Jun 2013 16:50:56 +0200 Subject: [PATCH] Linphone 3.6.1 Lots of updates and new/old libs to get the latest linphone It segfaults on running. --- .../instant-messengers/linphone/default.nix | 18 ++++++++++-------- pkgs/development/libraries/exosip/3.x.nix | 17 +++++++++++++++++ .../libraries/libzrtpcpp/default.nix | 8 +++++--- .../libraries/mediastreamer/default.nix | 15 +++++++-------- pkgs/development/libraries/ortp/default.nix | 10 +++++++--- pkgs/development/libraries/osip/3.nix | 17 +++++++++++++++++ pkgs/development/libraries/srtp/default.nix | 6 +++--- pkgs/development/libraries/srtp/linphone.nix | 15 +++++++++++++++ pkgs/top-level/all-packages.nix | 17 +++++++++++++++-- 9 files changed, 96 insertions(+), 27 deletions(-) create mode 100644 pkgs/development/libraries/exosip/3.x.nix create mode 100644 pkgs/development/libraries/osip/3.nix create mode 100644 pkgs/development/libraries/srtp/linphone.nix diff --git a/pkgs/applications/networking/instant-messengers/linphone/default.nix b/pkgs/applications/networking/instant-messengers/linphone/default.nix index a4a32327d0c6..c3af0ad0e340 100644 --- a/pkgs/applications/networking/instant-messengers/linphone/default.nix +++ b/pkgs/applications/networking/instant-messengers/linphone/default.nix @@ -1,21 +1,23 @@ { stdenv, fetchurl, intltool, pkgconfig, gtk, libglade, libosip, libexosip -, speex, readline, mediastreamer, libsoup }: +, speex, readline, mediastreamer, libsoup, udev, libnotify }: stdenv.mkDerivation rec { - name = "linphone-3.5.2"; + name = "linphone-3.6.1"; src = fetchurl { - url = "mirror://savannah/linphone/3.5.x/sources/${name}.tar.gz"; - sha256 = "0830iam7kgqphgk3q6qx93kp5wrf0gnm5air82jamy7377jxadys"; + url = "mirror://savannah/linphone/3.6.x/sources/${name}.tar.gz"; + sha256 = "186jm4nd4ggb0j8cs8wnpm4sy9cr7chq0c6kx2yc6y4k7qi83fh5"; }; - patches = [ ./fix-deprecated.patch ]; - - buildInputs = [ gtk libglade libosip libexosip readline mediastreamer speex libsoup ]; + buildInputs = [ gtk libglade libosip libexosip readline mediastreamer speex libsoup udev + libnotify ]; nativeBuildInputs = [ intltool pkgconfig ]; - preConfigure = "rm -r mediastreamer2 oRTP"; + preConfigure = '' + rm -r mediastreamer2 oRTP + sed -i s,/bin/echo,echo, coreapi/Makefile* + ''; configureFlags = "--enable-external-ortp --enable-external-mediastreamer"; diff --git a/pkgs/development/libraries/exosip/3.x.nix b/pkgs/development/libraries/exosip/3.x.nix new file mode 100644 index 000000000000..d850618ecdf9 --- /dev/null +++ b/pkgs/development/libraries/exosip/3.x.nix @@ -0,0 +1,17 @@ +{stdenv, fetchurl, libosip, openssl, pkgconfig }: + +stdenv.mkDerivation rec { + version = "3.6.0"; + src = fetchurl { + url = "http://download.savannah.gnu.org/releases/exosip/libeXosip2-${version}.tar.gz"; + sha256 = "0r1mj8x5991bgwf03bx1ajn5kbbmw1136jabw2pn7dls9h41mnli"; + }; + name = "libexosip2-${version}"; + + buildInputs = [ libosip openssl pkgconfig ]; + + meta = { + license = "GPLv2+"; + description = "Library that hides the complexity of using the SIP protocol"; + }; +} diff --git a/pkgs/development/libraries/libzrtpcpp/default.nix b/pkgs/development/libraries/libzrtpcpp/default.nix index 02741bc6fa11..e6c4cafcd553 100644 --- a/pkgs/development/libraries/libzrtpcpp/default.nix +++ b/pkgs/development/libraries/libzrtpcpp/default.nix @@ -1,11 +1,11 @@ { stdenv, fetchurl, cmake, openssl, pkgconfig, ccrtp }: stdenv.mkDerivation rec { - name = "libzrtpcpp-2.0.0"; + name = "libzrtpcpp-2.3.3"; src = fetchurl { url = "mirror://gnu/ccrtp/${name}.tar.gz"; - sha256 = "05yw8n5xpj0jxkvzgsvn3xkxirpypc1japy9k1jqs9301fgb1a3i"; + sha256 = "1p8i3qb4j1r64r7miva8hamaszk42kncpy1x5xlq1l0465h01rvg"; }; # We disallow 'lib64', or pkgconfig will not find it. @@ -13,7 +13,9 @@ stdenv.mkDerivation rec { sed -i s/lib64/lib/ CMakeLists.txt ''; - buildInputs = [ cmake openssl pkgconfig ccrtp ]; + nativeBuildInputs = [ cmake pkgconfig ]; + + propagatedBuildInputs = [ openssl ccrtp ]; meta = { description = "GNU RTP stack for the zrtp protocol developed by Phil Zimmermann"; diff --git a/pkgs/development/libraries/mediastreamer/default.nix b/pkgs/development/libraries/mediastreamer/default.nix index 4aa78570b2ff..3b1fd9faa6b2 100644 --- a/pkgs/development/libraries/mediastreamer/default.nix +++ b/pkgs/development/libraries/mediastreamer/default.nix @@ -1,21 +1,20 @@ -{ stdenv, fetchurl, pkgconfig, alsaLib, ffmpeg, speex, ortp, pulseaudio, xorg, - libv4l, libtheora, intltool, libvpx, gsm }: +{ stdenv, fetchurl, pkgconfig, alsaLib, ffmpeg, speex, ortp, pulseaudio, +libv4l, libtheora, intltool, libvpx, gsm, mesa, libX11, libXv, libXext, +glew, libopus, libupnp, vim }: stdenv.mkDerivation rec { - name = "mediastreamer-2.8.2"; + name = "mediastreamer-2.9.0"; src = fetchurl { url = "mirror://savannah/linphone/mediastreamer/${name}.tar.gz"; - sha256 = "0csg9a4mwfw5j475q9d5klhy82jnpcqfrlbvw81nxnqki40bnbm6"; + sha256 = "1mdcaqkcdwzlj7hy3bz0ipkrrqiw1cgy01in8f24rfra9i2bjif2"; }; # TODO: make it load plugins from *_PLUGIN_PATH nativeBuildInputs = [pkgconfig intltool]; - propagatedBuildInputs = [alsaLib ffmpeg speex ortp pulseaudio xorg.libX11 - xorg.libXv xorg.libXext libv4l libtheora libvpx gsm ]; - -#patches = [ ./h264.patch ./plugins.patch ]; + propagatedBuildInputs = [ alsaLib ffmpeg speex ortp pulseaudio libX11 + libXv libXext libv4l libtheora libvpx gsm mesa glew libopus libupnp vim ]; configureFlags = "--enable-external-ortp"; } diff --git a/pkgs/development/libraries/ortp/default.nix b/pkgs/development/libraries/ortp/default.nix index 255d91981050..ff7536de4034 100644 --- a/pkgs/development/libraries/ortp/default.nix +++ b/pkgs/development/libraries/ortp/default.nix @@ -1,13 +1,17 @@ -{stdenv, fetchurl}: +{stdenv, fetchurl, srtp, libzrtpcpp, pkgconfig }: stdenv.mkDerivation rec { - name = "ortp-0.18.0"; + name = "ortp-0.22.0"; src = fetchurl { url = "mirror://savannah/linphone/ortp/sources/${name}.tar.gz"; - sha256 = "1cgx9xid0abk3cad3xjdvx7p9whinlhrviphyrd9zkhhx7ddkih2"; + sha256 = "02rdm6ymgblbx8fnjfvivkl4qkgbdizrf35fyb0vln9m7jdy4dvf"; }; + configureFlags = "--enable-zrtp"; + + propagatedBuildInputs = [ srtp libzrtpcpp pkgconfig ]; + meta = { description = "A Real-Time Transport Protocol (RFC3550) stack"; homepage = http://www.linphone.org/index.php/eng/code_review/ortp; diff --git a/pkgs/development/libraries/osip/3.nix b/pkgs/development/libraries/osip/3.nix new file mode 100644 index 000000000000..2c1b148251c6 --- /dev/null +++ b/pkgs/development/libraries/osip/3.nix @@ -0,0 +1,17 @@ +{stdenv, fetchurl}: +stdenv.mkDerivation rec { + version = "3.6.0"; + src = fetchurl { + url = "mirror://gnu/osip/libosip2-${version}.tar.gz"; + sha256 = "1kcndqvsyxgbhkksgydvvjw15znfq6jiznvw058d21h5fq68p8f9"; + }; + name = "libosip2-${version}"; + + meta = { + license = "LGPLv2.1+"; + homepage = http://www.gnu.org/software/osip/; + description = "The GNU oSIP library, an implementation of the Session Initiation Protocol (SIP)"; + maintainers = with stdenv.lib.maintainers; [ raskin ]; + platforms = stdenv.lib.platforms.linux; + }; +} diff --git a/pkgs/development/libraries/srtp/default.nix b/pkgs/development/libraries/srtp/default.nix index 1b8b654ca808..ee264a4e9567 100644 --- a/pkgs/development/libraries/srtp/default.nix +++ b/pkgs/development/libraries/srtp/default.nix @@ -11,10 +11,10 @@ let (builtins.attrNames (builtins.removeAttrs x helperArgNames)); sourceInfo = rec { baseName="srtp"; - version="1.4.2"; + version="1.4.4"; name="${baseName}-${version}"; - url="http://srtp.sourceforge.net/${name}.tgz"; - hash="1497mcxharnhiccjhny30g4wlv28ckdxhj14jrwvdnnvhl80jf43"; + url="mirror://sourceforge/${name}.tgz"; + hash="057k191hx7sf84wdvc8wr1nk4whhrvbg1vv3r4nyswjir6qwphnr"; }; in rec { diff --git a/pkgs/development/libraries/srtp/linphone.nix b/pkgs/development/libraries/srtp/linphone.nix new file mode 100644 index 000000000000..9108be5e30c9 --- /dev/null +++ b/pkgs/development/libraries/srtp/linphone.nix @@ -0,0 +1,15 @@ +{ stdenv, fetchgit, automake, autoconf, libtool }: + +stdenv.mkDerivation { + name = "srtp-linphone-git-20130530-1c9bd9065"; + + src = fetchgit { + url = git://git.linphone.org/srtp.git; + rev = "1c9bd9065"; + sha256 = "0r4wbrih8bggs69fnfmzm17z1pp1zp8x9qwcckcq6wc54b16d9g3"; + }; + + preConfigure = "autoreconf -vfi"; + + buildInputs = [ automake autoconf libtool ]; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 2962a24db314..975b43bdf6b6 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4498,6 +4498,10 @@ let libexosip = callPackage ../development/libraries/exosip {}; + libexosip_3 = callPackage ../development/libraries/exosip/3.x.nix { + libosip = libosip_3; + }; + libextractor = callPackage ../development/libraries/libextractor { libmpeg2 = mpeg2dec; }; @@ -4685,6 +4689,8 @@ let libosip = callPackage ../development/libraries/osip {}; + libosip_3 = callPackage ../development/libraries/osip/3.nix {}; + libotr = callPackage ../development/libraries/libotr { }; libotr_3_2 = callPackage ../development/libraries/libotr/3.2.nix { }; @@ -4879,7 +4885,9 @@ let mdds = callPackage ../development/libraries/mdds { }; # failed to build - mediastreamer = callPackage ../development/libraries/mediastreamer { }; + mediastreamer = callPackage ../development/libraries/mediastreamer { + ffmpeg = ffmpeg_1; + }; mesaSupported = lib.elem system lib.platforms.mesaPlatforms; @@ -5049,7 +5057,9 @@ let }; }; - ortp = callPackage ../development/libraries/ortp { }; + ortp = callPackage ../development/libraries/ortp { + srtp = srtp_linphone; + }; p11_kit = callPackage ../development/libraries/p11-kit { }; @@ -5278,6 +5288,8 @@ let srtp = callPackage ../development/libraries/srtp {}; + srtp_linphone = callPackage ../development/libraries/srtp/linphone.nix { }; + sqlite_3_7_16 = lowPrio (callPackage ../development/libraries/sqlite/3.7.16.nix { readline = null; ncurses = null; @@ -7771,6 +7783,7 @@ let linphone = callPackage ../applications/networking/instant-messengers/linphone { inherit (gnome) libglade; + libexosip = libexosip_3; }; linuxsampler = callPackage ../applications/audio/linuxsampler { };