1 个不稳定版本
0.1.0 | 2023年10月22日 |
---|
#8 在 #intervals
40KB
616 行
trackme
用于将活动日志上传到Intervals.icu和Strava等平台的命令行工具。
快速入门
$ trackme upload --name "My Activity" activity.fit
[intervals.icu] upload finished (ID i12345)
[strava ] upload finished (ID 12345)
安装
要安装trackme
,您需要Rust 1.70.0或更高版本。下载最新版本的源代码,并用以下命令编译:
$ git clone https://codeberg.org/robink/trackme.git
$ cd trackme
$ git checkout stable
$ cargo build --release
建议在编译和安装之前验证发布的OpenPGP签名
$ git verify-commit stable
所有版本都应该使用密钥 EC7E F0F9 B681 4C24 6236 3842 B755 6972 702A FD45
进行签名。
或者,您可以直接从crates.io安装trackme
$ cargo install --locked trackme
用法
命令
主要命令是upload
。它上传一个活动文件——通常是FIT、GPX或TCX格式——到一个或多个跟踪平台。默认情况下,它会上传到所有支持的平台。您可以使用--platforms
选项选择平台。使用--name
选项来覆盖由平台生成的活动名称。
$ trackme upload activity.fit
[intervals.icu] upload finished (ID i12345)
[strava ] upload finished (ID 12345)
$ trackme upload --name "My Activity" activity.fit
[intervals.icu] upload finished (ID i12345)
[strava ] upload finished (ID 12345)
$ trackme upload --platforms strava --name "My Strava Activity" activity.fit
[strava] upload finished (ID 12345)
配置
trackme
会尝试从以下文件之一加载其配置
${XDG_CONFIG_HOME}/trackme/config.toml
(默认:~/.config/trackme/config.toml
)${dir}/trackme/config.toml
对于dir
在XDG_CONFIG_DIRS
中(默认:/etc/xdg/trackme/config.tml
)
或者,可以使用--config
选项设置配置文件的路径。
config.toml
是一个示例配置文件,描述了可用的设置。所有设置也可以作为命令行参数传递。使用--help
选项列出可用的参数。
平台
以下部分描述了如何设置受支持的平台,以便您可以上传您的活动。建议使用配置文件进行所需的设置,但您也可以使用CLI参数。
Intervals.icu
要将活动上传到Intervals.icu,您需要从“设置”→“开发者设置”获取运动员ID和API密钥。
CLI
$ trackme --intervals-icu-athlete-id i12345 --intervals-icu-api-key secret-string ...
配置
[platform.intervals_icu]
athlete_id = "i12345"
api_key = "secret-string"
Strava
要将活动上传到Strava,您首先需要在“设置”→“我的API应用程序”中创建API应用程序,具体操作请参阅Strava开发者文档。然后使用您的API应用程序的客户端ID和密钥配置trackme
。
CLI
$ trackme --strava-client-id 12345 --strava-client-secret secret-string ...
配置
[platform.strava]
client_id = 12345
client_secret = "secret-string"
在您上传活动到Strava之前,您需要使用strava login
命令授权您的账户应用程序。它将打印一个您需要在网页浏览器中打开的URL(或使用--open
选项自动打开)。登录您的Strava账户并授权应用程序。您将被重定向到一个localhost
URL。复制该URL并将其粘贴到strava login
命令中。
$ trackme strava login --open
这将为访问Strava API生成一个访问令牌,并为访问令牌过期时更新访问令牌生成一个刷新令牌。为了跟踪这些令牌,trackme
将生成一个文件${XDG_STATE_HOME}/trackme/strava.toml
(默认:~/.local/state/trackme/strava.toml
)。
联系
有关错误报告、功能请求和其他消息,请为Codeberg.org项目打开一个问题。
许可
本项目受GNU通用公共许可证,版本3.0或更高版本的许可。本存储库中包含的文档和示例受Creative Commons Zero许可的许可。有关更多信息,请参阅每个文件的许可头。您可以在LICENSES
目录中找到许可证文本的副本。
trackme
符合REUSE规范3.0版本。
依赖
~5–17MB
~249K SLoC