tracker_sparql_connection_bus_new() should return better errors on failure
Since merging !180 (merged) I noticed this can happen (from gnome-music!732 (closed)):
(org.gnome.Music.Devel:2): org.gnome.Music-DEBUG: 00:26:00.163: (trackerwrapper.py, _setup_host_miner_fs, 84) Connecting to session-wide Tracker indexer at org.freedesktop.Tracker3.Miner.Files
Traceback (most recent call last):
File "/app/bin/gnome-music", line 124, in <module>
sys.exit(main())
File "/app/bin/gnome-music", line 119, in main
return run_application()
File "/app/bin/gnome-music", line 107, in run_application
app = Application('org.gnome.Music.Devel')
File "/app/lib/python3.8/site-packages/gnomemusic/application.py", line 70, in __init__
self._coregrilo = CoreGrilo(self)
File "/app/lib/python3.8/site-packages/gnomemusic/coregrilo.py", line 77, in __init__
self._tracker_wrapper = TrackerWrapper(application.get_application_id())
File "/app/lib/python3.8/site-packages/gnomemusic/trackerwrapper.py", line 79, in __init__
self._setup_host_miner_fs()
File "/app/lib/python3.8/site-packages/gnomemusic/trackerwrapper.py", line 87, in _setup_host_miner_fs
self._miner_fs = Tracker.SparqlConnection.bus_new(
gi.repository.GLib.Error: g-dbus-error-quark: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name is not activatable (2)
This is a generic error message that doesn't give any idea of what went wrong. We should raise a Tracker specific error message that says what happened, i.e. "I tried to contact org.freedesktop.Tracker3.Miner.Files and org.freedesktop.portal and neither of those are available, so Tracker 3 Miners aren't available on this system"