README.md

This commit is contained in:
grayTerminal-sh 2026-05-18 14:48:17 +02:00
parent 589116d516
commit 06eecf01c5

View file

@ -1,19 +1,19 @@
# aurtools # AurManager
A small set of shell scripts to manage AUR packages on Arch Linux **without** `yay`, `paru`, or any other AUR helper. A small set of shell scripts to manage AUR packages on Arch Linux **without** `yay`, `paru`, or any other AUR helper.
This project follows the classic AUR workflow: clone the package repository, review the `PKGBUILD`, build with `makepkg`, and install with `pacman -U`. [web:22][web:303][web:305] This project follows the classic AUR workflow: clone the package repository, review the `PKGBUILD`, build with `makepkg`, and install with `pacman -U`.
## Included scripts ## Included scripts
- `aurinstall` — clone or update an AUR package repository, optionally review `PKGBUILD`, build the package, and install it with `pacman -U`. [web:22][web:305] - `aurinstall` — clone or update an AUR package repository, optionally review `PKGBUILD`, build the package, and install it with `pacman -U`.
- `aurupdate` — iterate through local AUR package repositories, pull updates, rebuild selected packages, and reinstall them locally. [web:22][web:305] - `aurupdate` — iterate through local AUR package repositories, pull updates, rebuild selected packages, and reinstall them locally.
- `aurremove` — remove installed AUR packages with `pacman -Rns` and optionally delete the local repository directory. [web:46][web:107] - `aurremove` — remove installed AUR packages with `pacman -Rns` and optionally delete the local repository directory.
- `_aurtools` — Zsh completion file for the scripts, including optional online package-name completion for `aurinstall` via the AUR RPC interface. [web:281] - `_aurtools` — Zsh completion file for the scripts, including optional online package-name completion for `aurinstall` via the AUR RPC interface.
## Why use this ## Why use this
This setup is intended for users who want full visibility into what gets built and installed from the AUR. Instead of relying on a full AUR helper, it keeps each package as a normal Git repository under `~/Aur`, making updates and audits easier to understand and review. [web:22][web:189] This setup is intended for users who want full visibility into what gets built and installed from the AUR. Instead of relying on a full AUR helper, it keeps each package as a normal Git repository under `~/Aur`, making updates and audits easier to understand and review.
## Requirements ## Requirements
@ -29,7 +29,7 @@ Some optional features require additional tools:
sudo pacman -S curl jq zsh sudo pacman -S curl jq zsh
``` ```
- `curl` and `jq` are used by the optional online completion for `aurinstall` through the AUR RPC API. [web:281] - `curl` and `jq` are used by the optional online completion for `aurinstall` through the AUR RPC API.
- `zsh` is needed only for the provided completion script. - `zsh` is needed only for the provided completion script.
- An editor such as `nvim` is useful if `aurinstall` is run with review options like `-e`, `-E`, or `-d`. - An editor such as `nvim` is useful if `aurinstall` is run with review options like `-e`, `-E`, or `-d`.
@ -70,7 +70,7 @@ The scripts assume that AUR repositories are stored under `~/Aur` by default:
└── package-three/ └── package-three/
``` ```
Each package is kept as its own Git repository cloned from `https://aur.archlinux.org/<pkgname>.git`, which matches the documented AUR workflow. [web:22][web:189] Each package is kept as its own Git repository cloned from `https://aur.archlinux.org/<pkgname>.git`, which matches the documented AUR workflow.
## Usage ## Usage
@ -80,7 +80,7 @@ Each package is kept as its own Git repository cloned from `https://aur.archlinu
aurinstall proton-pass-bin aurinstall proton-pass-bin
``` ```
This clones the package if needed, builds it with `makepkg`, and installs the resulting package file with `pacman -U`. [web:22][web:305] This clones the package if needed, builds it with `makepkg`, and installs the resulting package file with `pacman -U`.
### Prompt before editing build files ### Prompt before editing build files
@ -94,7 +94,7 @@ aurinstall -e swayfx
aurinstall -E swayfx aurinstall -E swayfx
``` ```
Reviewing `PKGBUILD` before building is an important AUR safety habit because `makepkg` executes build instructions defined there. [web:303][web:305] Reviewing `PKGBUILD` before building is an important AUR safety habit because `makepkg` executes build instructions defined there.
### Download and audit only ### Download and audit only
@ -118,15 +118,15 @@ This walks through the repositories stored in `~/Aur`, pulls upstream changes, a
aurremove calcure aurremove calcure
``` ```
This removes the installed package with `pacman -Rns`, which removes the package, unneeded dependencies, and package-managed config files. [web:46][web:107][web:212] This removes the installed package with `pacman -Rns`, which removes the package, unneeded dependencies, and package-managed config files.
## Zsh completion ## Zsh completion
The included completion script supports: The included completion script supports:
- local completion from existing repositories in `~/Aur` for `aurinstall` - local completion from existing repositories in `~/Aur` for `aurinstall`
- optional remote name completion for `aurinstall` through the AUR RPC interface [web:281] - optional remote name completion for `aurinstall` through the AUR RPC interface
- completion of installed foreign packages for `aurremove` via `pacman -Qm` [web:46] - completion of installed foreign packages for `aurremove` via `pacman -Qm`
If completion behaves strangely after changes, rebuild the completion cache: If completion behaves strangely after changes, rebuild the completion cache:
@ -138,8 +138,8 @@ compinit
## Security note ## Security note
AUR packages are user-contributed build scripts, not official binary packages. The safest workflow is to inspect `PKGBUILD`, sources, checksums, and build steps before installation. [web:22][web:303][web:305] AUR packages are user-contributed build scripts, not official binary packages. The safest workflow is to inspect `PKGBUILD`, sources, checksums, and build steps before installation.
## License ## License
A permissive license such as MIT or ISC fits this kind of shell-script project well. GitHub recommends adding an explicit license if the repository is meant to be reused by others. [web:317][web:322] A permissive license such as MIT or ISC fits this kind of shell-script project well. GitHub recommends adding an explicit license if the repository is meant to be reused by others.