1
0
Fork
You've already forked aim
0
A CLI to integrate and update AppImages on Linux
  • Go 94.1%
  • Shell 5.5%
  • Makefile 0.4%
2026年06月21日 21:15:40 +02:00
.github/workflows ci(release): keep generated notes outside checkout 2026年06月13日 23:19:21 +02:00
.plans refactor(cli): narrow command service fakes 2026年06月21日 21:15:40 +02:00
cmd/aim refactor(build): remove unused metadata leftovers 2026年06月21日 21:15:40 +02:00
internal refactor(cli): narrow command service fakes 2026年06月21日 21:15:40 +02:00
scripts fix(scripts): fix repo root lookup in test install 2026年06月13日 21:07:21 +02:00
.gitignore feat: add plans direcotry to .gitignore 2026年06月21日 20:36:46 +02:00
.goreleaser.yaml rewrite codebase 2026年06月12日 23:22:33 +02:00
AGENTS.md rewrite codebase 2026年06月12日 23:22:33 +02:00
go.mod fix(config): restore appimage directory override 2026年06月21日 16:00:16 +02:00
go.sum fix(config): restore appimage directory override 2026年06月21日 16:00:16 +02:00
LICENSE rewrite codebase 2026年06月12日 23:22:33 +02:00
Makefile build: remove stale linker flags 2026年06月21日 21:15:40 +02:00
README.md docs: update README badge style 2026年06月20日 10:00:25 +02:00

AppImage Manager (aim)

A CLI to install, integrate, inspect, and update AppImages on Linux.

Note

This project is still a work in progress and breaking changes may happen at any time while in v0.x.x.

Install

Install the latest release:

curl -fsSL https://raw.githubusercontent.com/slobbe/appimage-manager/main/scripts/install.sh | sh
aim --version

Install a specific version:

curl -fsSL https://raw.githubusercontent.com/slobbe/appimage-manager/main/scripts/install.sh | AIM_VERSION=v0.17.0 sh

AIM_VERSION accepts either 0.17.0, v0.17.0, or a prerelease tag such as v0.17.0-rc.1.

The installer places aim in ~/.local/bin by default and generates man pages and shell completions locally from the installed binary.

If aim is not found, make sure ~/.local/bin is on your PATH.

Common commands

Add an AppImage

aim add ./Example.AppImage
aim add --github owner/repo
aim add --github owner/repo --asset '*x86_64.AppImage'
aim add --github owner/repo --prerelease

Check and apply updates

aim update --check
aim --json update --check
aim update
aim update example-app

aim update --check reports available updates without modifying installed AppImages. Today, aim update only checks and applies GitHub release update sources; embedded zsync, local_file, and unsupported update metadata is preserved for inspection but not applied yet.

Set or clear an update source

aim update --set example-app --github owner/repo
aim update --set example-app --github owner/repo --asset '*x86_64.AppImage'
aim update --set example-app --github owner/repo --prerelease
aim update --set example-app --embedded
aim update --unset example-app

Use --asset with Go filepath.Match-style patterns when a GitHub release has multiple AppImage assets, such as different architectures or flavors. --embedded preserves update metadata found inside the AppImage, but only embedded GitHub release sources are applied by aim update today.

Remove an AppImage

aim remove example-app

Inspect, list, and locate data

aim info example-app
aim info ./Example.AppImage
aim list
aim paths

aim info <path> inspects a local AppImage before integration. Inspection executes the AppImage's extraction/update-info modes to read metadata; inspect only AppImages you trust.

Update aim itself

aim selfupdate
aim selfupdate --prerelease

Useful commands and aliases

aim list # list managed AppImages
aim remove # remove a managed AppImage
aim update # check for and apply app updates
aim info # inspect an AppImage or integrated app
aim paths # show aim's config/storage/cache paths

Global flags

  • --json: emit machine-readable JSON where supported
  • --version: print the current aim version

More help

  • aim --help for the CLI overview
  • aim help <command> for command-specific manual pages
  • aim <command> --help for flags and usage on a specific command
  • man aim for the full manual page

License

MIT