5 if [ "$1" != "configure" ]
10 ### Change old default values to new default values
12 CONFIG_FILE="/home/user/.config/kde.org/Marble Desktop Globe.conf"
13 if test -e "${CONFIG_FILE}"
16 -e 's/^sideBar=true$/sideBar=false/' \
17 -e 's/^volatileTileCacheLimit=30$/volatileTileCacheLimit=6/' \
18 -e 's/^projection=0$/projection=2/' \
19 -e '/^distanceUnit=/d' \
20 -e 's/^persistentTileCacheLimit=300$/persistentTileCacheLimit=0/' \
22 chown user:users "${CONFIG_FILE}"
25 ### Migrate cached openstreetmap tiles to shared directory
27 # The OSM tile download location in Marble 1.0.x and earlier
28 OSM_DIR_10="/home/user/MyDocs/.local/share/marble/maps/earth/openstreetmap"
30 # The OSM tile download location in Marble 1.1 and later
31 OSM_DIR_11="/home/user/MyDocs/.maps/OpenStreetMap I"
33 # The OSM theme .dgml file
34 OSM_DGML="/opt/marble/share/marble/data/maps/earth/openstreetmap/openstreetmap.dgml"
36 # A file used as a flag to indicate a previous migration
37 MIGRATED="${OSM_DIR_10}/.migrated"
39 # Verify we have the .dgml file and can write to it (required)
40 test -w "${OSM_DGML}" || { echo "DGML file ${OSM_DGML} not existant/writable."; exit 1; }
42 # Check whether the tiles were previously migrated. In that case there's nothing to do
43 test -e "${MIGRATED}" && exit 0
45 # If the migration has to move files, ask the user to skip it since it can
46 # take some minutes to finish
48 test -e "${OSM_DIR_10}" && test -e "${OSM_DIR_11}" && { maemo-confirm-text "Enable OpenStreetMap Data Sharing" /opt/marble/share/marble/data/migration-warning.txt || exit 0; }
51 mkdir -p "${OSM_DIR_11}"
52 if test -d "${OSM_DIR_10}"
54 # Cached tiles from an old Marble installation exist and must be migrated
55 for x in ${OSM_DIR_10}/[0-9]*
57 test -e "${x}" || continue
59 if test -e "${OSM_DIR_11}/${dx}"
61 # Tiles /x/ were downloaded both in Marble and another application
64 test -e "${y}" || continue
66 target="${OSM_DIR_11}/${dx}/${dy}/"
67 if test -e "${target}"
69 # Tiles /x/y/ were downloaded both in Marble and another application. Move each /x/y/z
70 mv "${y}"/[0-9]*.png "${target}"
73 # Target dir does not exist yet, so we can move it over (much quicker)
74 mv "${y}" "${OSM_DIR_11}/${dx}"
79 # Target does not exist yet, so we can move it over (much quicker)
80 mv "${x}" "${OSM_DIR_11}/"
85 # Delete now empty directory
86 test -d "${OSM_DIR_10}/" && rmdir "${OSM_DIR_10}/" || true
88 # If files are left in the old directory, leave a flag to avoid running
89 # the migration again. This only happens if the user created custom files in
90 # the OSM cache directory
91 test -d "${OSM_DIR_10}/" && touch "${MIGRATED}"
93 # Finally, change the download location in the .dgml file. Also needed for new installations
94 sed -i "s@<sourcedir format=\"PNG\"> earth/openstreetmap </sourcedir>@<sourcedir format=\"PNG\"> ${OSM_DIR_11} </sourcedir>@" "${OSM_DGML}"