1.9 KiB
1.9 KiB
aim
AppImage Manager
aim is a Rust Cargo workspace for managing AppImages from multiple source types.
Workspace
crates/aim-core: business logic, source adapters, registry, install/update planningcrates/aim-cli: thin terminal frontend for parsing, prompting, and rendering
The split is intentional so a future GUI client can reuse aim-core without moving logic out of the shared library.
Commands
aim <QUERY>
aim
aim update
aim list
aim search <QUERY>
aim remove <QUERY>
Query Forms
owner/repofor GitHub shorthand- GitHub repository URLs
- GitHub release URLs
- direct GitHub release asset URLs
https://...direct URLs- GitLab URLs
- SourceForge URLs
file://...local file imports
Search
aim search <QUERY> is part of v0.9 finalisation.
- v0.9 search is GitHub-backed first
- search results should resolve to install-ready GitHub shorthand such as
owner/repo - the search model is provider-extensible for future phases
custom-jsonis deferred and is not part of the v0.9 search or install contract
Scope Overrides
By default aim auto-detects whether to use user or system scope. Override that with:
--user--system
Current Flow Shape
aim <QUERY>installs unambiguous apps, shows live progress on stderr, prints anInstallation Summaryon stdout, and renders anInstallation Reviewwhen tracking needs confirmation- bare
aimprints anUpdate Reviewwithout mutating the registry aim updateexecutes the pending updates, streams live status on stderr, then prints anUpdate Summaryaim listrenders eitherInstalled AppsorNo installed apps yetaim remove <QUERY>resolves a registered application name, streams removal progress on stderr, then prints aRemoval Summary
Terminal UX
- prompts use
dialoguer - styled summaries use
console - live spinners and byte progress use
indicatif