After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 708799 - Download maps to local storage for later viewing
Download maps to local storage for later viewing
Status: RESOLVED OBSOLETE
Product: gnome-maps
Classification: Applications
Component: general
unspecified
Other Linux
: Normal enhancement
: ---
Assigned To: gnome-maps-maint
gnome-maps-maint
Depends on:
Blocks:
 
 
Reported: 2013-09-26 03:14 UTC by glittah
Modified: 2018-03-26 12:30 UTC
See Also:
GNOME target: ---
GNOME version: Unversioned Enhancement


Attachments
Add file tile source (21.11 KB, patch)
2015-08-12 13:29 UTC, Jonas Danielsson
none Details | Review
Add --offline switch to open local tile directory (5.65 KB, patch)
2015-08-12 13:29 UTC, Jonas Danielsson
none Details | Review
Add file tile source (21.11 KB, patch)
2015-08-12 13:33 UTC, Jonas Danielsson
none Details | Review
Add --offline switch to open local tile directory (5.23 KB, patch)
2015-08-12 13:33 UTC, Jonas Danielsson
none Details | Review
Add file tile source (21.78 KB, patch)
2015-08-12 14:24 UTC, Jonas Danielsson
none Details | Review
Add --local switch to open local tile directory (5.62 KB, patch)
2015-08-12 14:24 UTC, Jonas Danielsson
none Details | Review
Add file tile source (21.78 KB, patch)
2015-08-12 14:32 UTC, Jonas Danielsson
none Details | Review
Add --local switch to open local tile directory (5.62 KB, patch)
2015-08-12 14:32 UTC, Jonas Danielsson
none Details | Review

