OSM Scout Server

Your rating: None Average: 5 (38 votes)

OSM Scout Server is a native offline maps provider. This server can be used as a drop-in replacement for online map services providing map tiles, search, and routing. As a result, together with the map client, a full offline solution is available for map search and navigation (car, bicycle, and walking).

The server can be used to provide:

  • map tiles for other applications;
  • search for locations and free text search;
  • search for POIs next to a reference;
  • calculate the route between two or more locations.

To use the server, you have to start it and configure the client to access it. Poor Maps and modRana have support for the server already with no additional configuration needed.

Starting from 0.7.0 release, maps are distributed online and should be downloaded through provided Map Manager interface.

NB! When Mapbox GL schema is changed (as for 1.4.0), please remove Mapbox GL application caches. For Poor Maps GL, you have to run

rm -rf ~/.cache/harbour-poor-maps-gl

in the terminal.

NB! When a new backend is added, such as with the release of 0.9.0 and 0.10.0, please ensure that you have subscription information updated. For that, in Map Manager, click on "Check for updates", decline updates, and unsubscribe/subscribe each territory that you have subscribed. After that, proceed with the downloads. This is not needed if you don't want to use the added backend(s).

For detailed up-to-date description, please see https://github.com/rinigus/osmscout-server/blob/master/README.md

License: GPL
Source code: https://github.com/rinigus/osmscout-server

User's guide: https://rinigus.github.io/osmscout-server

Official TMO thread: http://talk.maemo.org/showthread.php?t=97823

Donations: https://rinigus.github.io/donate

Screenshots show the running server and, as an example client application, Poor Maps accessing the map tiles and calculated route prior to navigation.

