Personal Arch Linux package repository with automated builds and version tracking.
# Import the maintainer's signing key
sudo pacman-key --keyserver keys.openpgp.org --recv-keys ED9FEE0BB96D6A5E
sudo pacman-key --lsign-key ED9FEE0BB96D6A5E
# Add to /etc/pacman.conf (before [core] for priority over official packages)
[markwells-dev]
SigLevel = Required DatabaseOptional
Server = https://github.com/markwells-dev/pkgbuilds/releases/latest/download
# Sync and install
sudo pacman -Sy
sudo pacman -S <package-name>| Package | Source | Description |
|---|---|---|
| gemini-cli | npm | Google's Gemini AI CLI agent |
| keeper-commander | PyPI | Keeper Password Manager CLI |
| keeper-secrets-manager-cli | PyPI | Keeper Secrets Manager CLI |
| rpi-imager | AppImage | Raspberry Pi Imaging Utility |
| virtctl | Binary | Kubernetes Virtualization CLI |
- PKGBUILDs are stored in this repo
- Versions are checked every 30 minutes and updated automatically
- GitHub Actions builds only changed packages in a clean Arch Linux container
- Packages are signed with GPG and published atomically to GitHub Releases
- pacman syncs directly from the release assets
For CI/CD pipeline details, see the wiki.
-
Create a directory in
pkgs/with aPKGBUILD(directory name must matchpkgname):pkgs/my-package/ └── PKGBUILD # pkgname=my-package -
Add an update script in
scripts/packages/<pkgname>.sh:
check_pkgname() {
# check logic here, call perform_update
}
check_pkgnameCommon datasources:
npm- for npm packagesgithub-releases- for GitHub releases
- Commit and push - the package will be automatically detected and built
Clicking links within the rpi-imager application may fail. This occurs because the AppImage's bundled libraries can break PAM when calling runuser to launch a browser. This is an upstream issue; avoid attempting downstream fixes in the wrapper script as they have proven unreliable.
For detailed instructions on how to add new packages, build them locally, and understand the project structure, please see CONTRIBUTING.md.