[Librem-5-dev] Maps software

rinigus rinigus.git at gmail.com
Sun Oct 7 05:07:45 PDT 2018


I am a developer of maps applications on Sailfish OS. These are OSM Scout
Server (https://openrepos.net/content/rinigus/osm-scout-server) and Pure
Maps (https://openrepos.net/content/rinigus/pure-maps). About a week ago,
Puri.sm got in touch with me through @r0kk3rz (thank you for promoting our
solution!) and I have accepted a challenge to port these applications
to Librem 5.

This maps stack is somewhat different from what's common on other
platforms. Out of them, Pure Maps is an application that shows maps, allows
to search, route and perform other operations by querying different
services. While I have not experimented with Google Maps too much, when
compared with it, Pure Maps

* uses Mapbox GL - support for vector and raster tiles
* it has simple access for users to choose their provider for map tiles,
search, route calculations
* has turn-by-turn navigation support with the voice prompts (via mimic,
flite, and picoTTS)

There are probably more differences, but these popped up in my head as the
first ones. I have uploaded more screenshots (
https://openrepos.net/content/rinigus/pure-maps) to give some overview of
the interface and its features for those, who don't use SFOS devices.

The second application, OSM Scout Server, provides map tiles (vector and
raster), search and route calculation services. As a result, any online
maps client (Pure Maps, modRana, Gnome Maps), can obtain offline
functionality with minimal effort (mainly have to adjust HTTP API calls,
supported by Pure Maps and modRana) by accessing OSM Scout Server running
at localhost. In addition, the server supports DBus for map matching. The
server is built around Mapnik, libpostal, Valhalla, and libosmscout (older
version, depricated backend for now). There are several projects developed
for maps import from Planet.PBF (OpenStreetMaps) and maps styling (Mapbox
GL and Mapnik), but these are running on the servers and there is no need
to port these, just to develop further. For the end users, maps are
provided via downloads from data.modrana.org (thanks to MartinK) and one
backup server (thanks to bomo) via dedicated GUI.

End users, when not downloading offline maps, are just interfacing map
client software (Pure Maps or some other). OSM Scout Server is started
automatically on the background via systemd socket activation and shutdown
when not in use for some time. Such seamless integration works very well in
practice and allows to have similar experience as all-in-one solution.

The applications are Qt/QML based, with Sailfish OS Silica components. I
have started the porting already and I am working on partitioning the code
into platform-dependent and -independent parts. That would allow me to port
them to desktop and, later, to Librem 5. These would still stay, at least
for now, Qt/QML applications, but there will be work done on integrating
them well into overall Librem 5 interface conventions.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puri.sm/pipermail/librem-5-dev/attachments/20181007/1e7404bc/attachment.html>

More information about the Librem-5-dev mailing list