Maps are hosted by Natural Language Processing Centre (https://nlp.fi.muni.cz/en/ , Faculty of Informatics, Masaryk University, Brno, Czech Republic) through modRana (http://modrana.org)
data repository.

Map data from OpenStreetMap, Open Database License 1.0. Maps are converted to a suitable format from downloaded extracts and/or using polygons as provided by Geofabrik GmbH.



  • add postal code as a name for some search results
  • docs: update Spanish User's manual
  • docs: add Linux install instructions
  • mapboxgl backend: use sqlite3pp instead of Qt SQL
  • flatpak: update build scripts and move them to flathub

1.12.0, 1.12.1, 1.12.2

  • geocoder: add support for search by postal codes
  • geocoder: return postal codes, phone, and webpage when available
  • geocoder: load libpostal language classifier and parser only if needed
  • [1.12.0, 1.12.1] update translations
  • [1.12.2] added boost lib to the package to support SFOS3


  • update translations
  • allow searching without libpostal parsing
  • allow nearby search without type and name


  • update translations
  • update Valhalla to 2.6.3
  • update Valhalla configuration
  • other small changes

1.10.0, 1.10.1, 1.10.2

  • changed license to GPLv3
  • add support for POST requests
  • add search along route
  • cleanup POI aliases handling
  • added Italian translation [wip]
  • updated translations
  • geocoder bugfixes


  • updated translations
  • fix crash when using libosmscout profile
  • fixes in map matching service
  • add ferries and oneway streets in MapboxGL styles


  • introduction of D-Bus API
  • map matching of the current position as D-Bus service
  • updated translations


  • use Valhalla C++ API
  • expose multiple Valhalla's services
  • add Mapbox GL car styles
  • update translations
  • other small changes

1.7.0, 1.7.1

  • support for aliases in multiple languages in guide search
  • support for POIs without a name in guide search
  • extend API for guide search by specified type and/or name
  • provide the list of currently used aliases
  • sort guide results by distance
  • adjusted lists of imported types for geocoder-nlp
  • other enhancements and bugfixes in geocoder-nlp
  • updated translations


  • addition of QtQuick Controls GUI version
  • update geocoder to libpostal 1.1 API
  • adjust geocoder results sorting
  • changes in Valhalla packaging
  • added nl_BE translation
  • updated translations
  • moved Silica QML into separate folder
  • show map selection only if needed


  • revise warning messages on missing backend data
  • notify about missing modules only if required by selected backends
  • source tree and compilation enhancements


  • Updated translations
  • Fix Mapbox GL style to show rivers
  • Preserving explicit dependency on libsystemd at Sailfish


  • Updated translations
  • Support for multiple Mapbox GL icon packs
  • Addition of Mapbox GL dark style


  • Updated Mapbox GL tile schema
  • Mapbox GL style with English names
  • Document starting and using the server
  • Document details on automatic activation of the server
  • Updated translations


  • Support for multiple map download servers
  • Ensure that Valhalla is started before starting HTTP service
  • Updated translations
  • Added donations link


  • Add support for MapboxGL
  • Updated translations of documentation and application

1.1.0, 1.1.1

  • Add automatic start via systemd socket activation
  • Updated translations


  • Normalize tile indexes if requested out of range

1.0.0, 1.0.1

  • Users Guide in Spanish
  • Addition of Finnish translation
  • Updated translations


  • Revert to older libosmscout
  • Updated translations


  • Geocoder-NLP update
  • Updated translations


  • Add support for English as a secondary language
  • Deleting files during cleanup in separate thread
  • Updated translations
  • Bugfixes


  • Updated translations
  • Bugfix in guide search


  • Introduction of profiles
  • Startup wizard
  • Updated translations
  • Other small changes


  • Add support for Mapnik style and daylight switching
  • Speedup Mapnik backend by removing double scaling of the buffer
  • Updated translations


  • Add guide search support for Geocoder-NLP
  • Guide search looks for type or name when using Geocoder-NLP
  • Support for V2 routing protocol by libosmscout backend
  • Updated translations
  • Other smaller changes


  • Updated translations


  • Valhalla added as a routing engine
  • Routing is supported between different territories when using Valhalla
  • Search is performed for all databases when using Geocoder-NLP
  • Server is distributed using modular approach
  • Two server modules introduced: Route and Fonts
  • Update libosmscout version, 20170521
  • Make storage of libosmscout databases optional
  • Mapnik uses Noto fonts by default
  • Other smaller changes

0.9.5, 0.9.6

  • Mapnik database schema changes to reduce size and speedup rendering
  • Mapnik renderer default style adjustments
  • Updated translations


  • Mapnik added as an alternative map rendering backend
  • Enhance Linux command line support for map subscription


  • Updated translations
  • Fix start error on i486


  • Optimization of geocoder-nlp, changes in geocoder data format
  • Updates from libosmscout upstream
  • Addition of command line options
  • Updated translations


  • Expose map updates to GUI
  • Propose to create a storage folder (suggested by @Feathers McGraw)
  • Updated translations


  • New transalations completed: French, Russian
  • New translations started: Polish, Norwegian
  • Fix buffer overflow during fast download and slow writing


  • Updated translations
  • Improved handling of some network errors during download


  • Maps are provided through CDN
  • Adding Map Manager to download and remove maps on the device
  • libosmscout backend changes, including rendering speedup by @Karry
  • Settings grouped by backend and available via Settings dialog
  • Small enhancements


  • German translation
  • Moving translations to Transifex
  • Start and target description are given when available


  • Updated Spanish and Swedish translations


  • Adding libpostal-based geocoder
  • Update to the latest libosmscout version
  • Updated Spanish and Swedish translation


  • Swedish translation


  • Czech translation
  • Minor update in search


  • Updated Spanish translation


  • Added file and directory selection dialog
  • Support for metric and imperial units
  • Built against libosmscout 0.0.git.20161207


  • Updated Spanish translation


  • Changes for better localization support
  • Spanish translation
  • GUI shows number of jobs in queue
  • Support for routing cost limits
  • Bugfixes in routing (libosmscout library)


  • Decoupling number of parallel processing threads and number of requests
  • Adding GPX output for router
  • Adding ability to log events into session log file
  • Using libmicrohttpd as a http server engine
  • Bugfixes in routing
  • Static linking of libosmscout, marisa, and libmicrohttpd
  • Used versions of the libraries: libosmscout (0.0.git.20161110), marisa (0.2.4), libmicrohttpd (0.9.50)


  • Bug fix in routing target description; small changes in route instructions text


  • Support for route calculation
  • Add settings for transport speed properties
  • Add ability to increase area processed for tile drawing
  • Small enhancements and bug fixes


  • Initial release
  • Support for map tiles
  • Support for location search
  • Support for free text search
  • Support for search of POIs next to a reference point


eatdirt's picture


I have tried that before, but on Poor Maps, I was only getting one region at a time and not the whole country. I think that is because I am still using "libosmscout" as a rendering. I'll certainly switch to Mapnik then, but from past experience, "libosmscout"  was providing the fastest rendering on Jolla 1. Any chance to make it compatible with region boundaries?


Thanks again for the great app!



rinigus's picture

Yes, libosmscout backend doesn't support merging in the server. The newer versions of the library do support it, but the version used in the server does not. I have asked for someone to maintain libosmscout backend on it's developers list, but so far, there has been no volunteers. I personally use MapboxGL backend or, sometimes, Mapnik, hence interest on my part is limited and it would be better maintained by someone actively using it.

hwansing's picture

Hi, this app is really amazing, thanks! I had (apparently) the same problems as monkeyisland, the same error messages regarding "database image malformed". I tried to download hole Germany in one database, and that resulted in a 4,3GB big file - lying on a vfat filesystem (sdcard). However vfat is limited to 4GB file size :-)) So you need to format the sdcard as ext4, for example. Regards Holger