Description glittah 2013-09-26 03:14:24 UTC
Gnome Maps lacks the ability to download maps to local storage to conserve bandwidth later (if you're on a metered mobile connection, for instance).

- This is a feature that would make a user more likely to use Maps instead of opening a web browser to Google or OSM since Maps would always be available for use because it wouldn't require an always-on internet connection.

- This wouldn't add much in the way of the config menu/option clutter.  It could just be a button in the main window to download the map (w/ modal dialogue for radius?), and a config menu option group for when to use local data vs. fetching from OSM, and if/when to auto-update the local map.

- A visible icon might be shown in the main window if the map is known to be out-of-date.
Comment 1 James 2013-09-26 07:05:40 UTC
(In reply to comment #0)
> Gnome Maps lacks the ability to download maps to local storage to conserve
> bandwidth later (if you're on a metered mobile connection, for instance).
> 
> - This is a feature that would make a user more likely to use Maps instead of
> opening a web browser to Google or OSM since Maps would always be available for
> use because it wouldn't require an always-on internet connection.
> 
I can't agree more! (glittah was kind enough to write this bug up in response to an internet comment I made)

Looking at past devices, the N900 Maemo Maps application had this feature. You had the option to download data per continent IIRC. North American users could limit their download to the X GB for North America if they decided they didn't need offline European map data and vice-versa. A per country option would be great too, but I'm happy to deal with the entire volume if necessary. See:

http://wiki.openstreetmap.org/wiki/Planet.osm#Downloading

Cheers!
Comment 2 Andreas Nilsson 2013-09-26 09:28:18 UTC
We (the current maps developers) have been talking about this idea in the past,
but it's currently not on the 3.12 roadmap, since we have to fix a bunch of
more basic things first. https://wiki.gnome.org/Apps/Maps/Roadmap

That said, I think this is a great idea and if it's something someone wants to
hack on, I'm more than happy to help with the design part of it.

Ḯ've linked to this bug report from our roadmap page.
Comment 3 James 2013-09-26 10:13:47 UTC
(In reply to comment #2)
> We (the current maps developers) have been talking about this idea in the past,
> but it's currently not on the 3.12 roadmap, since we have to fix a bunch of
> more basic things first. https://wiki.gnome.org/Apps/Maps/Roadmap
Awesome, can't wait to have the offline-maps feature!

> 
> That said, I think this is a great idea and if it's something someone wants to
> hack on, I'm more than happy to help with the design part of it.
Just had a quick look at the code. Will GPL3+ patches be accepted? I hate to have to ask, sorry. Any reason why a new GNOME app isn't 3+ from the get go ?

> 
> Ḯ've linked to this bug report from our roadmap page.
Great! I added a few extra comments from what we wrote above.
Comment 4 Zeeshan Ali 2013-09-26 12:03:39 UTC
As Andreas already said, this is very much in our roadmap and many people have asked for it (kudos to be the first one to create a bug about it). I actually would want to work on this in 3.12 cycle but I'm afraid I might not be able to get any time for it.

One issue with implementing this that Mattias has been rightfully stressing about is the amount of data could easily be way too much due to our (and libchamplain's) current direct usage of pre-rendered tiles. The data for a single big city like Berlin could become GBs. That said, implementing client-side rendering would be a big project and currently none of us have time for that.

Nonetheless, this should not stop us from implementing this feature but perhaps we could warn the user if he/she chooses a too large area to cache.

Oh and BTW, we already do have caching of maps in libchamplain, its just implicit and user does not have direct control over which areas should remain in cache and which not.
Comment 5 Jonas Danielsson 2013-09-26 18:29:05 UTC
I would also like to work on this, if time allows.

Maybe a start would be to break down what needs to be done and where. In a nice way so that it's easy to contribute to parts of the solution.

I guess patches need to go to libchamplain, Maps and I guess maybe geocode-glib to make this happen in a way that would be nice.
Comment 6 glittah 2013-09-27 02:15:15 UTC
I haven't had much time today to work on this, but I did notice that OSM does use diffs on some of their mirrors.  This would make updating local storage much more convenient, especially on slow and metered connections.
Comment 7 glittah 2013-09-27 02:18:19 UTC
Sorry, forgot to add link:

http://wiki.openstreetmap.org/wiki/Planet.osm#Downloading
Comment 8 Zeeshan Ali 2013-09-27 03:00:20 UTC
(In reply to comment #7)
> Sorry, forgot to add link:
> 
> http://wiki.openstreetmap.org/wiki/Planet.osm#Downloading

Isn't that about the vector data? We are currently using pre-rendered tile data in the form of PNGs and as I said in comment#4, moving to vector-data (i-e client-side rendering) will be big project to undertake.
Comment 9 glittah 2013-09-27 03:20:48 UTC
Ahh, the perils of skimming.  I'll do some more serious research when I'm not so busy.  Good to keep in mind if/when client side rendering materializes.
Comment 10 Roman Polach 2013-09-27 09:42:52 UTC
Could be LibMemphis https://trac.openstreetmap.ch/trac/memphis/wiki/LibMemphis
used for client-side OSM vectors rendering?
Comment 11 Zeeshan Ali 2013-09-27 14:00:56 UTC
(In reply to comment #10)
> Could be LibMemphis https://trac.openstreetmap.ch/trac/memphis/wiki/LibMemphis
> used for client-side OSM vectors rendering?

Surely but we contacted the author and seems this is more or less abondonware (even the link above was broken for a long time until a few days ago) unless someone steps up to develop and maintain it. We already have a memphis-based source in Champlain even but we were thinking of removing for now because of libmemphis being unmaintained.

If i understood correctly Mattias has look into that and he still though that its going to be a very big project. He can shed more light on that.
Comment 12 Mattias Bengtsson 2013-09-27 22:50:56 UTC
I haven't looked at Memphis much at all, I tried the demo included in Champlain but I couldn't even get it to render a map. No idea if I did anything wrong or not.
Comment 13 Frédéric Parrenin 2014-12-18 10:17:36 UTC
I will add my 0.02$ here.
I saw a proposition to download a continent/country/city as a whole.
Another possibility would be to let the user draw a rectangle on the map and to download all the tiles to a certain zoom level (also chosen by the user), with an evaluation of the amount of storage necessary.
I think gmaps on android implements something like that.
Comment 14 Jonas Danielsson 2015-03-24 08:39:57 UTC
Some thoughts on this jotted down in wiki: https://wiki.gnome.org/Apps/Maps/ClientSideRendering

We will try to make a push towards this in the 3.18 cycle.
Comment 15 icewater 2015-06-28 16:13:04 UTC
It would be very useful if it were possible to save a list of directions to local storage (as a PDF file for example).  

Currently (3.16.2) it doesn't seem possible even to copy/paste the directions list.
Comment 16 Frédéric Parrenin 2015-06-28 16:45:29 UTC
This is another issue.
Please fill a new bug report
Comment 17 nit 2015-07-07 08:46:51 UTC
Just for the record 'caus I was surprise not to see it on the wiki page or here, osmand (http://osmand.net/ https://github.com/osmandapp/Osmand https://f-droid.org/repository/browse/?fdfilter=osmand&fdid=net.osmand.plus) allow on android the download vectorised map and render it offline + offline routing.
If I remember it's GPLv3, so would'nt be possible to use some of osmand code to implement this feature here ?
Comment 18 Jonas Danielsson 2015-08-12 13:29:46 UTC
Created attachment 309143 [details] [review]
Add file tile source
Comment 19 Jonas Danielsson 2015-08-12 13:29:53 UTC
Created attachment 309144 [details] [review]
Add --offline switch to open local tile directory

If one have access to a directory structure such as

my_tiles//zoom-level/x/y.extension

Then one can point maps to it as:

$ gnome-maps --offline /path/to/my_tiles

And view them, online or offline.
Comment 20 Jonas Danielsson 2015-08-12 13:31:11 UTC
This is a start of sorts. Be able to view tiles one has already downloaded in some sort of bundle.

This needs review it was done a bit hastily. But with your help we could get it into 3.18.
Comment 21 Jonas Danielsson 2015-08-12 13:33:15 UTC
Created attachment 309145 [details] [review]
Add file tile source
Comment 22 Jonas Danielsson 2015-08-12 13:33:21 UTC
Created attachment 309146 [details] [review]
Add --offline switch to open local tile directory

If one have access to a directory structure such as

my_tiles//zoom-level/x/y.extension

Then one can point maps to it as:

$ gnome-maps --offline /path/to/my_tiles

And view them, online or offline.
Comment 23 Jonas Danielsson 2015-08-12 14:24:14 UTC
Created attachment 309154 [details] [review]
Add file tile source
Comment 24 Jonas Danielsson 2015-08-12 14:24:25 UTC
Created attachment 309155 [details] [review]
Add --local switch to open local tile directory

If one have access to a directory structure such as:
  my_tiles//zoom-level/x/y.extension

Then one can point maps to it as:
  $ gnome-maps --offline /path/to/my_tiles

And view them, online or offline.
Comment 25 Jonas Danielsson 2015-08-12 14:32:04 UTC
Created attachment 309157 [details] [review]
Add file tile source
Comment 26 Jonas Danielsson 2015-08-12 14:32:12 UTC
Created attachment 309158 [details] [review]
Add --local switch to open local tile directory

If one have access to a directory structure such as:
  my_tiles//zoom-level/x/y.extension

Then one can point maps to it as:
  $ gnome-maps --offline /path/to/my_tiles

And view them, online or offline.
Comment 27 Jonas Danielsson 2015-08-12 14:32:56 UTC
This can be tested by:

$ jhbuild run gnome-maps --local $HOME/.cache/champlain/osm-mapquest
Comment 28 GNOME Infrastructure Team 2018-03-26 12:30:09 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to GNOME's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/gnome-maps/issues/1.