From 4e4dab39cd809b2507d3d1148fd0ac5d63e64c93 Mon Sep 17 00:00:00 2001 From: Tobias Klaus Date: Thu, 1 Jun 2023 22:42:30 +0200 Subject: [PATCH] add buildPackages.sh --- buildPackages.sh | 53 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100755 buildPackages.sh diff --git a/buildPackages.sh b/buildPackages.sh new file mode 100755 index 0000000..a687023 --- /dev/null +++ b/buildPackages.sh @@ -0,0 +1,53 @@ +#!/usr/bin/env bash + +scriptname="$0" + +function mylog { + logger -t $scriptname "${@}" +} + +logger "startup" +if [[ $(pgrep -f -c $(basename $0)) -gt 1 ]] ; then + logger "other instance still running! -> bailing out" + exit 1 +fi +logger "start syncing" +timestamp="$(cat /usr/portage/metadata/timestamp)" +chronic /usr/sbin/emaint sync -A +#if [[ "$timestamp" == "$(cat /usr/portage/metadata/timestamp)" ]] ; then + #nothing changed! +# mylog "nothing changed in portage" +# exit 0 +#fi + +declare -Ar CHROOTS=( + [server]="/var/lib/buildPackages/packages_amd64" + [desktop]="/var/lib/buildPackages/desktop_amd64" + ) + +declare -Ar SEQUENTIAL=( + [desktop]="www-client/chromium dev-qt/qtwebengine net-libs/webkit-gtk" + ) +for identifier in "${!CHROOTS[@]}" ; do +# date + chroot="${CHROOTS[$identifier]}" + mylog "Building packages for $identifier in $chroot" + for repo in selba helpers meskal-overlay ; do + chronic nice chroot "$chroot" /usr/sbin/emaint sync -r "$repo" + done + chronic nice chroot "$chroot" /usr/bin/eix-update + if [[ -n ${SEQUENTIAL[$identifier]} ]] ; then + SEQFLAGS=("--sequentialized" "${SEQUENTIAL[$identifier]}" ) + else + unset SEQFLAGS + fi + chronic nice chroot "$chroot" "/root/bin/gentooup.sh" "--full" "--batch" "--no-sync" "${SEQFLAGS[@]}" +# date + mylog "Done building packages for $chroot in ${CHROOTS[$chroot]}" +done +chmod og+rX -R /usr/portage/packages + +logger "prebuild packages" +# Prebuild local packages +chronic /root/bin/buildUpgradePackages.sh +