feat: add --mirror-url cli args

This commit is contained in:
Bill Avery committed 2025-09-22 20:19:36 -07:00
1 parent 1a86e761f5
commit 5847c7b10e
6 files changed
+107 -24

No files matched your search

+11 -3
View File
@@ -4,7 +4,7 @@
extern crate thiserror;
use clap::Parser;
use download_cef::{DEFAULT_CDN_URL, DEFAULT_TARGET};
use download_cef::DEFAULT_TARGET;
use std::{fs, io::Read, path::Path, sync::OnceLock};
#[derive(Debug, Error)]
@@ -38,6 +38,13 @@ fn default_version() -> &'static str {
.as_str()
}
fn default_download_url() -> &'static str {
static DEFAULT_DOWNLOAD_URL: OnceLock<String> = OnceLock::new();
DEFAULT_DOWNLOAD_URL
.get_or_init(|| download_cef::default_download_url())
.as_str()
}
#[derive(Parser, Debug)]
#[command(about, long_about = None)]
struct Args {
@@ -49,16 +56,17 @@ struct Args {
target: String,
#[arg(short, long, default_value = default_version())]
version: String,
#[arg(short, long, default_value = default_download_url())]
mirror_url: String,
}
fn main() -> Result<()> {
let args = Args::parse();
let target = args.target.as_str();
let url = std::env::var("CEF_DOWNLOAD_URL").unwrap_or(DEFAULT_CDN_URL.into());
if args.bindgen {
if args.download {
let _ = upgrade::download(url.as_str(), target, args.version.as_str());
let _ = upgrade::download(args.mirror_url.as_str(), target, args.version.as_str());
}
upgrade::sys_bindgen(target)?;
+1 -1
View File
@@ -22,7 +22,7 @@ pub fn download(url: &str, target: &str, version: &str) -> PathBuf {
assert!(TARGETS.contains(&target), "unsupported target {target}");
let archive =
download_cef::download_target_archive(url, target, version, dirs::get_out_dir(), true)
download_cef::download_target_archive_from(url, target, version, dirs::get_out_dir(), true)
.expect("download failed");
download_cef::extract_target_archive(target, &archive, dirs::get_out_dir(), true)