summary refs log tree commit diff
path: root/pkgs/development/libraries/grilo
diff options
context:
space:
mode:
authorJan Tojnar <jtojnar@gmail.com>2019-08-23 02:35:56 +0200
committerJan Tojnar <jtojnar@gmail.com>2019-08-23 02:47:37 +0200
commita2ba083f1802bb05541bed5c6feb1c0da1956ad6 (patch)
tree87f3ee37b21b90ec6f5173882d24717164c100cb /pkgs/development/libraries/grilo
parentfac090c8dd5941be79b0d632487ad7629027e080 (diff)
downloadnixpkgs-a2ba083f1802bb05541bed5c6feb1c0da1956ad6.tar
nixpkgs-a2ba083f1802bb05541bed5c6feb1c0da1956ad6.tar.gz
nixpkgs-a2ba083f1802bb05541bed5c6feb1c0da1956ad6.tar.bz2
nixpkgs-a2ba083f1802bb05541bed5c6feb1c0da1956ad6.tar.lz
nixpkgs-a2ba083f1802bb05541bed5c6feb1c0da1956ad6.tar.xz
nixpkgs-a2ba083f1802bb05541bed5c6feb1c0da1956ad6.tar.zst
nixpkgs-a2ba083f1802bb05541bed5c6feb1c0da1956ad6.zip
grilo: move from gnome3
Diffstat (limited to 'pkgs/development/libraries/grilo')
-rw-r--r--pkgs/development/libraries/grilo/default.nix62
-rw-r--r--pkgs/development/libraries/grilo/setup-hook.sh7
2 files changed, 69 insertions, 0 deletions
diff --git a/pkgs/development/libraries/grilo/default.nix b/pkgs/development/libraries/grilo/default.nix
new file mode 100644
index 00000000000..b2a7f0bd5ae
--- /dev/null
+++ b/pkgs/development/libraries/grilo/default.nix
@@ -0,0 +1,62 @@
+{ stdenv, fetchurl, meson, ninja, pkgconfig, gettext, vala, glib, liboauth, gtk3
+, gtk-doc, docbook_xsl, docbook_xml_dtd_43, fetchpatch
+, libxml2, gnome3, gobject-introspection, libsoup, totem-pl-parser }:
+
+let
+  pname = "grilo";
+  version = "0.3.9"; # if you change minor, also change ./setup-hook.sh
+in stdenv.mkDerivation rec {
+  name = "${pname}-${version}";
+
+  outputs = [ "out" "dev" "man" "devdoc" ];
+  outputBin = "dev";
+
+  src = fetchurl {
+    url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
+    sha256 = "1wnabc69730jsv8dljj5ik8g7p581nw60mw1mkgamkzjcb6821bk";
+  };
+
+  setupHook = ./setup-hook.sh;
+
+  mesonFlags = [
+    "-Dgtk_doc=true"
+  ];
+
+  patches = [
+    # https://gitlab.gnome.org/GNOME/grilo/merge_requests/45
+    # commits are from a separate branch so they shouldn't 404
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/worldofpeace/grilo/commit/f6993c2a8a6c1a6246372569f9f7a9179955c95e.patch";
+      sha256 = "1x4s0ahs60dqyphgv2dy3x2sjnxv5ydd55kdlcjsys5870ijwbi8";
+    })
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/worldofpeace/grilo/commit/61bca28b141162a33eb2fb575ef1daf0f21c7741.patch";
+      sha256 = "1147xbmaq61myfwxz0pagdv056krfmh1s78qjbiy5k7k203qrjz0";
+    })
+    (fetchpatch {
+      url = "https://gitlab.gnome.org/worldofpeace/grilo/commit/363b198a062eeb8aaa5489ea9720e69d428e885c.patch";
+      sha256 = "01w1bfzdbnxy5l37b2z7a9h2mrxziqkzdw02dybjphy85nb0hz5w";
+    })
+  ];
+
+  nativeBuildInputs = [
+    meson ninja pkgconfig gettext gobject-introspection vala
+    gtk-doc docbook_xsl docbook_xml_dtd_43
+  ];
+  buildInputs = [ glib liboauth gtk3 libxml2 libsoup totem-pl-parser ];
+
+  passthru = {
+    updateScript = gnome3.updateScript {
+      packageName = pname;
+      versionPolicy = "none";
+    };
+  };
+
+  meta = with stdenv.lib; {
+    homepage = https://wiki.gnome.org/Projects/Grilo;
+    description = "Framework that provides access to various sources of multimedia content, using a pluggable system";
+    maintainers = gnome3.maintainers;
+    license = licenses.lgpl2;
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/development/libraries/grilo/setup-hook.sh b/pkgs/development/libraries/grilo/setup-hook.sh
new file mode 100644
index 00000000000..9337c520a20
--- /dev/null
+++ b/pkgs/development/libraries/grilo/setup-hook.sh
@@ -0,0 +1,7 @@
+make_grilo_find_plugins() {
+    if [ -d "$1"/lib/grilo-0.3 ]; then
+        addToSearchPath GRL_PLUGIN_PATH "$1/lib/grilo-0.3"
+    fi
+}
+
+addEnvHooks "$hostOffset" make_grilo_find_plugins