You are not logged in.
I recently started working on pkglint, a linter for PKGBUILDs and finally integrated it in my PKGBUILDs repository where I maintain ~100 packages.
I decided to then make a basic Github repository template for anyone interested in managing their own PKGBUILDs. The basic idea is: if it builds, it releases. For folks that already have a repository, feel free to use it as a reference for extending your automation.
At a high-level:
- A Github Action runs hourly to check for updates using nvchecker + a small python wrapper, `pkgreleaser.py`. If a new update exists, a pull request is opened automatically with the desired changes.
- A Github Action then runs `shellcheck` and `pkglint`, a superset of `namcap`, which builds and validates the PKGBUILDs ensuring they will install (mostly) correctly for users. I personally have my repository automatically merge changes once CI is green, but that is optional.
- After merging to master, packages are pushed incrementally to the AUR using `git subtree push`. It checks all packages, not just those that change, as a catchall in the event of issues or upstream outages.
It also include more generic security tooling for Github repositories like zizmor and actionlint by default. CI and local dev run all checks via prek (or `pre-commit`). Because `pkglint` supports building inside of docker containers, CI and developers on non-Arch distros can still validate builds using the official `archlinux:base-devel` image.
There are more details in the template's README.
Also, if anyone has feedback on improving my setup, please let me know.
Offline
Please ensure that those PKGBUILDs contain a notice they are updated by an automated process.
Moderator Note
Moving to community contributions
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline