geo-*:   Rick Richardson's Linux tools for geocaching

Tarball last modified: Wed Nov 19 19:20:37 2014 EST - ChangeLog

Screenshots

Description

Here are various tools for geocaching. Some are designed to turn the clickly-clicky-scroll-clicky-clicky messes that are geocaching.com, opencaching.com, opencaching.us and navicache.com into a set of tools which you can use in a batch or cron mode to establish your normal caching routine, backup your caches and cache logs, etc. Others are used to enter new waypoints, a free geocoder, create custom maps of waypoints, etc.

These tools work on Linux and CygWin on Win/XP and also work on Mac OS X. I have no plans to port them to native Windows, and to protect your karma I urge others to refrain from doing so.

All of the tools that were written by me are released into the public domain, with no copyright or license restrictions whatsoever. Other tools, like gpx2html and geodetics.html, are copyright by their original author and may have license restrictions as indicated in the source code.

Any of the tools will print a usage summary with "-?", e.g.

    $ geo-nearest -?

Install

Click the link, or cut and paste the whole command line below to download the tools:
    $ wget http://geo.rkkda.com/geo-14-11-19-18-20-37.tar.gz

Now unpack it:

    $ tar zxf geo-*.tar.gz
    $ cd geo

Now compile and install it:

Compile:
    $ make

Install:
    $ make install			# to install in $HOME/bin
	OR
    $ su	OR	$ sudo sh
    # PREFIX=/usr make install		# to install in /usr/bin...
    # make install-man			# ... and the manual pages

Create a $HOME/.georc file with at least these lines in it:
    PASSWORD="your-gc.com-password"
    USERNAME="your-gc.com-username"
    LAT=n44.56.850	# Your home latitude in decimal or MinDec degrees
    LON=w93.29.465	# Your home longitude in decimal or MinDec degrees

Questions and Support

Click here for the forum where you can ask a question, submit a bug report, etc.

Documentation

You can read the manual pages for more information.
Tools for accessing gc.com...
	(SO) : this program works only for gc.com subscribers

	geo-found	List caches found (by you or someone else)
	geo-nearest	List the nearest caches to a location
	geo-newest	List the newest caches in a state
	geo-placed	List caches placed (by you or someone else)
	geo-keyword	List caches by keywords.
			All of the above can enter the waypoints into the
			GpsDrive MySQL database.
	geo-html2gpx	Convert a gc.com printable web page (such as the
			above commands can produce with the -H option) to
			a GPX file.

	geo-count	Count caches found
	geo-usernum	Determine gc.com user number (used by geo-count)

(SO)	geo-gid		Retrieve cache info by GCxxxx waypoint name
(SO)	geo-gpx		Retrieve GPX file by GCxxxx waypoint name
(SO)	geo-demand	Request an immediate pocket query email
(SO)	geo-gpxmail	Process PQ email using gpx2html
(SO)	geo-gpxprocess	Process PQ download(s) using geo-pqdownload and gpx2html
(SO)    geo-pqdownload  Perform a Pocket Query download(s)
(SO)	geo-myfinds	Schedule a Pocket Query containing your finds.
(SO)	geo-rehides	From your found.gpx file, produce a GPX file of rehides
(SO)	geo-correct-coords Correct the coords of cache(s)
	geo-density	Compute cache density of an area

	gpx2html	Lightly hacked converter from GPX to HTML
			Originally by fizzymagic (v1.90).  My version
			fixes issues with HTML in the cache descriptions, adds
			sort by latest log date for easy perusing of recent
		        cache activity, and fixes bug in GC[1-9]xxxx.
	gpx-loghistory	Print all logs in reverse cron order.
	geo-pqs		Figure out what PQs to run to get an entire state.
	geo-state	Convenience script;  geo-state -? gives usage.
	geo-sdt		Replace Size, Difficulty, Terrain from a PQ file
	geo-suffix	Replace name with name/TypeSizeDiffTerr/gcid/LatLon
	geo-uniq        Unique the tabsep database
			 
Tools for accessing opencaching.com...
	oc-nearest	List the nearest caches to a location
	oc-newest	List the newest caches in a state
			EXPERIMENTAL, subject to drastic changes

Tools for accessing opencaching.us (and .nl, .de,...) ...
	ok-nearest	List the nearest caches to a location
	ok-newest	List the newest caches in a state
			EXPERIMENTAL, subject to drastic changes

Tools for accessing navicache.com...
	nc-nearest	List the nearest caches to a location
	nc-newest	List the newest caches in a state
			EXPERIMENTAL, subject to drastic changes

