From 198499d28f69abd20584a2eb88d9e1dd29e9dbec Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Wed, 24 Jun 2026 15:21:51 +0200 Subject: Externalize config; mirror mountpoint+auto-mount, MIRROR_TREE, --terse Config now lives outside the script in $SBO_BATCH_CONFIG (default ~/.config/sbo-batch-tester/config), sourced at load. Script ships empty defaults plus config.example as the template; require_config (in validate_env and init_base) hard-fails a real run when the config is missing or has not set SLACKWARE_BASE / LOCAL_MIRROR_15 / SBO_TREE_ROOTS. LOCAL_MIRROR_15 is now the NFS mountpoint, not the tree root. The Slackware tree is derived as MIRROR_TREE=$LOCAL_MIRROR_15/slackware64-$VERSION (holds ChangeLog.txt, slackware64/, patches/); all mirror content reads use it. The mountpoint is checked with mountpoint -q and auto-mounted (mount $LOCAL_MIRROR_15) when the noauto fstab entry is not mounted, left mounted after the run. installpkg/upgradepkg run with --terse for cleaner output. Docs updated. Co-Authored-By: Claude Opus 4.8 --- config.example | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 config.example (limited to 'config.example') diff --git a/config.example b/config.example new file mode 100644 index 0000000..88cc264 --- /dev/null +++ b/config.example @@ -0,0 +1,35 @@ +# sbo-batch-test config. Sourced by the script as bash. +# +# Copy to ~/.config/sbo-batch-tester/config and edit. The script runs as root, +# so that is /root/.config/sbo-batch-tester/config. Override the path with the +# $SBO_BATCH_CONFIG environment variable. + +# LOCAL (non-NFS) read-only 15.0 base install tree. This is the overlay +# lowerdir. MUST be a local filesystem (ext4/xfs). NEVER point this at the NFS +# mirror: overlayfs over NFS lowerdir is fragile and fails intermittently. +# Populate it once with: sbo-batch-test --init-base +SLACKWARE_BASE="/sbo-base/15.0" + +# NFS mountpoint for the 15.0 mirror. Point at the mount root itself; the script +# checks it with mountpoint -q and auto-mounts it (mount $LOCAL_MIRROR_15) if the +# fstab entry is noauto. The actual Slackware tree (ChangeLog.txt, slackware64/, +# patches/) is found one level down at $LOCAL_MIRROR_15/slackware64-$VERSION. +# Package SOURCE only. Read-only is fine. Never the overlay lowerdir. +LOCAL_MIRROR_15="/mnt/mirror-15.0" + +# One or more LOCAL SBo tree roots, resolved in order (first match wins). +# Standard SBo layout: ///{prog.SlackBuild,prog.info,...}. +# Read in place, never copied or synced. +SBO_TREE_ROOTS=( + "/var/lib/sbopkg/SBo-danix" +) + +# Where overlays are created. LOCAL, needs space. One disposable overlay per +# target lives here. +CHROOT_LOCATION="/tmp" + +# Where persistent logs are written (outside the overlay, survives teardown). +LOG_ROOT="/var/log/sbo-batch-test" + +# Slackware version, used for the mirror ChangeLog / patches path. +VERSION="15.0" -- cgit v1.2.3