python3Packages.orjson: Disable failing tests on 32 bit
[NixPkgs.git] / pkgs / development / libraries / grilo-plugins / default.nix
blob624dbd70a617cfb1fa3e885a60484a3bdcb592eb
1 { lib, stdenv
2 , fetchurl
3 , substituteAll
4 , meson
5 , ninja
6 , pkg-config
7 , gettext
8 , gperf
9 , sqlite
10 , libarchive
11 , libsoup_3
12 , gnome
13 , libxml2
14 , lua5_3
15 , liboauth
16 , libgdata
17 , libmediaart
18 , grilo
19 , gst_all_1
20 , gnome-online-accounts
21 , gmime
22 , gom
23 , json-glib
24 , avahi
25 , tracker
26 , dleyna-server
27 , itstool
28 , totem-pl-parser
31 stdenv.mkDerivation rec {
32   pname = "grilo-plugins";
33   version = "0.3.15";
35   src = fetchurl {
36     url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
37     sha256 = "hRjD2VT5MJXZVWJKBEzhanNFUy+BHSmdv6HhFM/rqzM=";
38   };
40   patches = [
41     # grl-chromaprint requires the following GStreamer elements:
42     # * fakesink (gstreamer)
43     # * playbin (gst-plugins-base)
44     # * chromaprint (gst-plugins-bad)
45     (substituteAll {
46       src = ./chromaprint-gst-plugins.patch;
47       load_plugins = lib.concatMapStrings (plugin: ''gst_registry_scan_path(gst_registry_get(), "${lib.getLib plugin}/lib/gstreamer-1.0");'') (with gst_all_1; [
48         gstreamer
49         gst-plugins-base
50         gst-plugins-bad
51       ]);
52     })
53   ];
55   nativeBuildInputs = [
56     meson
57     ninja
58     pkg-config
59     gettext
60     itstool
61     gperf # for lua-factory
62   ];
64   buildInputs = [
65     grilo
66     libxml2
67     # libgdata
68     lua5_3
69     liboauth
70     sqlite
71     gnome-online-accounts
72     totem-pl-parser
73     libarchive
74     libsoup_3
75     gmime
76     gom
77     json-glib
78     avahi
79     libmediaart
80     tracker
81     dleyna-server
82     gst_all_1.gstreamer
83   ];
85   passthru = {
86     updateScript = gnome.updateScript {
87       packageName = pname;
88       versionPolicy = "none";
89     };
90   };
92   meta = with lib; {
93     homepage = "https://wiki.gnome.org/Projects/Grilo";
94     description = "A collection of plugins for the Grilo framework";
95     maintainers = teams.gnome.members;
96     license = licenses.lgpl21Plus;
97     platforms = platforms.linux;
98   };