2023-02-21 12:51:27 +00:00
|
|
|
#!/bin/bash
|
|
|
|
set -e
|
|
|
|
|
|
|
|
# Build packages
|
|
|
|
for dir in packages/*/ ; do
|
|
|
|
# Load packages informations
|
|
|
|
. ${dir}PKGBUILD
|
|
|
|
|
|
|
|
if [[ $1 == "check" ]]; then
|
|
|
|
echo "Check if $pkgname can build correctly..."
|
|
|
|
cd $dir
|
2024-07-11 07:40:10 +00:00
|
|
|
makepkg -cd
|
2023-02-21 12:51:27 +00:00
|
|
|
cd ../..
|
|
|
|
else
|
|
|
|
mkdir -p repository
|
|
|
|
file="${pkgname}-${pkgver}-${pkgrel}-${arch}.pkg.tar.zst"
|
|
|
|
if [ ! -f "repository/$file" ]; then
|
|
|
|
# Remove last version
|
|
|
|
find repository/ -regex "repository/${pkgname}-[0-9]+\.[0-9]+\.[0-9]+-[0-9]+-any\.pkg.tar.zst" -delete
|
|
|
|
|
|
|
|
echo "Building version $pkgver-$pkgrel of $pkgname..."
|
|
|
|
cd $dir
|
2024-07-11 07:40:10 +00:00
|
|
|
makepkg -cfd
|
2023-02-21 12:51:27 +00:00
|
|
|
cd ../..
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
|
|
|
|
if [[ $1 != "check" ]]; then
|
|
|
|
# If we can move new packages to the repository
|
|
|
|
if mv packages/*/*.pkg.tar.zst repository/ 2>/dev/null; then
|
|
|
|
echo "Remove last database"
|
|
|
|
cd repository/
|
|
|
|
if [ -f "tos.db" ]; then rm tos.db; fi
|
|
|
|
if [ -f "tos.files" ]; then rm tos.files; fi
|
|
|
|
|
|
|
|
echo "Generating a new database..."
|
|
|
|
repo-add tos.db.tar.gz *.pkg.tar.zst >/dev/null
|
|
|
|
|
|
|
|
echo "Fixing symlinks..."
|
|
|
|
rm tos.db && mv tos.db.tar.gz tos.db
|
|
|
|
rm tos.files && mv tos.files.tar.gz tos.files
|
|
|
|
|
|
|
|
echo "Packages built!"
|
|
|
|
else
|
|
|
|
echo "No package needs to be built"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
fi
|