feat: add AppImageHub provider support

This commit is contained in:
stoorps 2026-03-21 20:00:23 +00:00
parent 1ad2f8a532
commit f8ffb95376
Signed by: stoorps
SSH key fingerprint: SHA256:AZlPfu9hTu042EGtZElmDQoy+KvMOeShLDan/fYLoNI
23 changed files with 1636 additions and 50 deletions

View file

@ -109,7 +109,27 @@ pub fn dispatch_with_reporter(
if let Some(query) = cli.query {
let requested_scope = resolve_requested_scope(cli.system, cli.user, is_effective_root());
let transport = aim_core::source::github::default_transport();
let mut plan = build_add_plan_with_reporter(&query, transport.as_ref(), reporter)?;
let plan_result = build_add_plan_with_reporter(&query, transport.as_ref(), reporter);
let mut plan = match plan_result {
Ok(plan) => plan,
Err(
aim_core::app::add::BuildAddPlanError::Query(
aim_core::app::query::ResolveQueryError::Unsupported,
)
| aim_core::app::add::BuildAddPlanError::NoInstallableArtifact { .. },
) => {
reporter.report(&OperationEvent::Started {
kind: OperationKind::Search,
label: query.clone(),
});
let results = build_search_results(&SearchQuery::new(&query), &apps)?;
reporter.report(&OperationEvent::Finished {
summary: format!("search complete: {} remote hits", results.remote_hits.len()),
});
return Ok(DispatchResult::Search(results));
}
Err(error) => return Err(error.into()),
};
if !plan.interactions.is_empty() {
match ui::prompt::resolve_add_plan_interactions(plan.clone())? {
Some(resolved) => {