From d0ea4601820e639a261a9f1075e5358a8cb089af Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Sat, 11 Jul 2026 10:54:59 +0200 Subject: Add SBO_RSYNC_URL and SBO_PERSONAL_TREES config vars Co-Authored-By: Claude Opus 4.8 --- config.example | 18 ++++++++++++++++++ sbo-batch-test | 10 ++++++++++ 2 files changed, 28 insertions(+) diff --git a/config.example b/config.example index a524400..7d84e01 100644 --- a/config.example +++ b/config.example @@ -38,3 +38,21 @@ PKG_CACHE="/var/cache/sbo-batch-test" # Slackware version, used for the mirror ChangeLog / patches path. VERSION="15.0" + +# rsync source for the SBo tree (same source sbopkg uses). --setup-repo rm -rf's +# SBO_TREE_ROOTS[0] and rsyncs this into it fresh; --update rsyncs it with +# --delete (personal subtrees excluded) to refresh upstream and unshadow. +# Empty: --setup-repo refuses to run; --update skips the rsync and only pulls + +# shadows. Package SOURCE for the tree only; unrelated to LOCAL_MIRROR_15 (the +# NFS package mirror). +SBO_RSYNC_URL="slackbuilds.org::slackbuilds/15.0" + +# Personal SBo subtrees: directory name (under SBO_TREE_ROOTS[0]) -> git clone +# URL. --setup-repo clones each after the rsync; --update git-pulls each in +# place. Both then shadow any same-named upstream package found elsewhere in the +# tree (the personal version wins, the upstream duplicate is rm -r'd). Empty = +# no personal trees. +declare -A SBO_PERSONAL_TREES=( + [personal]="https://github.com/danixland/my-slackbuilds.git" + [pentesting]="https://github.com/danixland/Slackware-Pentesting-Suite.git" +) diff --git a/sbo-batch-test b/sbo-batch-test index 159827f..5f9695d 100755 --- a/sbo-batch-test +++ b/sbo-batch-test @@ -46,6 +46,16 @@ PKG_CACHE="" VERSION="15.0" +# rsync source for the SBo tree (same source sbopkg uses). --setup-repo rsyncs +# it fresh; --update rsyncs with --delete (personal subtrees excluded) to +# unshadow. Empty defaults; real value in the external config. +SBO_RSYNC_URL="" + +# Personal SBo subtrees: dir name (under SBO_TREE_ROOTS[0]) -> git clone URL. +# declare -A here so the external config's assignment lands as a global assoc +# array. --setup-repo clones each; --update git-pulls each; both then shadow. +declare -A SBO_PERSONAL_TREES=() + # Source the external config if present. Not an error here if missing (keeps the # script sourceable by test-logic.sh); validate_env / init_base report it. SBO_BATCH_CONFIG="${SBO_BATCH_CONFIG:-$HOME/.config/sbo-batch-tester/config}" -- cgit v1.2.3