summary refs log tree commit diff
path: root/pkgs/development/libraries/farstream/default.nix
blob: b046b7aef73717ceee6ef5a57be47e9b40354d96 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
{ lib, stdenv
, fetchurl
, fetchpatch
, libnice
, pkg-config
, autoreconfHook
, gstreamer
, gst-plugins-base
, gupnp-igd
, gobject-introspection
, gst-plugins-good
, gst-plugins-bad
, gst-libav
}:

stdenv.mkDerivation rec {
  name = "farstream-0.2.8";

  outputs = [ "out" "dev" ];

  src = fetchurl {
    url = "https://www.freedesktop.org/software/farstream/releases/farstream/${name}.tar.gz";
    sha256 = "0249ncd20x5mf884fd8bw75c3118b9fdml837v4fib349xmrqfrb";
  };

  patches = [
    # Python has not been used for ages
    (fetchpatch {
      url = "https://gitlab.freedesktop.org/farstream/farstream/commit/73891c28fa27d5e65a71762e826f13747d743588.patch";
      sha256 = "19pw1m8xhxyf5yhl6k898w240ra2k0m28gfv858x70c4wl786lrn";
    })
    # Fix build with newer gnumake.
    (fetchpatch {
      url = "https://gitlab.freedesktop.org/farstream/farstream/-/commit/54987d44.diff";
      sha256 = "02pka68p2j1wg7768rq7afa5wl9xv82wp86q7izrmwwnxdmz4zyg";
    })
  ];

  buildInputs = [
    libnice
    gupnp-igd
    libnice
  ];

  nativeBuildInputs = [
    pkg-config
    autoreconfHook
    gobject-introspection
  ];

  propagatedBuildInputs = [
    gstreamer
    gst-plugins-base
    gst-plugins-good
    gst-plugins-bad
    gst-libav
  ];

  meta = with lib; {
    homepage = "https://www.freedesktop.org/wiki/Software/Farstream";
    description = "Audio/Video Communications Framework formely known as farsight";
    platforms = platforms.linux;
    license = licenses.lgpl21;
  };
}