- Rust 100%
| src | main: Get app name and version from Cargo, print version on startup | |
| Cargo.lock | Release 0.1.0 | |
| Cargo.toml | Release 0.1.0 | |
| LICENSE | Add LICENSE file | |
| README.md | Add README.md | |
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.