summaryrefslogtreecommitdiff
path: root/pkgbuilds.sh
blob: c686b3842e5dec91c2792f836fd7316ef9716677 (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
#!/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

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