1
1
Fork
You've already forked tracktomat
0
Automated movement tracking for mobile Linux
  • Rust 100%
2025年01月27日 21:37:02 +02:00
src main: Get app name and version from Cargo, print version on startup 2025年01月24日 19:29:54 +02:00
Cargo.lock Release 0.1.0 2025年01月27日 21:37:02 +02:00
Cargo.toml Release 0.1.0 2025年01月27日 21:37:02 +02:00
LICENSE Add LICENSE file 2025年01月10日 18:59:46 +02:00
README.md Add README.md 2025年01月24日 19:23:58 +02:00

Tracktomat

Saves GPX tracks of a moving Linux device equipped with GPS/GNSS and wifi positioning. Uses Geoclue (required) and NetworkManager (optional) for positioning and network connection tracking.

Tracktomat is smart about when to save GNSS tracks. Location services are turned off when bound to a WLAN network and wifi positioning is used to detect movement before turning on the GNSS-based tracking.

Installation

Rust compiler and cargo are required. Release version can be build from a git checkout with the standard cargo command:

cargo build -r

The tracktomat binary should now be in ./target/release/tracktomat and can be run there, or copied to a directory in $PATH. Try running tracktomat -h to ensure it works.

Usage

The device needs to have Geoclue with working GNSS and wifi positioning. NetworkManager is recommended to detect a bound WLAN connection, but is not required.

There is no configuration. You can set the verbosity level of logging with the -d / --debuglevel command line option. Start with -d debug or -d trace to get an idea of what is going on.

Tracktomat should be run in the background on a mobile Linux device with a service manager (systemd --user) or terminal multiplexer like tmux.

When tracktomat detects that the device is moving, it starts saving a GPX file to $HOME/Documents/tracktomat. The file is closed and the GNSS device turned off when no movement has been detected for a while.