跳转至

Rustup

配置Crates源

$HOME/.cargo/config中添加如下内容:

1
2
3
4
5
[source.crates-io]
replace-with = 'ustc'

[source.ustc]
registry = "git://mirrors.ustc.edu.cn/crates.io-index"

如果所处的环境中不允许使用 git 协议,可以把上述地址改为:

1
registry = "https://mirrors.ustc.edu.cn/crates.io-index"

Rust Toolchain 反向代理

使用 rustup 前,先设置环境变量 RUSTUP_DIST_SERVER (用于更新 toolchain):

1
export RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-static

以及 RUSTUP_UPDATE_ROOT (用于更新 rustup):

1
export RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustup

Rustup 安装

第一次安装rustup的时候,如果按照官网教程https://sh.rustup.rs链接无法下载,可以通过jsDelivrCDN下载rustup-init.sh,然后把脚本中的RUSTUP_UPDATE_ROOT变量改为https://mirrors.ustc.edu.cn/rust-static/rustup

Crates 源可能会出现 Couldn't resolve host name (Could not resolve host: crates) 错误,见:https://github.com/ustclug/discussions/issues/294。一个临时的解决方法是在运行 cargo 的时候加入环境变量 CARGO_HTTP_MULTIPLEXING=false