monkeyisland's picture

I have to say i also deleted the hole folder on sd card and let osm download the maps again. But no success

monkeyisland's picture

So i made a screenshot from the log:


rinigus's picture

Looks like there are problems with the huge databases like for Germany (and probably France). While it works on Linux PC, it sounds to me that its problematic for devices and I suspect that it maybe caused either by download problems or filesystem.

Please remove full Germany and download a part of it. Note that you can have multiple maps working at the same time. So, you can get full Germany downloaded by splitting it by regions. Please try with one region first and let me know if it helped.

monkeyisland's picture

So i downloaded Germany / Lower Saxony, what can i say it works. Sp for hole Germany i have to download all other territories.

Funny thing with a recent version of OSM or the maps, it worked with the hole country. 

rinigus's picture

Thank you for reporting back! With such big database as Germany, probably few things can go wrong. In general, you should get very similar performance by downloading parts. The parts are stiched together by Valhalla, Mapnik, Mapbox, and Geocoder-NLP. For tile-based databases (Valhalla and Mapbox), the sizes reported by the app will be overestimated when compared to the real disk usage. This is due to the fact that neighboring datasets will use the same tiles.

monkeyisland's picture

Okay i test it in the afternoon. I report.

rinigus's picture

seems that screenshot didn't get through

monkeyisland's picture

Hi i have a Problem with OSMScout Maps on jolla 1. I choosed standard profile and downloaded yje needed files.
When i choose osmscout Maps in poor Maps. I have only a white screen. The other maps e.g. Mapnik is working fine. Can anybody help me?

rinigus's picture

Hi! More information is needed to help you. I presume that you followed the users guide and have issues after that.


Please start the server as a regular app, start Poor Maps and try to access OSM Scout Server maps. Then check out messages in the server and let me know about them. Then we can figure out what's going on.

ferlanero's picture

Yes! Another great update. Yes, yes!!

DarkTuring's picture

How do you actually start the Scout server? Why doesnt it start with application start or when it is called upon by client?

rinigus's picture

There are two ways to start:

* start OSM Scout Server as a regular SFOS application and then access it via map applications (Poor Maps, modRana, Poor Maps GL)

* enable auto-start in Settings and then just use map client

Note that we have documentation available that should get you up and running in no time at https://rinigus.github.io/osmscout-server/en/ . It includes setting up the server as well as Poor Maps and modRana.

