#offline #mirror #io #download #required #binary #source

app zerus

轻量级的二进制文件,仅下载离线crates.io镜像所需的依赖项

8个版本 (重大更新)

0.8.1 2024年5月30日
0.8.0 2024年5月30日
0.7.0 2024年4月11日
0.6.0 2024年2月28日
0.2.0 2022年8月7日

#384开发工具

每月下载量 39次

MIT/Apache

23KB
343 代码行

zerus

github crates.io docs.rs build status

轻量级的二进制文件,仅下载离线crates.io镜像所需的依赖项

构建zerus

可以从crates.io发布的源代码进行构建。

$ cargo install zerus --locked

或者从 GitHub发行版 下载。

用法

Usage: zerus [OPTIONS] <MIRROR_PATH> [WORKSPACES]...

Arguments:
  <MIRROR_PATH>    new directory to contain offline mirror crate files
  [WORKSPACES]...  list of Cargo.toml files to vendor depends

Options:
      --build-std <VERSION>  Cache build-std depends for nightly version
  -h, --help                 Print help

示例

$ zerus new-mirror ../deku/Cargo.toml ../adsb_deku/Cargo.toml
# configure crates.io-index to point to our host
$ cat crates.io-index/config.json
{
  "dl": "http://[IP]/crates/{prefix}/{crate}/{version}/{crate}-{version}.crate",
  "api": "http://[IP]/crates"
}

提供镜像服务

使用 miniserve

使用镜像构建

将以下内容添加到 .cargo/config 文件中(将IP替换为您的IP地址)。

[source.zerus]
registry = "sparse+http://[IP]/crates.io-index/"

[source.crates-io]
replace-with = "zerus"

依赖项

~17–34MB
~634K SLoC