Menu

Main_Page

Anonymous Guilhem BONNEFILLE Rob Norris Greg Troxel Alexander Poddey Jocelyn
Attachments

Viking is a free/open source program to manage GPS data.

You can import, export and plot tracks, routes and waypoints, show various maps such as OpenTopoMap, OpenStreetMap, Bing Aerial and others.

Create maps using Mapnik.

Download Wikipedia points, OSM Traces or Your Personal OSM Traces for an area on the map.

Create and edit tracks, routes and waypoints and geotag images.

Also create routes via online routers such as brouter or OSRM

Import and export various file types via GPSBabel

See real-time GPS position via GPSD client.

And much, much more... If you're having a hard time visualizing it: check out the [Screenshots], screencasts and then download it to try it out.

It is written in C with the GTK+ 3 toolkit, available for Linux, other POSIX operating systems, and Windows, and is licensed under the GNU GPLv2+.

Version 1.11 (2026-01-11)

Summary of Changes since Version 1.10

  • Return to OpenStreetMap (https://openstreet.org) as the Map Default.
  • Raster tiles from https://opentopomap.org is depreciated.
  • Read support of Garmin .FIT files.
  • SF#135: Support Georef layer image rotation.
  • SF#151: Enable visual status indicator of each tile cache.
  • More support for GPX fields: URL/Link properties.
  • Support reading as much information as read in from invalid GPX files (rather than just giving up).
  • More support for KML properties: snippet, track color, name and description.
  • New TAC analysis for consecutive squares in linear directions.
  • Support daylight times and basic astronomical data using libnova.
  • Support Waypoint proximity alarms.
  • GPX Lap support read only display output in tooltips and a table view.
  • GH#148: Allow horizontal scroll on preferences.
  • GH#152: GeoRef Zoomed in image fast redraw.
  • GH#160: Support reading compressed .xz and .gzip files (for any supported Geodata files within).
  • GH#194: Add Reload Viking file from disk.
  • GH#211: Support opening files in existing running instance via command line '-r'.
  • GH#238: Enable a view of all the Map Ids available.
  • GH#241: Improve Waypoint dialog layout.
  • GH#243: Improved keyboard zoom controls, including Ctrl+'0' to restore default zoom.
  • GH#266: Make Adding New Maps Go On Top.
  • GH#307: Enable showing OSM zoom levels in tooltips.
  • GH#339: Change default download setting to follow all redirects. AKA Fix use of OSM Mapnik.
  • GH#344: Fix printing on Wayland.
  • Use https by default for most data/configurations.
  • Enable running with an alternate configuration directory as specified (on command line).
  • Aggregate layer: add some analysis by 'active days' to accompany per track statistics.
  • Enable per map layer tile cache expiry age.
  • Enable (this) NEWS to be viewed from within the main program.
  • Enable property 'user-agent' for download requests.
  • Github workflow for CI Testing purposes.
  • C23 compatibility.

New Dependencies

  • C++17. For Mapnik rendering support (on by default). Disable with '--disable-mapnik' configure option.
  • Nova Library. Package typically 'libnova-dev' or similar, providing Astronomical data (on by default). Disable with '--disable-nova' configure option.
  • xxd tool. For Debian it is in the 'xxd' package, but other distributions it is in a vim package (since the source code itself is maintained in vim).

Download

News

Help

Self Help

  • Inspect detail about what Viking is (or not) doing to trace faults either with configuration or possibly issues with Viking itself.
  • From version 1.9 onwards there is a Log window that captures messages.
  • Extra debug output can be turned on in the GUI by Help->Debug (equivalent to starting with the '-d' command line parameter).
  • For the most detailed output mode (-dV), this has to be invoked on the command line.
  • In Unix like systems run via the command line with debugging (-d) and/or verbose (-V) options turned on and view the output in the terminal:

    viking -dV
    
  • On Windows use the command prompt and the output must be redirected to a file to capture it - so something like this (assuming a standard location install):

      cd "c:\Program Files\Viking"
      viking.exe -d 2>&1 > "%USERPROFILE%\Desktop\Viking.log"
    

    Then open the log file on your desktop with any text editor program.
    NB If on a 64bit machine the current default install location is "c:\Program Files(x86)\Viking"

Wiki Updating

Currently to edit this Wiki you need permission - contact the Viking mailing list with your SourceForge login ID requesting "editor" status. Then one can login to the Wiki site with your SourceForge ID to make changes.

Development

TODO / Ideas

History

  • Terraserver support is removed since this service is no longer operational.

Related

Main Wiki: Contribute
Main Wiki: Data
Main Wiki: Developers
Main Wiki: FAQ
Main Wiki: IdeaList
Main Wiki: Linux_distribution_packages
Main Wiki: Maps
Main Wiki: MasterHelp
Main Wiki: News
Main Wiki: Releases
Main Wiki: Roadmap
Main Wiki: Roadmap_1.11
Main Wiki: Roadmap_1.3
Main Wiki: Roadmap_1.4
Main Wiki: Roadmap_1.5
Main Wiki: Roadmap_1.6
Main Wiki: Roadmap_1.7
Main Wiki: Roadmap_1.8
Main Wiki: Screencast
Main Wiki: Screenshots
Main Wiki: Source_code
Main Wiki: Tutorials
Main Wiki: User_Interface_Ideas
Main Wiki: Users_Manual
Main Wiki: Version-1.10
Main Wiki: Windows_binaries
Main Wiki: Wine