DarkTuring's picture

I am getting an error, it cant even download the list of countries, says host unreachable.

Countries_providex.json  error code 99

rinigus's picture

It should all work now. Please let me know if you still have issues.

rinigus's picture

the server providing maps is down again , unfortunately . I expect out will work tomorrow .

DarkTuring's picture

It works now!

rinigus's picture

Great. There is also redundancy in the latest version of the server allowing us to provide maps via two distribution servers. So, if the main server is down, the backup will be asked for the data - it may just take a bit longer for the first connection

naytsyrhc's picture

I always get an error: mapnik not available due to sqlite malformed disk image. Is there a way to repair? Downloaded maps freshly but still the same. Try to store maps on sd card. May that cause the error? Thx for help.

rinigus's picture

I would need a bit more info to help. In particular, there are several SQLite databases involved and I want to be sure where does the error come from. So, here are the questions:

* does it happen to any new Mapnik database or only one in particular? Try to download some small country and see if that works.

* If there is one country in particular, please let me know which. Then I can test it as well

* If it happens to any country, try to make a new directory for maps and see if it helps. You would have to redownload all maps though. There is a "master" database that keeps versions of all downloaded files and if something happened to that (never heard of it though), it could have some strange results. With the new folder, you would start a new "master" database

I am also keeping all on SD card, so that should be fine.

naytsyrhc's picture

Seems to be a problem with all databases. As the directory is totally new an all maps have been downloaded freshly, it seems to be sonething in general. Any debugging possibilities?

rinigus's picture

Its something new, haven't had this issue earlier. We can try to see your session log file:

* Go to Settings, scroll to the the end, enable "Log messages into session log file"

* Accept Settings

* Close OSM Scout Server

* Open OSM Scout Server again

* Close it again (I presume that the errors are logged)

* Copy session log file from .cache/harbour-osmscout-server/harbour-osmscout-server/session.log to somewhere (pastebin?) and send me a link

* Start OSM Scout Server and disable logging in Settings

Let's see if its also error on SD card. For that, enable "libosmscout" profile (this should have smallest files), setup a new folder on internal storage and download some smaller country. Do you get errors again?

To test maps with the smaller country, try to see this country with Poor Maps or modRana. For that, use first online basemap, navigate to country, and then switch over to OSM Scout Server basemap. It will not be as pretty as Mapnik, but should show something

naytsyrhc's picture

Thx for the response and offered help. It somehow healed itself. I removed (unsubscribed) all maps and performed  a cleaning. Afterwards I resubscribed and the map was available.

rinigus's picture

Thank you very much for reporting back! Enjoy using it

naytsyrhc's picture

Thank you for providing this great tool. Another update: when.I installed a new map (that worked) that was only a part of germany. After that I again tried the whole germany map and that again causes the error. The map is quite large (9 GB) and I had two download failures and had to presume download. Maybe the error has something to do with it?

rinigus's picture

In case of full Germany, the issue could be filesystem support for files larger than 4GB. In particular, Mapnik is done via single file which is 6.7GB in this case.

There is a way around it: download Germany by parts. If you use the default profile (mapnik.geocoder-nlp/valhalla), the server will show data from all datasets "glued" together.

In a bit longer term: wait till I release Mapbox GL support for OSM Scout Server. In this new approach, the biggest tile database is below 1GB (0.5GB to be more precise) and it would suit well for getting support of larger territories. I am making good progress with it, but its not ready yet

objectifnul's picture

Is modrana.org down permanently? If so, is there an alternative?

rinigus's picture

Hi, no, its not permanently. However, since it gone down saturday night and its hosted by the research institution, we probably have to wait till monday. At present, there is no fallback server, unfortunately. I could upload to the cloud that I use, but it would probably take about 12 hours due to the partitioning of the datasets. Taking into account that modrana.org will be probably back tomorrow, I presume that its not worth it...

I will look for alternative servers to use as a fallback to make the map distribution more stable.