Logo

Amethyst


License GitHub isses GitHub pull requests
Discord The
Mastodon Follow Twitter Follow

Amethyst is a fast, efficient and lightweight AUR helper and Pacman wrapper.
Made for Crystal, compatible with any Arch-based Linux distribution.

### Basic usage | Action | FreeBSD pkg-style alias | Pacman-style flags | |----------------------|-------------------------|--------------------| | Install a package | ame ins/install | ame -S | | Remove a package | ame rm/remove | ame -R/-Rs | | Upgrade a package | ame upg/upgrade | ame -Syu | | Search for a package | ame sea | ame -Ss | ### Exit codes overview | Exit Code (i32) | Reason | |-----------------|----------------------------------------------------------| | 1 | Running ame as UID 0 / root | | 2 | Failed adding package to database | | 3 | Failed initialising database | | 4 | Error creating cache and/or database paths | | 5 | Could not find one or more required package dependencies | | 6 | User cancelled package installation | | 7 | Pacman error when installing package | | 8 | Git error | | 9 | makepkg error | ### How to build: Tested on latest Cargo (1.60.0-nightly)
#### Debug/development builds - `cargo build` #### Optimised/release builds - `cargo build --release` #### Pkg-warner included - `cargo build (--release) --all --features=pkg-warner` ### TODO: #### v3.3.0 - ~~Add clean function~~ - ~~Make flags global~~ - ~~Add pacdiff function~~ - Squash any remaining bugs #### v3.4.0 - Implement some sort of spinner for longer operations - Allow editing of PKGBUILDs before install - Allow to choose provider of package - Highlight optdepends at the end of an install operation