An Introduction to Prune
Snip and Clip
Have more fun with your GPS data with this easy-to-use Java-based tool.
Pretty much any device with a GPS receiver can save GPS data as GPX files. But what are these files good for? Quite a lot, provided you have a nifty tool like Prune [1]. This application looks deceptively simple, but it packs some rather useful features that can help you get the most out of your GPX files.
Configuring Prune
Prune itself doesn't require any installation. Because the application is written in Java, the only mandatory requirement is the Sun Java Runtime Environment. Prune is distributed as a ready-to-use .jar archive, and you can run it by either double-clicking it or using the java -jar prune.jar command in the terminal. Before you do that, though, you might want to install a few additional packages to extend Prune's default functionality. For example, to enable real-time 3D display of GPS data, you should install the Java 3D libraries [2]. To install the libraries, download the .bin installer and follow the instructions in the README.TXT file.
Another useful addition is the ExifTool utility for handling Exif data in JPEG image files. Prune uses this tool to write geotags to the correlated photos. The ExifTool utility is available in the repositories of many popular Linux distributions, so you can install it with the use of your distro's package manager.
On Ubuntu, you have to install the libimage-exiftool-perl package. If you are using a standalone GPS receiver, you can use Prune to read data directly from the receiver. To enable this feature, you need to install the GPSBabel tool, which is also available in the software repositories of most mainstream Linux distros. Finally, if you want to be able to generate various charts, you should install the gnuplot utility.
Although Prune runs perfectly with default settings, you can override them by creating a .pruneconfig configuration file in your home directory then specifying your own set of custom parameters. For example, with the prune.directory parameter, you can specify the working directory:
prune.directory=/home/user/gps/
Prune supports several languages besides English, and with the prune.languagecode parameter, you can set the default interface language as in the following line:
prune.languagecode=DE
If you prefer to use imperial units instead of metric, you can set the prune.metricunits parameter to n:
prune.metricunits=n
By default, Prune uses the Mapnik OpenStreetMap server, but you can specify another server via the prune.mapserverindex parameter:
prune.mapserverindex=2
In this case, 2 refers to the Opencyclemap server, which displays maps with bicycle paths.
Using Prune
Once it is started, Prune displays an empty canvas, so the first thing you have to do is open a GPX file (see the box titled "What Is GPX?") by choosing File | Open file and selecting the desired GPX file. To enable the background map, click on the Show map icon. This displays the map either from Mapnik or from the server specified in the .pruneconfig file. Also, you can switch to a different map server at any time with View | Set map background.
What Is GPX?
GPX stands for GPS eXchange Format. Based on XML, this format is designed for storing and describing GPS data so it can be accessed by any application that supports the GPX format. A GPX file contains, among other things, information about waypoints (sets of coordinates that identify a point in a physical space), tracks (ordered collections of points), and elevation (height above sea level). If you open a GPX file in a text editor, you'll see that the file's structure consists of a number of nodes, wherein each node represents a waypoint. Each node contains a waypoint latitude and longitude, a timestamp, and an elevation. This information can be presented in a meaningful way by any application that provides support for the GPX format, including Prune. Many GPS devices currently on the market allow you to export GPS data in the GPX format, but it's still a good idea to double-check to see whether the device you are about to buy supports GPX. Otherwise, your options to get GPS data out of the device will be rather limited.
Editing Track Points and Creating Waypoints
The GPS track displayed on the map consists of track points, and the Track details section in the left pane displays the total number of points in the current track (Figure 1). Below the Track details section is a slider that lets you move from point to point.
By clicking on a specific point, you can view detailed information about it. (To zoom in and locate individual points, use the Zoom buttons on the map or the mouse scroll wheel.) From here, you can view information for the selected point in the Point details section in the pane on the right. This information includes latitude, longitude, altitude, time, and speed. Prune also allows you to edit the point's data, which comes in handy when you need to make corrections to the track. To edit the point, choose Edit | Edit point, select the property you want to edit, and press the Edit button (Figure 2).
The Edit waypoint name command lets you assign a name to the selected point. This automatically adds the point to the Waypoints list in the left pane, which acts as a bookmark list.
At any time you can locate the "bookmarked" point on the map by selecting it in the Waypoints list. The Edit menu contains a few commands that allow you to tweak the track. The Compress track command, for example, allows you to streamline the track by removing redundant points, and the Delete point command lets you delete individual points on the track.
The Select menu has commands that allow you to specify ranges. For example, if you want to know the total distance of the GPS track, choose the Select all command to select the entire track. Then you can see the range information in the Range details section in the right pane.
Also, you can specify a range for a specific track segment, which can be useful if you need to get information about a specific part of the route (Figure 3). For example, you can use this feature to compare your average speed on a flat stretch of the route to your average speed when you move uphill. Speaking of uphill, the pane directly below the map contains an altitude profile of the current route, and clicking anywhere on the profile automatically selects the related point on the map.
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
First Release Candidate for Linux Kernel 6.14 Now Available
Linus Torvalds has officially released the first release candidate for kernel 6.14 and it includes over 500,000 lines of modified code, making for a small release.
-
System76 Refreshes Meerkat Mini PC
If you're looking for a small form factor PC powered by Linux, System76 has exactly what you need in the Meerkat mini PC.
-
Gnome 48 Alpha Ready for Testing
The latest Gnome desktop alpha is now available with plenty of new features and improvements.
-
Wine 10 Includes Plenty to Excite Users
With its latest release, Wine has the usual crop of bug fixes and improvements, along with some exciting new features.
-
Linux Kernel 6.13 Offers Improvements for AMD/Apple Users
The latest Linux kernel is now available, and it includes plenty of improvements, especially for those who use AMD or Apple-based systems.
-
Gnome 48 Debuts New Audio Player
To date, the audio player found within the Gnome desktop has been meh at best, but with the upcoming release that all changes.
-
Plasma 6.3 Ready for Public Beta Testing
Plasma 6.3 will ship with KDE Gear 24.12.1 and KDE Frameworks 6.10, along with some new and exciting features.
-
Budgie 10.10 Scheduled for Q1 2025 with a Surprising Desktop Update
If Budgie is your desktop environment of choice, 2025 is going to be a great year for you.
-
Firefox 134 Offers Improvements for Linux Version
Fans of Linux and Firefox rejoice, as there's a new version available that includes some handy updates.
-
Serpent OS Arrives with a New Alpha Release
After months of silence, Ikey Doherty has released a new alpha for his Serpent OS.