From dd78faaf40862bd1552ec36c41374b527f747284 Mon Sep 17 00:00:00 2001 From: Xiao Pan Date: Fri, 23 Feb 2024 03:08:52 -0800 Subject: Reorganize shell scripts into sh dir, consider in the future fsh will have different kinds of files --- sh/mpra | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100755 sh/mpra (limited to 'sh/mpra') diff --git a/sh/mpra b/sh/mpra new file mode 100755 index 0000000..0801e55 --- /dev/null +++ b/sh/mpra @@ -0,0 +1,44 @@ +#!/bin/sh +# MakePkg Repo-Add + +fn () { + if ! { [ -f PKGBUILD ] || [ -h PKGBUILD ];}; then + exit + fi + find . -maxdepth 1 -type f -name "*.pkg.tar.$ext*" -delete + makepkg --sign -sf + newpkg="$(find . -maxdepth 1 -type f -name "*.pkg.tar.$ext")" + [ -d ../repo ] || mkdir ../repo + mv "$newpkg" "$newpkg.sig" ../repo + # need manually repo-add new database for first time initialization + repo-add -s -v -R "$(find ../repo -maxdepth 1 -type f -name '*.db.tar.gz')" "../repo/$newpkg" + # seems no need to delete *.old and *.old.sig, see https://mirror.fcix.net/archlinux/core/os/x86_64/ it do include *.old + #find ../repo -maxdepth 1 -type f \( -name '*.old' -o -name '*.old.sig' \) -delete +} + +ext=zst +copy_any= + +while getopts ac opt; do + case $opt in + # arch linux arm still using .xz instead of .zst as package compression format + a) ext=xz;; + # copy arch linux fly-any repo + c) copy_any=1;; + \?) exit 1;; + esac +done +shift $((OPTIND-1)) + +if [ $# -eq 0 ]; then + fn +else + for dir; do + cd -- "$(realpath -- "$dir")" || exit + fn + done +fi + +[ "$copy_any" ] && sudo rsync -vPrlt --delete ../repo/ /srv/http/mirrors/archlinux/fly/os/any + +upd -p -- cgit v1.2.3-70-g09d2