# Install garmintools with Homebrew, dnf, Nix

Interface to the Garmin Forerunner GPS units. Version 0.10 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:garmintools
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install garmintools
```

  Evidence: local Homebrew formula metadata

### Linux

- dnf (92%):

```sh
sudo dnf install garmintools
```

  Evidence: Fedora Rawhide package metadata: garmintools from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#garmintools
```

  Evidence: nixpkgs package indexes: pkgs/by-name/ga/garmintools/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:garmintools
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/garmintools>
- **Version:** 0.10
- **Source summary:** Interface to the Garmin Forerunner GPS units
- **Homepage:** <https://code.google.com/archive/p/garmintools/>
- **Repository:** <https://code.google.com/archive/p/garmintools/source>
- **Upstream docs:** <https://code.google.com/archive/p/garmintools>
- **License:** GPL-2.0-or-later
- **Source archive:** <https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/garmintools/garmintools-0.10.tar.gz>
- **Generated:** 2026-07-08T18:08:21+00:00

## Executables

- garmin_dump (cli)
- garmin_gchart (cli)
- garmin_get_info (cli)
- garmin_gmap (cli)
- garmin_gpx (cli)
- garmin_save_runs (cli)
- garmin_dump (alias)
- garmin_gchart (alias)
- garmin_get_info (alias)
- garmin_gmap (alias)
- garmin_gpx (alias)
- garmin_save_runs (alias)

## Dependencies

- libusb-compat

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_big_sur, arm64_linux, arm64_monterey, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, big_sur, catalina, monterey, sonoma, ventura

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 0.10
- Local data: ok
- Upstream repository: https://code.google.com/archive/p/garmintools/
- info: No package-manager update timestamp was available.
- info: Release/tag comparison is only available for GitHub repositories.
## Project history and usage

garmintools is a C utility suite for Linux users communicating with Garmin Forerunner GPS devices over USB.

### Project history

The official source archive says implementation began on 30 December 2006. Dave Bailey wrote the software for his Garmin Forerunner 305 after finding that gpsbabel did not expose the Forerunner run and lap data workflows he wanted from the command line.

The 0.10 source archive includes utilities such as garmin_get_info, garmin_save_runs, garmin_dump, garmin_gmap, garmin_gchart, and garmin_gpx, plus a libusb-based C API in src/garmin.h.

### Adoption history

The project reflects the mid-2000s Linux hardware-support pattern: vendor devices, documented USB protocols, libusb, and command-line tools built by users to recover data workflows missing from official desktop software. Later package availability in Homebrew, Fedora, and Nix kept the old toolchain installable.

### How it is used

garmintools can get device information, save Forerunner runs into .gmn files, dump .gmn contents, produce Google Maps encoded polyline output, and export GPX data. The README warns users that the Linux garmin_gps kernel module conflicts with the userspace tool.

### Why package nerds care

garmintools is a classic package-manager preservation case: a small C/libusb utility for specific physical hardware, born before modern fitness-device sync ecosystems, still useful enough to carry in source-based and binary package collections.

### Timeline

- 2006: Initial implementation began on 30 December.
- 2007: README dated 22 February documented Forerunner 205/305 USB workflows.
- 2008: 0.06 added man pages and 0.08 added garmin_gchart and garmin_gpx.
- 2009: 0.10 renamed the library to libgarmintools.

### Related projects

- garmintools is related to Garmin Forerunner devices, libusb, the Garmin protocol SDK, gpsbabel, and Linux kernel Garmin USB support.

### Sources

- <https://code.google.com/archive/p/garmintools>
- <https://code.google.com/archive/p/garmintools/source>
- <https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/garmintools/garmintools-0.10.tar.gz>


## Security Notes

narrow executable package without higher-risk signals.

- **Geiger risk:** green / low
- narrow executable package without higher-risk signals

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** garmintools
- **Version Scheme:** 0
- **Revision:** 0
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** stable

## Other Package-Manager Records

- Nix - garmintools: normalized package name match | nixpkgs package indexes: pkgs/by-name/ga/garmintools/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
- dnf - garmintools - 0.10-34.fc44: normalized package name match | Fedora Rawhide package metadata: garmintools from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Tools for Garmin GPS-devices | https://garmintools.googlecode.com
- dnf - garmintools-devel - 0.10-34.fc44: normalized package name match | Fedora Rawhide package metadata: garmintools-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Development-files for garmintools | https://garmintools.googlecode.com


## Related links

- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Archive and compression packages](https://www.automicvault.com/pkg/archive-compression-tools/) - Matched archive or compression metadata.
- [Networking and protocol packages](https://www.automicvault.com/pkg/networking-protocol-tools/) - Matched network, protocol, or remote-service metadata.
- [Homebrew utility packages](https://www.automicvault.com/pkg/brew-utility-packages/) - Matched Homebrew package provider.
- [libusb-compat](https://www.automicvault.com/pkg/brew/libusb-compat/) - Runtime dependency declared by Homebrew.
- [cyme](https://www.automicvault.com/pkg/brew/cyme/) - Shares av.db curated category or tags: cli, hardware, system.
- [dcled](https://www.automicvault.com/pkg/brew/dcled/) - Shares av.db curated category or tags: cli, hardware, system.
- [digitemp](https://www.automicvault.com/pkg/brew/digitemp/) - Shares av.db curated category or tags: cli, hardware, system.
- [dpcmd](https://www.automicvault.com/pkg/brew/dpcmd/) - Shares av.db curated category or tags: cli, hardware, system.
- [framework-tool-tui](https://www.automicvault.com/pkg/brew/framework-tool-tui/) - Shares av.db curated category or tags: cli, hardware, system.
- [gfxutil](https://www.automicvault.com/pkg/brew/gfxutil/) - Shares av.db curated category or tags: cli, hardware, system.
- [hwloc](https://www.automicvault.com/pkg/brew/hwloc/) - Shares av.db curated category or tags: cli, hardware, system.
- [libcpuid](https://www.automicvault.com/pkg/brew/libcpuid/) - Shares av.db curated category or tags: cli, hardware, system.
- [libfreefare](https://www.automicvault.com/pkg/brew/libfreefare/) - Local package facts share a topical domain. Shared terms: cli, compat, hardware, info, libusb.

## Combined YAML source

View the package source record on GitHub. [combined/garmintools.yml](https://github.com/automic-vault/db/blob/main/combined/garmintools.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
