Marble and GeoClue - the dynamic duo?

Inge Wallin inge at lysator.liu.se
Fri Aug 24 04:28:36 PDT 2007


Hi guys,

Thanks for all the replies.  I picked Jussi's out of the 3 to answer, not for 
any particular reason. You all said pretty much the same thing anyway.

On Monday 20 August 2007 22:55, Jussi Kukkonen wrote:
> Hi Inge,
>
> I'm a bit busy today, but here's my 2c.
>
> > 1. What is the status of the GeoClue project?  My impression is that it's
> > in a pretty early phase.  Andrew writes that the DBUS protocol is stable,
> > but that is not the impression that I get from the mailing list.  For
> > instance, I saw a remark that somebody wanted to commit quickly so that
> > his API isn't broken again before he gets the chance.
>
> Keith just did some position API rewrite work. Let me put it this way: I
> wouldn't release a geoclue client application this week -- the internals
> aren't 100% in shape yet and I believe we should take a long hard look
> at the position API at this point: Like you said getting it right is
> pretty important.
>  That said, I'm fairly happy with the public API now and I'd say it's
> very close to being finished (changes are not going to be difficult for
> client apps).

When you say API here, I assume you mean the DBUS API, i.e. the protocol, 
right?  It seems to me that we should wait until the next generation of 
GeoClue before we start to support it. Given that you have tested the present 
protocol for some time now, and you know what you want, this should probably 
not take too long.

Marble will be part of KDE 4.0, which will go into feature freeze in just a 
few weeks. We still have some integration with other new features to do, so 
we wouldn't be able to hack up GeoClue support anyway, so we are actually in 
sync here.  After KDE 4.0 is all done, we will work on the next set of 
features for KDE 4.1 which is expected pretty quickly after that, i.e. around 
march-april 2008.

If you manage to make GeoClue TNG, as it were, during our feature freeze 
period for 4.0, it will be perfectly timed for our 4.1 release.  If I may be 
so presumptuous, I strongly suggest that you do make the protocol versioned, 
so that when you evolve GeoClue it will still be compatible with older 
clients.

Hopefully this increased maturity will also make it easier for you to get it 
into various distributions, and I promise that if you do a good job, we at 
Marble will support it.

	-Inge

> > 2. On the wiki, you mention a number of services that you want to
> > support. Right now, the most interesting of them is Positioning.  What is
> > the status of the various services regarding stability (design and
> > implementation)?
>
> The wiki really needs work... My personal opions on the matter:
>
> Position:   Design is stable (minor changes possible in next weeks).
>             Several position provider implementations are stable or
>             close to it, although not widely tested.
>             IMO Position API and a small set of position providers is
>             priority number one. I'll be working on stabilizing this in
>             the near future.
>
> Other APIs: states vary between "just an idea" and
>             "works, but needs API rewrite"
>
> > I see some problems with frontend - backend separation here...  Surely
> > the backend is not supposed to propose Routing between positions?  Isn't
> > that a natural feature of an application? Also, what is the 'Map' service
> > supposed to be? I couldn't find any real explanation for it on the wiki.
>
> In my opinion the map API/providers belong to the group "works, but
> needs API rewrite". If we have a map provider it should return just
> images, not include GUI parts like it does now.
>
> > 3. Regarding settings: This is a project hosted on the freedesktop.org
> > server. You also mention that you want this to be a cross-desktop backend
> > (something I agree with very much).  Yet, I see several mentions of
> > storing settings in gconf, the Gnome configuration storage.  I must
> > confess my ignorance here, since I don't know how other freedesktop.org
> > projects handle this issue, but to me that sounds like a pretty
> > *non*-cross desktop solution.
>
> gconf doesn't require Gnome and although gconf does have some
> gnome-related dependencies (oaf, orbit), I believe the total footprint
> is fairly small.
>
> Anyway, I'd have no problems using another config system (replacement or
> additional). If the system has a callback system for watching changes
> this should be easy.
>
> > 4. Also regarding platforms: Marble, and I imagine other applications,
> > are already portable to not only Linux, but other Unix-like systems and
> > also Windows and Mac OS X. We cannot depend too closely on solutions that
> > are too platform-specific.  What is the status of GeoClue in this regard,
> > and what are the plans for the future?  Is there a roadmap?
>
> If we forget the Map API for a while, I'd say Geoclue looks pretty
> portable. As long as the platform has an implementation of D-Bus, no
> large changes should be needed.
>
> > 5. Downstream: What relations does the GeoClue project have with the
> > Linux distributions and people on other platforms?  Is there or will
> > there be binary packages of GeoClue?  If there will be, do you know when?
>
> Bergie mentioned the Maemo packaging: I'm just finishing that. The
> packaging itself is almost 100% usable on Debian and Ubuntu, but there's
> no configuration UI for desktops yet so I haven't bothered so far...
>
> > Ok, that was a lot.  Don't get me wrong here; I think GeoClue is a good
> > idea, and it would be a very natural backend for Marble if it was already
> > established and stable. I think it would be a good idea if you could
> > release something small with just the positioning service pretty soon and
> > also introduce some forward compatibility by using version numbers for
> > the protocol.
>
> The APIs have a version number, but that hasn't been used yet -- I
> assume because there hasn't been a stable API until now (Keith can maybe
> explain his ideas on this)
>
>
>  -jussi

-- 
Inge Wallin               | Thus spake the master programmer:               |
                          |      "After three days without programming,     |
inge at lysator.liu.se       |       life becomes meaningless."                |
                          | Geoffrey James: The Tao of Programming.         |


More information about the GeoClue mailing list