Tools for general use
	geo-2gpsdrive	Enter a waypoint file into the GpsDrive MySQL database
	geo-2tangogps	Enter a waypoint file into the tangoGPS or FoxtrotGPS
			sqlite database
	geo-circles	Compute the intersection of two circles on the earth
	geo-trilateration Compute the intersection of three circles on the earth
	geo-triangulation Compute the point by two or three bearings
	geo-intersect   Compute the intersection of two line segments
	geo-polygon	Compute the centroid of a polygon
	geo-gccode2id   Convert GC codes to the decimal equivalent
	geo-id2gccode   Convert decimal IDs to GC codes
	geo-loran-c	Brute force solve of Loran-C problems
	geo-project	Project a waypoint
	geo-code	Geocode an address
	geo-dist	Compute distance along a list of waypoints.
	geo-waypoint	Enter a waypoint into the GpsDrive MySQL database
	geo-map		Create a map with waypoints plotted on it
			These CANNOT be used for publication unless the
			selected map source is the tiger, topographic, or
			aerial map server!
	geo-firefox     Display a map of a point using MapQuest aerial photos
	gpx-finders	Output the finders from a GPX file.
	gpx-merge	GPX file merge.
	gpx-photos	Fetch hi-res aerial photos of all caches in a GPX file
	gpx-stats	Compute stats from a GPX file.
	gpx-unfound	Filter a GPX file removing found caches.

	geodetics.html	A modified version of Gary Nicholson's javascript
			Geodetics Calculator.

Tools for coordinate conversions
	geo-coords	Convert lat/lon from one format to another
	geo-incomplete-coords - Print out incomplete coordinates
	ll2maidenhead	Lat/long to Maidenhead (Grid Squares)
	maidenhead2ll	Maidenhead (Grid Squares) to Lat/long
	ll2osg/osg2ll	To/From lat/lon to British National Grid
	ll2rd/rd2ll	To/From lat/lon to RD (Dutch)
	ll2usng/usng2ll	To/From lat/lon to US National Grid
	ll2utm/utm2ll	To/From lat/lon to UTM

Tools for manipulating Mapopolis place guide data
	geo-poi		Search place guide (*.pdb or *.csv) for places
	pgpdb2txt	Convert a place guide to plain text

Tools for use by the MN Geocaching Association
	mngca		Count caches found/placed by MnGCA members
	mngca-logs	Create web pages of recent area logs from GPX files
	mngca-newmap	Create newest cache maps for Minnesota

Miscellaneous
	adddigits	Add individual digits in a number
	addletters	Add all letters: a=1, b=2, c=3, ... z=26
	decimal2cryptogram Anything to cryptogram
	smilies2cryptogram Geocaching 'smilies' to cryptogram
	lethist		Compute letter histogram
	braille2text	Braille to text translator
	geo-alphametic	Solve a math puzzle in which letters stand for digits
	geo-char-at	Pick the char at position "n"
	geo-phone2word	Convert numerical "phone" to a word(s)
	geo-sub		Do a substitution (caesar) cipher for all shifts
	geo-text2qrcode	ASCII text to QR barcode converter
	geo-wordsearch	Perform a Word Search
	geo-zipcode	Translate zip code to city and state
	mayan-long-count Mayan long count
	navaho-code-talkers Translate Navaho into English
	reverse-montage	reverse (split up) montage image
	tap-code	Tap Code or Polybius Square decoder

gpsbabel

Use the latest gpsbabel (1.4.3+):
    $ svn checkout http://gpsbabel.googlecode.com/svn/trunk/gpsbabel
    $ cd gpsbabel
    $ ./configure --prefix=/usr
    $ make
    # make install

Mac OSX Support

Do this FIRST:

Download and install MacPorts:
    http://www.macports.org/

    $ PATH=$PATH:/opt/local/bin
    $ sudo port selfupdate
    $ sudo port install gsed
    $ sudo port install coreutils
    $ sudo port install lynx
    $ sudo port install ImageMagick
    $ sudo port install gawk
    $ sudo port install ghostscript 
    $ sudo port install dos2unix 
    $ sudo port install p5-xml-twig 
    $ sudo port install p5-datetime
    $ sudo port install p5-html-parser

Download and install gpsbabel:
    http://www.gpsbabel.org/

    $ wget http://distfiles.macports.org/gpsbabel/gpsbabel-1.4.4.tar.gz
    $ tar zxf gpsbabel-*.tar.gz
    $ cd gpsbabel-1.4.4
    $ ./configure --with-libexpat=/opt/local/lib --with-expathdr=/opt/local/include
    $ make
    $ sudo make install

CygWin Support

Install CygWin as per www.cygwin.com. For the easiest (but longer) install experience, just install everything. If you choose to install a subset, you will need to install the base package plus these other packages (this list might be incomplete):

    ImageMagick         bash            bc              binutils
    cpio                curl            curl-devel      gawk
    gcc                 ghostscript     grep            lynx
    make                sh-utils        sharutils       wget
    expat               units

NOTE: curl/libcurl has a bug with 1.34.0, either downgrade to 1.33.0 or
upgrade to 1.34.1+.
Download and install gpsbabel:
    $ wget http://distfiles.macports.org/gpsbabel/gpsbabel-1.4.4.tar.gz
    $ tar zxf gpsbabel-*.tar.gz
    $ cd gpsbabel-1.4.4
    $ ./configure --without-libusb
    $ make
    $ make install
        -OR-
    $ cp gpsbabel.exe /usr/bin

Contribute

<-- Click here to support the development of geo-* tools.
Any amount is appreciated.

View My Stats
Last modified: Sat Nov 15 10:37:15 2014 EST