Handle metapackages for local install

This commit is contained in:
Wildan M
2025-07-27 22:49:37 +07:00
parent 2730f1a70c
commit 81e8bc09f8
+5 -3
View File
@@ -91,12 +91,14 @@ fn install_local_pkgar(cookbook: &str, target: &str, packagename: &str, dest: &s
let public_path = format!("{cookbook}/build/id_ed25519.pub.toml",);
let pkgar_path = format!("{cookbook}/repo/{target}/{packagename}.pkgar");
pkgar::extract(&public_path, &pkgar_path, dest).unwrap();
pkgar::split(&public_path, &pkgar_path, head_path, Option::<&str>::None).unwrap();
let pkginfo_path = format!("{cookbook}/repo/{target}/{packagename}.toml");
let pkginfo = pkg::Package::from_toml(&fs::read_to_string(pkginfo_path)?)?;
if pkginfo.version != "" {
pkgar::extract(&public_path, &pkgar_path, dest).unwrap();
pkgar::split(&public_path, &pkgar_path, head_path, Option::<&str>::None).unwrap();
}
// Recursively install any runtime dependencies.
for dep in pkginfo.depends.iter() {
let depname = dep.as_str();