30 lines
974 B
Bash
Executable file
30 lines
974 B
Bash
Executable file
#!/usr/bin/env bash
|
|
# aurmake
|
|
|
|
source .OPT || exit 1
|
|
|
|
if [ -x "$(command -v repo-add)" ]; then
|
|
[ ! -d "packages/" ] && printf "No packages, exiting..\n" >> /dev/stderr && exit 1
|
|
|
|
printf "Creating packages\n"
|
|
|
|
cd packages/ || exit 1
|
|
rm -f ./*"${SERVER_NAME}"*
|
|
repo-add -s -R "${SERVER_NAME}.db.tar.gz" *.pkg.tar.zst > /tmp/repo-add.log
|
|
find . -maxdepth 1 -type l -delete
|
|
[ -f "${SERVER_NAME}.db.tar.gz" ] && diff -up "${SERVER_NAME}.db.tar.gz" "${SERVER_NAME}.db" > /dev/null && mktar=true
|
|
cp "${SERVER_NAME}.db.tar.gz" "${SERVER_NAME}.db"
|
|
cd .. || exit 1
|
|
|
|
printf "Created packages\n"
|
|
else
|
|
printf "Warning: repo-add not found, will only copy viewer.\n" >> /dev/stderr
|
|
fi
|
|
|
|
[ "$mktar" = "true" ] && touch packages/.need_mktar
|
|
|
|
if [ "$1" = "publish" ]; then
|
|
[ ! -x "$(command -v rsync)" ] && printf "rsync not found.\n" > /dev/stderr && exit 1
|
|
rsync -avPz packages/ ${SERVER_USER}@${SERVER_IP}:${SERVER_LOCATION}/packages/
|
|
fi
|