- Shell 100%
| .forgejo/workflows | ||
| .githooks | ||
| .gitignore | ||
| .SRCINFO | ||
| PKGBUILD | ||
| README.md | ||
slopsmith-desktop-testing-bin AUR automation
AUR packaging automation for the testing channel of the upstream slopsmith-desktop desktop release. Tracks the most recent GitHub release including alpha/beta prereleases.
For the stable channel, see the sibling repo aur-slopsmith-desktop-bin.
This repository is authoritative on Forgejo:
- Forgejo repo: https://git.devroom.io/ariejan/aur-slopsmith-desktop-testing-bin
- AUR package: https://aur.archlinux.org/packages/slopsmith-desktop-testing-bin
- Upstream project: https://github.com/byrongamatos/slopsmith-desktop
- Upstream releases: https://github.com/byrongamatos/slopsmith-desktop/releases
What this repo does
Tracks the newest GitHub release of byrongamatos/slopsmith-desktop — including prereleases — and publishes slopsmith-desktop-testing-bin to the AUR.
The package conflicts with the stable slopsmith-desktop-bin; users install only one channel at a time.
The important package files are:
PKGBUILD.SRCINFO
The package downloads the upstream Debian asset:
https://github.com/byrongamatos/slopsmith-desktop/releases/download/v${_upstream_ver}/slopsmith-desktop_${_upstream_ver}_amd64.deb
Version mapping
AUR pkgver cannot contain -. Upstream prerelease tags do (e.g. v0.2.9-alpha.4), so the PKGBUILD keeps two variables:
_upstream_ver— raw upstream version used in the asset URL and filename (e.g.0.2.9-alpha.4)pkgver— AUR-safe version with-rewritten as.(e.g.0.2.9.alpha.4)
For a stable release (no -) the two values are identical.
Forgejo Actions workflows
Workflows live in .forgejo/workflows/.
bump-and-deploy.yml
Scheduled workflow. It:
- Runs every hour (offset from the stable repo to avoid clashing).
- Queries
GET /repos/.../releases?per_page=10(newest-first, includes prereleases) and picks the first non-draft entry. - Compares the upstream tag with
_upstream_verinPKGBUILD. - If newer:
- downloads the upstream
.deb - updates
_upstream_ver,pkgver, resetspkgrelto1, and updatessha256sums - regenerates
.SRCINFO - commits the version bump back to Forgejo
- downloads the upstream
- Validates the package metadata.
- Pushes the current package files to the AUR if they differ from the AUR repo.
deploy.yml
Manual/current-package deploy. Same shape as the stable repo.
Required Forgejo Actions configuration
Repository variables:
AUR_USERNAMEAUR_EMAIL
Repository secret:
AUR_SSH_PRIVATE_KEY— must be able to push tossh://aur@aur.archlinux.org/slopsmith-desktop-testing-bin.git
One-time setup
Before the workflows can deploy, the AUR package must exist:
git clone ssh://aur@aur.archlinux.org/slopsmith-desktop-testing-bin.git
# add PKGBUILD + .SRCINFO, commit, push
Local setup after clone
Enable the versioned git hooks (one-time, per clone):
git config core.hooksPath .githooks
The pre-commit hook blocks PKGBUILD edits that forget to bump pkgver or pkgrel. Bypass with --no-verify if you mean it.
Manual checks
Latest upstream tag (including prereleases):
curl -fsSL 'https://api.github.com/repos/byrongamatos/slopsmith-desktop/releases?per_page=1' \
| python3 -c 'import json,sys; print(json.load(sys.stdin)[0]["tag_name"])'
AUR version:
curl -fsSL 'https://aur.archlinux.org/rpc/v5/info?arg[]=slopsmith-desktop-testing-bin' \
| python3 -c 'import json,sys; r=json.load(sys.stdin)["results"][0]; print(r["Version"])'
Local version:
grep -E '^_upstream_ver=|^pkgver=|^pkgrel=' PKGBUILD