aboutsummaryrefslogtreecommitdiffstats
path: root/README.md
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-06-24 11:38:33 +0200
committerDanilo M. <danix@danix.xyz>2026-06-24 11:38:33 +0200
commitbe4f69754e104fb753a9c9f9299a3e72821a6946 (patch)
tree59fa3c5ce55478175d7aee880f8723900ef466ee /README.md
parent47459114c7c6999257c0fb9bfc5b22315188ad13 (diff)
downloadsbo-batch-tester-be4f69754e104fb753a9c9f9299a3e72821a6946.tar.gz
sbo-batch-tester-be4f69754e104fb753a9c9f9299a3e72821a6946.zip
Add --init-base mode for first-time base populate
New --init-base flag installs the full slackware64-15.0 package set into SLACKWARE_BASE from the mirror, then exits. Runs its own pre-flight checks (root, NFS reachable, base not under the mirror) since the base does not exist yet, refuses to clobber a populated base, and seeds the last-base-update marker so the first build skips a needless re-patch. Replaces the manual installpkg --root loop that validate_env used to print as a hint. Docs (README, CLAUDE.md, HANDOFF) updated to match. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Diffstat (limited to 'README.md')
-rw-r--r--README.md17
1 files changed, 10 insertions, 7 deletions
diff --git a/README.md b/README.md
index 03f6964..b29542c 100644
--- a/README.md
+++ b/README.md
@@ -49,16 +49,18 @@ Populate from the NFS mirror with the FULL package set, not a minimal install.
A minimal base causes false "missing dependency" results that would not happen
on a normal user's full Slackware install.
+Set `SLACKWARE_BASE` and `LOCAL_MIRROR_15` in the script's CONFIG block, then
+run once as root:
+
```sh
-mkdir -p /sbo-base/15.0
-for p in /mnt/nfs/slackware64-15.0/slackware64/*/*.t?z; do
- installpkg --root /sbo-base/15.0 "$p"
-done
+sbo-batch-test --init-base
```
-Adjust the two paths to your `SLACKWARE_BASE` and `LOCAL_MIRROR_15`. The tool
-will not auto-bootstrap the base unattended; if the base is missing or
-incomplete it fails fast with this exact hint.
+This installs the full `slackware64/*/*.t?z` set into `SLACKWARE_BASE` and
+exits. It refuses to clobber an already-populated base (remove the directory
+first to re-init). The tool will not auto-bootstrap the base during a build; if
+the base is missing or incomplete a build fails fast and points you at
+`--init-base`.
The base is kept patched automatically on each run: when the mirror's
ChangeLog head differs from the recorded marker, new packages from
@@ -108,6 +110,7 @@ sbo-batch-test --dry-run playwright-cli
| `--dry-run` | Resolve and print build order, do not build. |
| `--with-x` | Enable X passthrough (`xhost +local:hosts`). Headless by default. Security caveat: allows local non-network connections to your X server. |
| `-j`, `--jobs N` | Reserved. No-op stub today (builds are serial). |
+| `--init-base` | First-time populate `SLACKWARE_BASE` from the mirror, then exit. Run once before the first build. Refuses to clobber an existing base. |
## Per-package status values