#!/usr/bin/env bash # A simple script to build packages into multiple repos err() { echo "$1" >&2; } build_pkg() { local makepkg_output makepkg_exit_code makepkg_status package="$1" repo="$2" echo -n "Building ${repo}/${package}... " cd "/tmp/build-${package}" sudo /usr/local/bin/makepkg-chroot.sh "${cfg_build_dir}/${package}.chroot" "${cfg_repos_dir}/${repo}" } main() { source 'builder-chroot.cfg' package="$1" if [[ -f "/tmp/build-${package}/.spark.repo" ]]; then repo_name=$( <"/tmp/build-${package}/.spark.repo" ) else err "Repo not specified, not building package." return 1 fi build_pkg "$package" "$repo_name" if [[ ! -d "${cfg_repos_dir}/${repo_name}" ]]; then echo "Creating ${cfg_repos_dir}/${repo}" mkdir -p "${cfg_repos_dir}/${repo}" || { return 1 } fi cd "${cfg_repos_dir}/${repo_name}" repo-add -n "${repo_name}.db.tar.gz" "$package"*.pkg.tar.xz } main "$@"