mirror of
https://github.com/dguglielmi/sunny-overlay.git
synced 2025-12-06 18:12:39 +01:00
- Add fix for totem.
This commit is contained in:
6
media-plugins/grilo-plugins/Manifest
Normal file
6
media-plugins/grilo-plugins/Manifest
Normal file
@@ -0,0 +1,6 @@
|
||||
AUX grilo-plugins-0.2.13-0001-fix-thumbnail-url-not-getting-saved.patch 951 SHA256 2dcef59792923b7d7bc38a15663d1aec5422b3a0aac997cf529dad8847f2d5ad SHA512 738ddaded6dd3c94afb8e264e3db74705e33bc77ce23d55c92ccbb04fddaa5c381da7c91e5ebc64031b59625c39351d3dc7f61c25e968df1766703aa699a454b WHIRLPOOL 3a907899d9087e5c86ab4ebb3539217d426b9ac2e55f864173932c5e214a4bd9d1fb16d840e237a68d197d336fab0d4b4c767497b07b86ef75cb8fcbb5e49551
|
||||
AUX grilo-plugins-0.2.13-0002-fix-updating-bookmarks.patch 2564 SHA256 37df6f0b71fe7568f0e1d70c3f7255fc8ec1a01fdce2a5b8ee56b99570009c36 SHA512 3aee7600233a0121eaa6374fb1c6d0cf392a389556adcb552b48e1b0c2c057faccb8af530a34f6f4b9eb9a78596ab7b13b1684f65600390a791a5d813b2267e1 WHIRLPOOL ff094806beaa1f872970c2f8b4eaa4b9f7f39a84706ca717895db4a156e32d88ea7b8583c13fef097ec67d324d7d468b53f82a1138793ae03d5403e8cf1e46ca
|
||||
AUX grilo-plugins-0.2.13-0003-tracker-correctly-set-title-from-filename.patch 3137 SHA256 be6a790a2e471cf19eafc2c342c485a0309f92a6ce5427697e51163235a6ecc8 SHA512 262d38db699383ea20604cf1fb7f9a41de6bdbb15cdc5cc17ef2c51635e6f9b07f443113850898f3aaa96dd0c54c40a472b8c93d1dd53b8a58cdec88234aa1e1 WHIRLPOOL 92fb483c90ee2645baafcbccbecf4dd877e26fca933697635b0144be2ebea1ec4806302adb13fff033637d03753ad010cef489ef08047aae215e476ddd334686
|
||||
AUX grilo-plugins-0.2.13-0004-bookmarks-only-emit-item-removed-if-actually-removed.patch 791 SHA256 4ebb1f7701dc9acaa044e3d0f015ebf77fa1a9b826cd77c201a959edf08af435 SHA512 806ed275a3dbea1470953fa2cacff8a829e894bcd5175b3fbd8ec067a6ffa8ccf01fab3bea13217ddff8621b0b8e158c8c24fc37bb0ad1cab1b45438f86f4e2e WHIRLPOOL 70e62a010a9d351de898a9eeb48f00b4b093b373f4fd0d69286123ce87ee497fb0fb0b1db62b6576042a36fba66db137e51170f44951a8c735a87c602399d5e6
|
||||
DIST grilo-plugins-0.2.13.tar.xz 999896 SHA256 a5544831ba81a4e7caea30da89874fd20142a362d389366e1113d0e64be51201 SHA512 5ec97ea16fc13c13090d58067bc982176967f49b7f996b2ee75fe2c915bfdaf96fb780730b9aeca3ba1e7d566526b7c7423a238b0285b0f60b97ad66b1cb0e03 WHIRLPOOL ef0cadaf229d02083efe6375db2ef335b88b9f46a29d671713957625868a30294952e538cb280de387d5078823ebd2f6d80ddb76d2ebed81008d53b44d3e62f5
|
||||
EBUILD grilo-plugins-0.2.13-r1.ebuild 2834 SHA256 4c296985fb86d5193c6228215fb0d634bb3040f5b5d2443b03322778fe936ff9 SHA512 a24fb0901a627a9730755655e0198a48482edd13224ccb34b879723a534f2a0e4527a68ebed47a8c862587f00601befa3e43193ac068199d20fd26cb8db1e546 WHIRLPOOL 676705cee8a34948a2812d44f8d510aab045d45f38b29ad5210522e46ed1d4634611d3f03a7b8340186cb6d7135de0b7562cebbf799cb686628dda1a50979b85
|
||||
@@ -0,0 +1,24 @@
|
||||
From 734936dbe166526a1e2ebdc1ffebbab64b2216ee Mon Sep 17 00:00:00 2001
|
||||
From: Bastien Nocera <hadess@hadess.net>
|
||||
Date: Tue, 14 Oct 2014 19:30:36 +0200
|
||||
Subject: bookmarks: Fix thumbnail URL not getting saved
|
||||
|
||||
A cut'n'paste error meant that we saved the description instead of
|
||||
the thumbnail URL in that field.
|
||||
|
||||
diff --git a/src/bookmarks/grl-bookmarks.c b/src/bookmarks/grl-bookmarks.c
|
||||
index d2b4797..b6b49f6 100644
|
||||
--- a/src/bookmarks/grl-bookmarks.c
|
||||
+++ b/src/bookmarks/grl-bookmarks.c
|
||||
@@ -718,7 +718,7 @@ store_bookmark (GrlBookmarksSource *bookmarks_source,
|
||||
GRLKEYID_TO_POINTER (GRL_METADATA_KEY_DESCRIPTION));
|
||||
}
|
||||
if (thumb) {
|
||||
- g_object_set (G_OBJECT (resource), "thumbnail-url", desc, NULL);
|
||||
+ g_object_set (G_OBJECT (resource), "thumbnail-url", thumb, NULL);
|
||||
*keylist = g_list_remove (*keylist,
|
||||
GRLKEYID_TO_POINTER (GRL_METADATA_KEY_THUMBNAIL));
|
||||
}
|
||||
--
|
||||
cgit v0.10.2
|
||||
|
||||
@@ -0,0 +1,76 @@
|
||||
From a85c242337e90eef5bc9fa272f8f43853deae322 Mon Sep 17 00:00:00 2001
|
||||
From: Bastien Nocera <hadess@hadess.net>
|
||||
Date: Tue, 14 Oct 2014 19:32:10 +0200
|
||||
Subject: bookmarks: Fix updating bookmarks
|
||||
|
||||
Our use of gom meant that we always ended up with a new item instead of
|
||||
updating an existing one. We need to load the item from the DB to be
|
||||
able to offer that.
|
||||
|
||||
diff --git a/src/bookmarks/grl-bookmarks.c b/src/bookmarks/grl-bookmarks.c
|
||||
index b6b49f6..77ff593 100644
|
||||
--- a/src/bookmarks/grl-bookmarks.c
|
||||
+++ b/src/bookmarks/grl-bookmarks.c
|
||||
@@ -635,6 +635,31 @@ remove_bookmark (GrlBookmarksSource *bookmarks_source,
|
||||
}
|
||||
}
|
||||
|
||||
+static GomResource *
|
||||
+find_resource (const gchar *id,
|
||||
+ GomRepository *repository)
|
||||
+{
|
||||
+ GomResource *resource;
|
||||
+ GomFilter *filter;
|
||||
+ GValue value = { 0, };
|
||||
+
|
||||
+ if (id == NULL)
|
||||
+ return NULL;
|
||||
+
|
||||
+ g_value_init(&value, G_TYPE_INT64);
|
||||
+ g_value_set_int64 (&value, g_ascii_strtoll (id, NULL, 0));
|
||||
+ filter = gom_filter_new_eq (BOOKMARKS_TYPE_RESOURCE, "id", &value);
|
||||
+ g_value_unset(&value);
|
||||
+
|
||||
+ resource = gom_repository_find_one_sync (repository,
|
||||
+ BOOKMARKS_TYPE_RESOURCE,
|
||||
+ filter,
|
||||
+ NULL);
|
||||
+ g_object_unref (filter);
|
||||
+
|
||||
+ return resource;
|
||||
+}
|
||||
+
|
||||
static void
|
||||
store_bookmark (GrlBookmarksSource *bookmarks_source,
|
||||
GList **keylist,
|
||||
@@ -659,6 +684,7 @@ store_bookmark (GrlBookmarksSource *bookmarks_source,
|
||||
|
||||
GRL_DEBUG ("store_bookmark");
|
||||
|
||||
+ str_id = (gchar *) grl_media_get_id (bookmark);
|
||||
title = grl_media_get_title (bookmark);
|
||||
url = grl_media_get_url (bookmark);
|
||||
thumb = grl_media_get_thumbnail (bookmark);
|
||||
@@ -684,11 +710,14 @@ store_bookmark (GrlBookmarksSource *bookmarks_source,
|
||||
type = BOOKMARK_TYPE_STREAM;
|
||||
}
|
||||
|
||||
- resource = g_object_new (BOOKMARKS_TYPE_RESOURCE,
|
||||
- "repository", bookmarks_source->priv->repository,
|
||||
- "parent", parent_id,
|
||||
- "type", type,
|
||||
- NULL);
|
||||
+ resource = find_resource (str_id, bookmarks_source->priv->repository);
|
||||
+ if (!resource) {
|
||||
+ resource = g_object_new (BOOKMARKS_TYPE_RESOURCE,
|
||||
+ "repository", bookmarks_source->priv->repository,
|
||||
+ "parent", parent_id,
|
||||
+ "type", type,
|
||||
+ NULL);
|
||||
+ }
|
||||
|
||||
if (type == BOOKMARK_TYPE_STREAM) {
|
||||
g_object_set (G_OBJECT (resource), "url", url, NULL);
|
||||
--
|
||||
cgit v0.10.2
|
||||
|
||||
@@ -0,0 +1,85 @@
|
||||
From ff9afc6bb2d6515c773a77b1d8ed1a985a635b17 Mon Sep 17 00:00:00 2001
|
||||
From: Bastien Nocera <hadess@hadess.net>
|
||||
Date: Wed, 26 Nov 2014 15:45:39 +0100
|
||||
Subject: tracker: Correctly set "title-from-filename"
|
||||
|
||||
Tracker usually provides us with a title that's derived from the
|
||||
filename. Replicate its process to create a title from a filename
|
||||
to check if the title is actually set from the filename.
|
||||
|
||||
This allows the local-metadata plugin to parse it to remove gunk, and
|
||||
other plugins to override its throwaway title.
|
||||
|
||||
https://bugzilla.gnome.org/show_bug.cgi?id=740756
|
||||
|
||||
diff --git a/src/tracker/grl-tracker-source-api.c b/src/tracker/grl-tracker-source-api.c
|
||||
index 8c9fd55..fbc69a3 100644
|
||||
--- a/src/tracker/grl-tracker-source-api.c
|
||||
+++ b/src/tracker/grl-tracker-source-api.c
|
||||
@@ -203,6 +203,39 @@ static GHashTable *grl_tracker_operations;
|
||||
/**/
|
||||
|
||||
static void
|
||||
+set_title_from_filename (GrlMedia *media)
|
||||
+{
|
||||
+ const gchar *url;
|
||||
+ gchar *path, *display_name, *ext, *title;
|
||||
+ guint suffix_len;
|
||||
+
|
||||
+ url = grl_media_get_url (media);
|
||||
+ if (url == NULL)
|
||||
+ return;
|
||||
+
|
||||
+ path = g_filename_from_uri (url, NULL, NULL);
|
||||
+ if (!path)
|
||||
+ return;
|
||||
+ display_name = g_filename_display_basename (path);
|
||||
+ g_free (path);
|
||||
+ ext = strrchr (display_name, '.');
|
||||
+ if (!ext)
|
||||
+ goto out;
|
||||
+
|
||||
+ suffix_len = strlen (ext);
|
||||
+ if (suffix_len != 4 && suffix_len != 5)
|
||||
+ goto out;
|
||||
+
|
||||
+ title = g_strndup (display_name, ext - display_name);
|
||||
+ if (g_strcmp0 (grl_media_get_title (media), title) == 0)
|
||||
+ grl_data_set_boolean (GRL_DATA (media), GRL_METADATA_KEY_TITLE_FROM_FILENAME, TRUE);
|
||||
+ g_free (title);
|
||||
+
|
||||
+out:
|
||||
+ g_free (display_name);
|
||||
+}
|
||||
+
|
||||
+static void
|
||||
fill_grilo_media_from_sparql (GrlTrackerSource *source,
|
||||
GrlMedia *media,
|
||||
TrackerSparqlCursor *cursor,
|
||||
@@ -402,6 +435,7 @@ get_sparql_type_filter (GrlOperationOptions *options,
|
||||
fill_grilo_media_from_sparql (GRL_TRACKER_SOURCE (spec->source), \
|
||||
media, os->cursor, col); \
|
||||
} \
|
||||
+ set_title_from_filename (media); \
|
||||
\
|
||||
spec->callback (spec->source, \
|
||||
spec->operation_id, \
|
||||
@@ -507,6 +541,7 @@ tracker_resolve_cb (GObject *source_object,
|
||||
fill_grilo_media_from_sparql (GRL_TRACKER_SOURCE (rs->source),
|
||||
rs->media, cursor, col);
|
||||
}
|
||||
+ set_title_from_filename (rs->media);
|
||||
|
||||
rs->callback (rs->source, rs->operation_id, rs->media, rs->user_data, NULL);
|
||||
} else {
|
||||
@@ -565,6 +600,7 @@ tracker_media_from_uri_cb (GObject *source_object,
|
||||
fill_grilo_media_from_sparql (GRL_TRACKER_SOURCE (mfus->source),
|
||||
media, cursor, col);
|
||||
}
|
||||
+ set_title_from_filename (media);
|
||||
|
||||
mfus->callback (mfus->source, mfus->operation_id, media, mfus->user_data, NULL);
|
||||
} else {
|
||||
--
|
||||
cgit v0.10.2
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
From ae10b48dff54a07ea638421554cab207b8bb1ced Mon Sep 17 00:00:00 2001
|
||||
From: Bastien Nocera <hadess@hadess.net>
|
||||
Date: Tue, 2 Dec 2014 18:28:39 +0100
|
||||
Subject: bookmarks: Only emit "item removed" if actually removed
|
||||
|
||||
|
||||
diff --git a/src/bookmarks/grl-bookmarks.c b/src/bookmarks/grl-bookmarks.c
|
||||
index 46e9c30..c7f0109 100644
|
||||
--- a/src/bookmarks/grl-bookmarks.c
|
||||
+++ b/src/bookmarks/grl-bookmarks.c
|
||||
@@ -631,7 +631,7 @@ remove_bookmark (GrlBookmarksSource *bookmarks_source,
|
||||
|
||||
g_object_unref (resource);
|
||||
|
||||
- if (bookmarks_source->priv->notify_changes) {
|
||||
+ if (*error != NULL && bookmarks_source->priv->notify_changes) {
|
||||
/* We can improve accuracy computing the parent container of removed
|
||||
element */
|
||||
grl_source_notify_change (GRL_SOURCE (bookmarks_source),
|
||||
--
|
||||
cgit v0.10.2
|
||||
|
||||
104
media-plugins/grilo-plugins/grilo-plugins-0.2.13-r1.ebuild
Normal file
104
media-plugins/grilo-plugins/grilo-plugins-0.2.13-r1.ebuild
Normal file
@@ -0,0 +1,104 @@
|
||||
# Copyright 1999-2015 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/media-plugins/grilo-plugins/grilo-plugins-0.2.13.ebuild,v 1.6 2015/02/23 11:59:50 pacho Exp $
|
||||
|
||||
EAPI="5"
|
||||
GCONF_DEBUG="no" # --enable-debug only changes CFLAGS
|
||||
GNOME2_LA_PUNT="yes"
|
||||
|
||||
inherit gnome2
|
||||
|
||||
DESCRIPTION="A framework for easy media discovery and browsing"
|
||||
HOMEPAGE="https://wiki.gnome.org/Projects/Grilo"
|
||||
|
||||
LICENSE="LGPL-2.1+"
|
||||
SLOT="0.2"
|
||||
KEYWORDS="amd64 ~ppc ~ppc64 x86"
|
||||
IUSE="daap +dvd flickr freebox gnome-online-accounts lua pocket thetvdb tracker upnp-av +vimeo +youtube"
|
||||
|
||||
RDEPEND="
|
||||
>=dev-libs/glib-2.36:2
|
||||
>=media-libs/grilo-0.2.11:${SLOT}[network,playlist]
|
||||
>=media-libs/libmediaart-0.1
|
||||
>=dev-libs/gom-0.2.1
|
||||
|
||||
dev-libs/gmime:2.6
|
||||
dev-libs/json-glib
|
||||
dev-libs/libxml2:2
|
||||
dev-db/sqlite:3
|
||||
|
||||
daap? ( >=net-libs/libdmapsharing-2.9.12:3.0 )
|
||||
dvd? ( >=dev-libs/totem-pl-parser-3.4.1 )
|
||||
flickr? ( net-libs/liboauth )
|
||||
freebox? ( net-dns/avahi )
|
||||
gnome-online-accounts? ( >=net-libs/gnome-online-accounts-3.7.1 )
|
||||
lua? (
|
||||
>=dev-lang/lua-5.2
|
||||
app-arch/libarchive )
|
||||
pocket? (
|
||||
>=net-libs/gnome-online-accounts-3.11.4
|
||||
>=net-libs/rest-0.7.90
|
||||
>=dev-libs/totem-pl-parser-3.4.1 )
|
||||
thetvdb? (
|
||||
app-arch/libarchive
|
||||
dev-libs/libxml2 )
|
||||
tracker? ( >=app-misc/tracker-0.10.5:= )
|
||||
youtube? (
|
||||
>=dev-libs/libgdata-0.9.1:=
|
||||
dev-libs/totem-pl-parser )
|
||||
upnp-av? ( net-libs/libsoup )
|
||||
vimeo? (
|
||||
dev-libs/totem-pl-parser )
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
app-text/docbook-xml-dtd:4.5
|
||||
app-text/yelp-tools
|
||||
>=dev-util/intltool-0.40.0
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
src_prepare() {
|
||||
|
||||
epatch "${FILESDIR}/${P}-0001-fix-thumbnail-url-not-getting-saved.patch"
|
||||
epatch "${FILESDIR}/${P}-0002-fix-updating-bookmarks.patch"
|
||||
epatch "${FILESDIR}/${P}-0003-tracker-correctly-set-title-from-filename.patch"
|
||||
epatch "${FILESDIR}/${P}-0004-bookmarks-only-emit-item-removed-if-actually-removed.patch"
|
||||
|
||||
gnome2_src_prepare
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
# --enable-debug only changes CFLAGS, useless for us
|
||||
# Plugins
|
||||
# shoutcast seems to be broken
|
||||
gnome2_src_configure \
|
||||
--disable-static \
|
||||
--disable-debug \
|
||||
--disable-uninstalled \
|
||||
--enable-bliptv \
|
||||
--enable-apple-trailers \
|
||||
--enable-bookmarks \
|
||||
--enable-filesystem \
|
||||
--enable-gravatar \
|
||||
--enable-jamendo \
|
||||
--enable-lastfm-albumart \
|
||||
--enable-localmetadata \
|
||||
--enable-magnatune \
|
||||
--enable-metadata-store \
|
||||
--enable-podcasts \
|
||||
--enable-raitv \
|
||||
--disable-shoutcast \
|
||||
--enable-tmdb \
|
||||
$(use_enable daap dmap) \
|
||||
$(use_enable dvd optical-media) \
|
||||
$(use_enable flickr) \
|
||||
$(use_enable freebox) \
|
||||
$(use_enable gnome-online-accounts goa) \
|
||||
$(use_enable lua lua-factory) \
|
||||
$(use_enable pocket) \
|
||||
$(use_enable thetvdb) \
|
||||
$(use_enable tracker) \
|
||||
$(use_enable upnp-av dleyna) \
|
||||
$(use_enable vimeo) \
|
||||
$(use_enable youtube)
|
||||
}
|
||||
Reference in New Issue
Block a user