Honor CARGO_HOME (fix #705) (#706)

This commit is contained in:
Roey Darwish Dror
2021-05-05 13:52:12 +03:00
committed by GitHub
parent f2e5ceb852
commit 69e05d7cea

View File

@@ -18,10 +18,14 @@ use tempfile::tempfile_in;
pub fn run_cargo_update(ctx: &ExecutionContext) -> Result<()> {
utils::require("cargo")?;
let toml_file = ctx.base_dirs().home_dir().join(".cargo/.crates.toml").require()?;
let cargo_dir = env::var_os("CARGO_HOME")
.map(PathBuf::from)
.unwrap_or_else(|| ctx.base_dirs().home_dir().join(".cargo"))
.require()?;
let toml_file = cargo_dir.join(".crates.toml").require()?;
if fs::metadata(toml_file)?.len() == 0 {
return Err(SkipStep(String::from(".cargo/.crates.toml exists but empty")).into());
if fs::metadata(&toml_file)?.len() == 0 {
return Err(SkipStep(format!("{} exists but empty", &toml_file.display())).into());
}
print_separator("Cargo");