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