summaryrefslogtreecommitdiff
path: root/pkgbuilds.sh
blob: b93511855b83cab3bf41b6eb8310a505bfe6f652 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/usr/bin/env bash

set -e
source ./env.sh

mkdir -p "$BUILD_DIR" "$SRC_DIR"

jq -c '.[]' pkgbuilds.json | while IFS= read -r src; do
	base=$(jq -r '.base' <<<"$src")
	jq -c '.pkgs[]' <<<"$src" | while IFS= read -r pkg; do
		name=$(jq -r '.name' <<<"$pkg")
		git clone "$base/$name" "$SRC_DIR"/"$name" &&
			cd "$SRC_DIR/$name" &&
			makepkg -cCd --noconfirm --skippgpcheck --sign \
				--key $LONGKEY

		jq -r '.nick[]' <<<"$pkg" | while IFS= read -r nick; do
			repo-add -Rpsvk $LONGKEY \
				"$BUILD_DIR"/taur.db.tar.zst \
				"$SRC_DIR"/"$name"/"$nick"*.pkg.tar.zst &&
				cp -rfv \
					"$SRC_DIR"/"$name"/"$nick"*.pkg.tar.zst "$SRC_DIR"/"$name"/"$nick"*.pkg.tar.zst.sig \
					"$BUILD_DIR"
		done

	done
done

rm -f "$BUILD_DIR"/*.zst.old "$BUILD_DIR"/*.zst.old.sig

rsync -az --delete "$BUILD_DIR/" "$REMOTE/"