mirror of
https://github.com/clash-verge-rev/clash-verge-rev.git
synced 2026-11-04 22:52:23 +08:00
fix(packaging): stop shipping frontend-contract in Linux bundles
tauri-cli's get_binaries() adds every file in src-tauri/src/bin/ as a bundle binary, and the deb/rpm packagers copy each one to /usr/bin, so the dev-only bindings generator ended up as /usr/bin/frontend-contract (1.0 MB) in release packages and broke downstream repackaging (Copr: "Installed but unpackaged file(s) found"). There is no bundler option to exclude a binary, so move the generator to an example target, which cargo keeps dev-only and get_binaries() never scans, and invoke it via 'cargo run --example'. Ref https://github.com/clash-verge-rev/clash-verge-rev/pull/8131#issuecomment-6137907930
This commit is contained in:
@@ -1,12 +0,0 @@
|
||||
fn main() -> Result<(), Box<dyn std::error::Error>> {
|
||||
let mut args = std::env::args_os().skip(1);
|
||||
let output = args
|
||||
.next()
|
||||
.map(std::path::PathBuf::from)
|
||||
.unwrap_or_else(|| std::path::Path::new(env!("CARGO_MANIFEST_DIR")).join("../src/services/bindings.ts"));
|
||||
if args.next().is_some() {
|
||||
return Err(std::io::Error::new(std::io::ErrorKind::InvalidInput, "expected at most one output path").into());
|
||||
}
|
||||
app_lib::ipc::builder().export(specta_typescript::Typescript::default(), output)?;
|
||||
Ok(())
|
||||
}
|
||||
Reference in New Issue
Block a user