diff options
author | Carlos Garnacho <carlosg@gnome.org> | 2020-06-30 10:25:28 +0200 |
---|---|---|
committer | Jean Felder <jean.felder@gmail.com> | 2020-08-21 15:05:11 +0000 |
commit | 535f34b4c3117f14a557bd7ad521f897e840105c (patch) | |
tree | bcea01a2fefc723ea7ddfd4ba63abdc64d4a349f | |
parent | 72e1581d356ea92bac48af71e89e272554c336ee (diff) | |
download | grilo-plugins-535f34b4c3117f14a557bd7ad521f897e840105c.tar.gz |
tracker3: Add configuration option to change miner service
This may be useful if using domain ontologies for the tracker-miner
services (e.g. a flatpak app without tracker3 in the host), in this
case the miner service would be based on the app DBus name, thus
queries and notification subscriptions need to change.
-rw-r--r-- | src/tracker3/grl-tracker-source-notif.c | 2 | ||||
-rw-r--r-- | src/tracker3/grl-tracker-source-priv.h | 1 | ||||
-rw-r--r-- | src/tracker3/grl-tracker-source-statements.c | 5 | ||||
-rw-r--r-- | src/tracker3/grl-tracker.c | 3 |
4 files changed, 10 insertions, 1 deletions
diff --git a/src/tracker3/grl-tracker-source-notif.c b/src/tracker3/grl-tracker-source-notif.c index 59b76c2..591eb3d 100644 --- a/src/tracker3/grl-tracker-source-notif.c +++ b/src/tracker3/grl-tracker-source-notif.c @@ -182,6 +182,8 @@ grl_tracker_source_notify_constructed (GObject *object) bus_connection = g_bus_get_sync (G_BUS_TYPE_SESSION, NULL, NULL); tracker_notifier_signal_subscribe (self->notifier, bus_connection, + grl_tracker_miner_service ? + grl_tracker_miner_service : "org.freedesktop.Tracker3.Miner.Files", NULL, NULL); diff --git a/src/tracker3/grl-tracker-source-priv.h b/src/tracker3/grl-tracker-source-priv.h index 90454c6..caa78d5 100644 --- a/src/tracker3/grl-tracker-source-priv.h +++ b/src/tracker3/grl-tracker-source-priv.h @@ -84,5 +84,6 @@ extern GrlTrackerCache *grl_tracker_item_cache; /* tracker plugin config */ extern gchar *grl_tracker_store_path; +extern gchar *grl_tracker_miner_service; #endif /* _GRL_TRACKER_SOURCE_PRIV_H_ */ diff --git a/src/tracker3/grl-tracker-source-statements.c b/src/tracker3/grl-tracker-source-statements.c index 157f906..10afc5d 100644 --- a/src/tracker3/grl-tracker-source-statements.c +++ b/src/tracker3/grl-tracker-source-statements.c @@ -223,7 +223,10 @@ create_query_string (GrlTrackerQueryType type, merged_list = get_all_keys (keys, options); /* Remote miner-fs bits */ - g_string_append (str, "SERVICE <dbus:" MINER_FS_BUS_NAME "> { "); + g_string_append_printf (str, "SERVICE <dbus:%s> { ", + grl_tracker_miner_service ? + grl_tracker_miner_service : + MINER_FS_BUS_NAME); /* Make a subquery so we can apply limit and offset */ g_string_append (str, "SELECT ?mediaType ?urn "); diff --git a/src/tracker3/grl-tracker.c b/src/tracker3/grl-tracker.c index cab9e45..a07dbd2 100644 --- a/src/tracker3/grl-tracker.c +++ b/src/tracker3/grl-tracker.c @@ -56,6 +56,7 @@ GCancellable *grl_tracker_plugin_init_cancel = NULL; /* tracker plugin config */ gchar *grl_tracker_store_path = NULL; +gchar *grl_tracker_miner_service = NULL; /* =================== Tracker Plugin =============== */ @@ -120,6 +121,8 @@ grl_tracker3_plugin_init (GrlRegistry *registry, grl_tracker_store_path = grl_config_get_string (config, "store-path"); + grl_tracker_miner_service = + grl_config_get_string (config, "miner-service"); } grl_tracker_plugin_init_cancel = g_cancellable_new (); |