From 0e42f49f1f8867376cbf46a1792fe7653dc61719 Mon Sep 17 00:00:00 2001 From: DarkFeather Date: Thu, 4 Apr 2024 16:57:43 -0500 Subject: [PATCH] Adding cleanup on sources; fix for Gitea change in classes --- .gitignore | 1 + Makefile | 22 +++++++++++----------- PKGBUILD | 6 +++--- README.md | 6 +++++- 4 files changed, 20 insertions(+), 15 deletions(-) diff --git a/.gitignore b/.gitignore index 01aa689..e01c774 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,7 @@ src/ascii-invaders** src/HelloWorld** pkg/ testing.log +wiki/ # Packaging outputs *.pkg.tar.zst diff --git a/Makefile b/Makefile index b3b4c95..1484bc4 100644 --- a/Makefile +++ b/Makefile @@ -32,6 +32,17 @@ uninstall: test: ./maat -h | grep -c Usage 1>/dev/null +checkperm: + chown -R ${owner}: ${pkgdir}${serverRoot}/src + chown -R ${owner}: ${pkgdir}${serverRoot}/pkg + for i in ${list}; do chown -R ${owner}: "${installDir}/$$i"; sudo chmod ${perms} "${installDir}/$$i"; done + +diff: + for i in ${list}; do if [ -f ${installDir}/$$i ]; then diff "$$i" "${installDir}/$$i"; fi done + +reverse: + for i in ${list}; do if [ -f ${installDir}/$$i ]; then cp "${installDir}/$$i" "$$i"; fi done + extendedtest: clean sudo ./maat -u $$USER -T test -d src @@ -51,14 +62,3 @@ extendedtest: clean make clean @echo @echo Tests passed successfully. - -diff: - for i in ${list}; do if [ -f ${installDir}/$$i ]; then diff "$$i" "${installDir}/$$i"; fi done - -reverse: - for i in ${list}; do if [ -f ${installDir}/$$i ]; then cp "${installDir}/$$i" "$$i"; fi done - -checkperm: - chown -R ${owner}: ${pkgdir}${serverRoot}/src - chown -R ${owner}: ${pkgdir}${serverRoot}/pkg - for i in ${list}; do chown -R ${owner}: "${installDir}/$$i"; sudo chmod ${perms} "${installDir}/$$i"; done diff --git a/PKGBUILD b/PKGBUILD index 532fad6..a8b071a 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -9,14 +9,14 @@ pkgrel() { echo $(( `git log "$(git describe --tag --abbrev=0)"..HEAD | grep -c commit` + 1 )) } epoch="$(git log | grep -c commit)" -pkgdesc="$(head -n 1 README)" +pkgdesc="$(head -n 1 README.md)" arch=("x86_64") -url="https://aninix.net/foundation/${pkgname}" +url="$(git config remote.origin.url | sed 's/.git$//')" license=('custom') groups=() provides=("${pkgname}") conflicts=() -replaces=("${pkgname,,}", "aninix-${pkgname,,}") +replaces=("${pkgname,,}" "aninix-${pkgname,,}") backup=(usr/local/etc/Maat/aur.list) options=() install=installscript diff --git a/README.md b/README.md index d5e4421..295a84e 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ Maat is named for [the Egyptian goddess of truth and order](https://en.wikipedia # Relevant Files and Software -Maat runs as a [systemd.timer](https://man.archlinux.org/man/systemd.timer.5) nightly, invoking our build script. Adhoc builds can be requested from admins. Output gets published on the [landing page](https://maat.aninix.net) from our build pipeline -- there you can download packages, view build logs, see testing status, etc. +Maat runs as a [systemd.timer](https://man.archlinux.org/man/systemd.timer.5) nightly, invoking our build script. Ad hoc builds can be requested from admins. Output gets published on the [landing page](https://maat.aninix.net) from our build pipeline -- there you can download packages, view build logs, see testing status, etc. Our CI/CD pipeline attempts to pull directly from Git sources, either from the AniNIX or the curated AUR, build those packages, and make the available to systems downstream. The `/usr/local/etc/Maat/aur.list` file allows the admin to control which AUR packages are pulled and built -- output files from builds can help identify issues like missing public GPG keys or dependency issues. @@ -13,3 +13,7 @@ Maat also consumes a GPG key. The admin will need to set up this key and publish # Available Clients As Maat is a pipeline for ArchLinux systems, the primary client is [Pacman](https://wiki.archlinux.org/title/Pacman). You can see how to subscribe your host to Maat in [this configuration snippet](https://aninix.net/AniNIX/Ubiqtorate/src/branch/main/roles/ShadowArch/files/pacman.conf#L103). + +# Equivalents or Competition + +General equivalents are Jenkins or GitLab CI/CD Runners. We chose to write our own because these are resource-intensive and often insecure. AniNIX/Maat enacts exactly the steps as detailed by Arch and only offers a noninteractive dashboard -- users are only able to see the artifacts and all changes must be done in upstream.