diff options
| author | Nippy <nippy@Nippy-Mac-mini.local> | 2026-10-09 10:49:26 +0200 |
|---|---|---|
| committer | Nippy <nippy@Nippy-Mac-mini.local> | 2026-10-09 10:49:26 +0200 |
| commit | 91978706279a19a3ac96393630876f3e50cbc518 (patch) | |
| tree | 1355da60486a305aefeea4e55543bbf1008715b3 /.forgejo/workflows/build-hyprland.yml | |
| parent | 17a23f8a0cec5439d674d90c593497e4ceed2c68 (diff) | |
| download | RaveOS-PKGBUILD-91978706279a19a3ac96393630876f3e50cbc518.tar.gz RaveOS-PKGBUILD-91978706279a19a3ac96393630876f3e50cbc518.zip | |
fix
Diffstat (limited to '.forgejo/workflows/build-hyprland.yml')
| -rw-r--r-- | .forgejo/workflows/build-hyprland.yml | 37 |
1 files changed, 18 insertions, 19 deletions
diff --git a/.forgejo/workflows/build-hyprland.yml b/.forgejo/workflows/build-hyprland.yml index 625be43..f3dbf39 100644 --- a/.forgejo/workflows/build-hyprland.yml +++ b/.forgejo/workflows/build-hyprland.yml @@ -9,8 +9,8 @@ on: workflow_dispatch: concurrency: - group: raveos-hyprland-build - cancel-in-progress: true + group: raveos-repo-publish + cancel-in-progress: false jobs: build: @@ -33,11 +33,12 @@ jobs: - name: Fetch core repo via rsync run: | set -euo pipefail - RSYNC_SSH="ssh -p 2222 -i $HOME/.ssh/vps_backup_key -o StrictHostKeyChecking=no" + RSYNC_SSH="ssh -p 2222 -i $HOME/.ssh/vps_backup_key -o StrictHostKeyChecking=accept-new -o BatchMode=yes" rm -rf /tmp/raveos-core-repo mkdir -p /tmp/raveos-core-repo/x86_64 rsync -az -e "$RSYNC_SSH" \ - root@10.66.66.1:/root/docker/repo/repo/x86_64/ /tmp/raveos-core-repo/x86_64/ || true + root@10.66.66.1:/root/docker/repo/repo/x86_64/ /tmp/raveos-core-repo/x86_64/ + test -f /tmp/raveos-core-repo/x86_64/raveos-core-repo.db.tar.xz mkdir -p /tmp/builtpkgs - name: Import GPG signing key @@ -74,15 +75,6 @@ jobs: dir="hyprland-raveos/$pkg" [ -d "$dir" ] || continue - PKGVER=$(grep '^pkgver=' "$dir/PKGBUILD" | head -1 | cut -d= -f2 | tr -d "'\"") - PKGREL=$(grep '^pkgrel=' "$dir/PKGBUILD" | head -1 | cut -d= -f2 | tr -d "'\"") - - echo "=== Checking $pkg (${PKGVER}-${PKGREL}) ===" - if ls "$CORE"/${pkg}-${PKGVER}-${PKGREL}-*.pkg.tar.zst 2>/dev/null | grep -q .; then - echo "$pkg already built -> skipping" - continue - fi - echo "=== Building $pkg ===" cd "$dir" rm -f *.pkg.tar.zst || true @@ -100,13 +92,17 @@ jobs: run: | set -euo pipefail export GNUPGHOME=/tmp/raveos-gnupg + PASSFILE=$(mktemp) + chmod 600 "$PASSFILE" + printf '%s' "${{ secrets.GPG_PRIVATE_KEY_PASSPHRASE }}" > "$PASSFILE" for pkg in /tmp/builtpkgs/*.pkg.tar.zst; do [ -f "$pkg" ] || continue gpg --batch --yes --pinentry-mode loopback \ - --passphrase "${{ secrets.GPG_PRIVATE_KEY_PASSPHRASE }}" \ + --passphrase-file "$PASSFILE" \ --local-user 25C7668F1235F5664F037671BDB2A9CE6EBFF113 \ --detach-sign --no-armor "$pkg" done + rm -f "$PASSFILE" - name: Update repo database and sync to VPS run: | @@ -119,9 +115,8 @@ jobs: CORE="/tmp/raveos-core-repo/x86_64" for pkg in $BUILT; do - PKGFILE=$(basename "$pkg") - PKGNAME=$(echo "$PKGFILE" | sed 's/-[0-9][^-]*-[^-]*-[^-]*\.pkg\.tar\.zst$//') - rm -f "$CORE/${PKGNAME}-"*.pkg.tar.zst* 2>/dev/null || true + PKGNAME=$(bsdtar -xOf "$pkg" .PKGINFO | awk -F' = ' '/^pkgname =/{print $2; exit}') + rm -f "$CORE/${PKGNAME}-"[0-9]*.pkg.tar.zst* 2>/dev/null || true cp -v "$pkg" "$CORE/" [ -f "$pkg.sig" ] && cp -v "$pkg.sig" "$CORE/" done @@ -131,16 +126,20 @@ jobs: ALLPKGS=$(ls *.pkg.tar.zst) repo-add raveos-core-repo.db.tar.xz $ALLPKGS + PASSFILE=$(mktemp) + chmod 600 "$PASSFILE" + printf '%s' "${{ secrets.GPG_PRIVATE_KEY_PASSPHRASE }}" > "$PASSFILE" for f in raveos-core-repo.db.tar.xz raveos-core-repo.files.tar.xz; do gpg --batch --yes --pinentry-mode loopback \ - --passphrase "${{ secrets.GPG_PRIVATE_KEY_PASSPHRASE }}" \ + --passphrase-file "$PASSFILE" \ --local-user 25C7668F1235F5664F037671BDB2A9CE6EBFF113 \ --detach-sign --no-armor -o "$f.sig" "$f" done + rm -f "$PASSFILE" ln -sf raveos-core-repo.db.tar.xz.sig raveos-core-repo.db.sig ln -sf raveos-core-repo.files.tar.xz.sig raveos-core-repo.files.sig - RSYNC_SSH="ssh -p 2222 -i $HOME/.ssh/vps_backup_key -o StrictHostKeyChecking=no" + RSYNC_SSH="ssh -p 2222 -i $HOME/.ssh/vps_backup_key -o StrictHostKeyChecking=accept-new -o BatchMode=yes" rsync -az --delete -e "$RSYNC_SSH" \ "$CORE/" root@10.66.66.1:/root/docker/repo/repo/x86_64/ |