Apologies for naive questions from an Etrex user ... what does it do and how/why would I use it?
It uploads GPX files to strava in a conveniently *nix-ish way, without having to use the website or any of the Garmin tools that aren't available on Linux.
Probable use cases:
1) You're a Linux desktop user who prefers to do things at the command line rather than mousing around on websites.
2) You want to automate uploads to Strava from a script for some reason (eg. maybe you want to batch process a historical archive of GPX files).
3) You could use it as a component in some clever workflow (eg. you could email yourself a GPX from your mobile device while touring, some script picks it up, saves a copy in your archive and uses this script to upload it to Strava).
4) And I admit this isn't entirely clear in the readme: You have an eTrex 30 and want Strava to use the device's elevation readings, rather than extrapolating them from a map. This script spots that a GPX has come from an eTrex 30 and appends " with barometer" to the relevant field before uploading (see 'Device and Elevation Data' on
https://developers.strava.com/docs/uploads/ for details). Having one tool to do this and the upload in a single action is much easier than faffing about with sed or a text editor and then uploading manually via the website.
TBH, it's mostly one of those "if you have to ask, you probably don't need it" things.