| Age | Commit message (Collapse) | Author | Files | Lines |
|
The shared-deps tradeoff bullet still described the package cache as a
future TODO not yet implemented. The cache has shipped; point the bullet
at it instead.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
feh + imlib2 ran the full overlay/chroot/build/installpkg/cache path on the
build system. Only an actual base patch (mirror was up-to-date) and the
real-version eviction path remain unseen on hardware.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
build_one gains a third arg is_target (default 0). Dependencies with a
version-matching cached package are installed from cache (status CACHED)
and skip the build entirely. The target always builds. After any successful
build, the produced package is copied into PKG_CACHE via cache_store before
overlay teardown, making it available for future runs or sibling targets.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Implements cache_decision <cat> <prog> <version> which inspects
$PKG_CACHE/<cat>/<prog>/ and returns "cached", "bump:OLD:NEW", or "new".
Empty PKG_CACHE disables the cache. Tests in test-logic.sh cover all
four outcomes and are driven pure (no VM needed).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
11 tasks: PKG_CACHE config, pure cache_decision/path/store/version_of with
self-check coverage, forced controlled OUTPUT (no /repo inheritance),
build_one wiring (target builds fresh, deps install from cache), CACHED status
+ count, base-patch wipe, docs, VM verification.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Persistent on-disk cache of built dependency packages, keyed prog+version,
SBo-tree layout, reused across runs while version is unchanged. Target always
builds fresh; cache wiped on base patch. Pure cache_decision/store/path
functions for self-check coverage.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
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 <noreply@anthropic.com>
|
|
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>
|
|
Document that the overlayfs setup, system bind mounts, base patching, and
teardown ordering are inspired by overlay-chroot.sh by Slackware user
bassmadrigal (Jeremy Hansen).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
|
Batch-test SlackBuilds against a clean Slackware 15.0 overlay chroot.
Non-interactive, local-tree-only dependency resolution with topological
sort, per-target disposable overlay, persistent per-package logs, and a
color summary.
Includes README.md, CLAUDE.md working notes, the reference overlay-chroot.sh,
the original spec, and test-logic.sh (resolver + BLOCKED-BY-DEP self-check,
12 checks passing).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|