GpsPrune is available to download either as compiled jar (just the runnable code) or as source code (the entire java source) if you want to compile it yourself. The latest released version is version 18, from July 2015. For the details of the new features, see what's new.
Runnable code (1.1 MB)
Source code (524 kB)
Update: For those who need or want a version of GpsPrune without the exif reading libraries included, there is now such a version available on request. However it then does require a separate version of
libmetadata-extractor (at least version 2.7.2) both to compile GpsPrune and to run it. (This was done for Debian so that they can reuse the
libmetadata-extractor from the existing package.)
For special linux packages for OpenSuse, Mandriva, Debian, Ubuntu and Arch, see the details below.
There is no installation. Simply download the jar file to your machine.
If you have associated jar files with java already, then you can just double-click on the jar file to run it. If not, you can right-click on the jar file and select "open with..." and then "Java platform" (or something similar).
Alternatively you can use the command line to launch the jar, like this:
java -jar gpsprune_18.jar
But remember you must include the whole path to the GpsPrune jar file. To make it easier, you can create a shortcut on your desktop or menu to call the above command. Or you can set up a bash script to call it (see below), so you just have to type "gpsprune" to run it.
GpsPrune should automatically select the language based on your system settings - but remember that only the languages AF, CZ, EN, DE, DE_ch, ES, FR, HU, IT, JA, KO, NL, PL, PT, RO, RU and ZH are currently supported. A handful of other languages are partially supported. If you want to override these settings and select the language yourself, you can do this with an extra parameter:
java -jar gpsprune_18.jar --lang=DE
Or you can use the menu option "Settings -> Set language" to choose another language, save your settings and then restart GpsPrune.
If you have a linux system, you may find it easier to install GpsPrune directly from your built-in repositories rather than use the downloads from this page. The advantage is that it's a bit easier to install and all the dependencies can be installed automatically. The disadvantage is that you might be getting an older version of GpsPrune from the repositories as it can take a while for it to go through the process.
There are a variety of package formats for the different distributions:
If you have an RPM-based linux system, like OpenSuse or Fedora or Mandriva, you may want to have a look at the OpenSuse build service - under "Application:GEO" they have rpms (currently at 15.2), source rpms and also one-click meta-package installers.
In theory this rpm should make it easier for any rpm-based linux distribution to include it in their own repositories, making it much simpler to find and install, but I haven't heard of any such plans yet. The rpm from the build service installs fine on OpenSuse 11.2 using the OpenJDK.
Thanks to the Debian people, there is a package of GpsPrune for Debian linux. Version 17 is available in Jessie (stable) and the recent version 17.2 is now in Testing (Stretch) and also (surprisingly) in Jessie-Backports.
The package is called
gpsprune. Just install the package using the regular "add software" gui, and the dependencies will get installed too, everything you need (except maybe
gnuplot-x11 which can then be easily added). This includes a java runtime such as OpenJDK, and
libmetadata-extractor-java, and even the
libjava3d-java. Or if you prefer the command line, just type (as root)
aptitude install gpsprune .
Once it's installed, you get a menu entry for "gpsprune" in the "Science" menu, or you can launch it from a console with
This also works if you're running Elive, just download the above packages from Debian's repositories and install them with
For the current release of Ubuntu, there is also a gpsprune package, taken from Debian's package. So now all you need to do is search in the "add software" tool for "gpsprune", click the install button and you're done! It looks like it's installing a huge package, but that's only because it's automatically pulling in the (optional) dependencies such as gpsbabel, exiftool and gnuplot. Version 15.1 is in the official repositories for Salamander and Tahr (the latest LTS release of Ubuntu), 16.3 is available for Unicorn, and 17.1 for Vervet.
There is apparently also a package of Prune for Arch linux, but I haven't had chance to test it yet. It seems to be just a wrapper around the binary jar file, including a desktop file. If you're interested, see the Arch User Repository.
There's also a similar wrapper for Gentoo linux, which again just seems to download the binary from this site and add a few shortcuts and dependencies. There's a so-called ebuild attached to this bug report, but I've no idea how one would install such a thing.
Also for BSD users there is a package of Prune at freshports.org, currently at version 17.2. I haven't had chance to test this one either.
Version 18 contains a number of new features, most important of which are the new autoplay for automatically scrolling through your track, online services such as peakfinder, mapillary, panoramio and opencaching, and a function for automatically identifying uphill sections of ski tracks and marking them for deletion. For full details on all the changes since version 17.2, see What's new.
Up until version 12.1, GpsPrune was made available under the name "Prune". Starting with version 13, it's called "GpsPrune". However, it's not a split, it's not a fork, it's not a change of ownership or anything like that. It's just a name change.
The reason behind it is that the completely unrelated program
graphviz includes an executable called
prune as one of its many files. This meant that when Prune was submitted to Debian for packaging, they couldn't call it "Prune" because it would conflict with the graphviz file. That's why Debian (and subsequently Ubuntu) have called the package "
In order to reduce the confusion of both names being used, it was decided to call it "GpsPrune" everywhere.
Volunteers provide most of the language translations for GpsPrune, and every time a version of GpsPrune is released, the latest version of the translations is taken and included in the jar file. If the translations are improved after GpsPrune has been released, these can be made available in a separate text file, and then specified in the command used to launch GpsPrune.
Currently, all these translations (apart from the very incomplete ones below) are included in version 18.
There are a few other language packs available which are still under development. These hold the minimal Farsi and Indonesian texts, and the new languages Danish and Swedish. The files are here if you want to use them, but they only cover between 6% and 11% of the texts used by GpsPrune, so most of the texts still appear in English.
If you want to use one of these language packs, just save the text file to your machine (preferably in the same directory as the GpsPrune jar file), and then specify the location of this file with an extra parameter when you launch the program, for example:
java -jar gpsprune.jar --langfile=gpsprune_farsi_texts.txt
You can also select a language file using Settings->Set language, and as long as you save your settings (Settings->Save settings), it will be used the next time GpsPrune is started.
See the dependencies page for how to get the additional bits of software to extend GpsPrune's functionality. These include the Java runtime, the Java3d libraries for real-time 3d display, Povray for rendering of 3d images, Exiftool for saving coordinates to exif information of jpegs, GPSBabel for communicating with GPS receivers, and gnuplot for drawing charts of altitudes, speeds etc.
Of course any suggestions or contributions, especially multi-lingual translation expertise, would be very gratefully received! Please see the translation wiki for details on how to help with this.