Are there any plans to update Geoclue?

asked 2020-06-06 15:41:20 +0300

Woidboy gravatar image

updated 2020-06-06 15:41:37 +0300

As far as I know, Sailfish OS still uses Geoclue1, however, if you would like to have access to GPS within a flatpak app (thanks for supporting this way of installing apps by the way, this is awesome), I'll need Geoclue2. Are there any plans to update Geoclue in the near future? The reason why I need to use flatpak is that I require Qt 5.14 which is not available on Sailfish OS either.

edit retag flag offensive close delete

Comments

2

Geoclue 2 you probably need for Gtk. For Qt, there maybe some way to get geoclue 0.x working as well. See https://doc.qt.io/qt-5/qtpositioning-plugins.html . I don't know the used protocol, whether flatpak platforms have geoclue plugins (I would expect so), and which dbus api they use.

Have you checked that you cannot use geoclue as provided by SFOS? By going into API, checking platform, and so on.

rinigus ( 2020-06-06 20:31:04 +0300 )edit
1

Hi Rinigus, thanks for the comment. Actually, I'm not forced to use Geoclue v2 due to my app but I thought that flatpak is restricted to it. I think that I misunderstood your answer on talk.maemo.org where you said that flatpak can currently connect only via Geoclue v2 by setting the finish-args variables properly. Sorry! How, can I check if flatpak can also use other geoclue versions? I also tried to allow access to the whole dbus, but this didn't help either. Well, I guess that I have to dig further.

Woidboy ( 2020-06-09 09:35:11 +0300 )edit

I guess you will have to dig deeper. In particular, how to enable other geoclue version in Qt. As you opened dbus (system+session), it probably is somewhere in configs of Qt...

rinigus ( 2020-06-09 19:48:45 +0300 )edit

I've solved the problem. So far, I've initialized the GPS source with

source = QGeoPositionInfoSource::createDefaultSource(this);

which chooses Geoclue v2 by default. I've checked the KDE flatpak platform if other plugins are available. Fortunately, there are. Geoclue v0.x is there.

If I initialize the GPS source with

source = QGeoPositionInfoSource::createSource("geoclue",this);

Geoclue v0.x is chosen and my navigation app is working on Sailfish OS using Qt 5.14. I'm so happy! :-)

Woidboy ( 2020-06-10 11:20:31 +0300 )edit

Again, the problem is that the KDE Platform has three plugins available, viz., geoclue2, geoclue and positionpoll, where geoclue2 is the default one. Changing the code to use geoclue instead has one severe disadvantage: geoclue2 is no longer chosen on systems where it is available. Do you know if there is a variable in flatpak-runner where I can set the default source on start-up?

Woidboy ( 2020-06-10 12:06:29 +0300 )edit