diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..5af1e3e --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,4 @@ +{ + "editor.tabCompletion": "on", + "diffEditor.codeLens": true +} \ No newline at end of file diff --git a/README.md b/README.md index 095ee2a..5248eca 100644 --- a/README.md +++ b/README.md @@ -1,75 +1,89 @@ -

- - Logo - -

- -

Amethyst

- -

- -
- License - GitLab issues - GitLab merge requests
- Discord - The maintainer of this repository
- Mastodon Follow - Twitter Follow -

- -

-Amethyst is a fast, efficient and lightweight AUR helper and Pacman wrapper.
+# Amethyst + +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/search | ame -Ss | -| Query the package list | ame qu/query | ame -Q | -| Show a package's info | ame inf/info | ame -Qi | -| Clean the pacman cache | ame cl/clean | ame -Sc | -| Check for .pacnew | ame di/diff | ame -D | - -### Exit codes overview - -| Exit Code (i32) | Reason | -|-----------------|----------------------------------------------------------| -| 1 | Running ame as UID 0 / root | -| 2 | Failed creating paths | -| 3 | Could not find one or more required package dependencies | -| 4 | User cancelled package installation | -| 5 | Pacman error when installing package | -| 6 | Git error | -| 7 | Makepkg error | -| 8 | Failed to parse config file | -| 63 | Any other misc error | - -### Install on non-Crystal distros -- `sudo pacman -S --needed base-devel pacman-contrib cargo` -- `git clone https://git.getcryst.al/crystal/pkgbuilds/ame` -- `cd ame && makepkg -si` + +## 💡 Features + +- Fast and efficient! +- Asynchronus! +- Customizable! +- Parallel package building +- Install packages from the AUR and any added repositories +- Search for packages in the AUR and any added repositories + +## 📚 Documentation + +Documentation for this project is available [here](https://getcryst.al/site/docs/amethyst/getting-started)! +## 💾 Installation + +### 💽 From Binary + +**Install amethyst using `cargo`** +```bash + $ cargo install --path . + $ ame help +``` + + +### 🏗 From Source + +**Install amethyst from source using `cargo`** + + Debug/development builds + + ```bash + $ git clone https://git.getcryst.al/crystal/software/amethyst.git && cd amethyst + $ cargo build + $ cargo run + ``` + +Optimised/release builds + + ```bash + $ git clone https://git.getcryst.al/crystal/software/amethyst.git && cd amethyst + $ cargo install --path . + ``` + + + Install on non-Crystal distros +```bash +sudo pacman -S --needed base-devel pacman-contrib cargo +git clone https://git.getcryst.al/crystal/pkgbuilds/ame +cd ame && makepkg -si +``` -Amethyst is also available as an [AUR package](https://aur.archlinux.org/packages/ame). -
+Amethyst is also available as an [AUR package](https://aur.archlinux.org/packages/ame)! + +## 📸 Screenshots + +![App Screenshot](/screenshot.png) + +## 🙌 Contributing + +If you'd like to contribute to **amethyst**, please follow the [Crystal Linux contributing guidelines](https://git.getcryst.al/crystal/info/-/blob/main/CONTRIBUTING.md)! + +This project uses This project uses `rustup`, to set up `rust` for **amethyst** development, please follow the guidelines below: + +```bash +$ curl https://sh.rustup.rs -sSf | sh +$ rustup default stable +``` + +(Via [rustup.rs](https://rustup.rs/)) + +We are also constantly looking for translators for our i18n-enabled projects! If you speak more than one language, consider helping out on our [Weblate](https://i18n.getcryst.al)! -#### Debug/development builds +![https://i18n.getcryst.al/engage/crystal-linux/](https://i18n.getcryst.al/widgets/crystal-linux/-/287x66-black.png) -- `cargo build` -#### Optimised/release builds +## 📜 License -- `cargo build --release` +[GPLv3-only](https://choosealicense.com/licenses/gpl-3.0/) -### TODO: +![](https://git.getcryst.al/crystal/misc/branding/-/raw/main/banners/README-banner.png) -#### v3.6.0 -- ~~Allow editing of PKGBUILDs before install~~