diff options
| author | Danilo M. <danix@danix.xyz> | 2026-07-13 14:37:28 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-07-13 14:37:28 +0200 |
| commit | f273077105877e2b0558702e0eaa47f34a36c01a (patch) | |
| tree | 3b63be7139ca1c9a1cbb14ba46db06531f52a0a3 /.extras/image-builder/lib.sh | |
| parent | e513a3ea2bdd722735a2e453fb9653137c52f5b9 (diff) | |
| download | sbo-slackbuilds-f273077105877e2b0558702e0eaa47f34a36c01a.tar.gz sbo-slackbuilds-f273077105877e2b0558702e0eaa47f34a36c01a.zip | |
image-builder: accept any Slackware pkg extension (*.t?z) not just .txz
Upstream sbopkg ships as .tgz, not .txz. The require_pkgs guard, txz_hash
find, cp staging, and Dockerfile COPY all hard-coded *.txz, so a .tgz
package failed the presence check and was excluded from the rebuild hash.
Widen every glob to *.t?z (matches .txz/.tgz/.tbz/.tlz); stage the whole
pkgs dir into the image and installpkg the lot, dropping the in-image
extension coupling entirely.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Diffstat (limited to '.extras/image-builder/lib.sh')
| -rw-r--r-- | .extras/image-builder/lib.sh | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/.extras/image-builder/lib.sh b/.extras/image-builder/lib.sh index 6cd9e4e..da12fd0 100644 --- a/.extras/image-builder/lib.sh +++ b/.extras/image-builder/lib.sh @@ -46,12 +46,13 @@ fetch() { } # txz_hash DIR -# Stable hash of the set of .txz files in DIR (names + contents), order +# Stable hash of the set of Slackware package files (*.t?z) in DIR (names + +# contents), order # independent. Empty/absent dir -> empty string. txz_hash() { local dir="$1" [[ -d "$dir" ]] || { printf ''; return 0; } - local files; files=$(find "$dir" -maxdepth 1 -name '*.txz' -type f | sort) + local files; files=$(find "$dir" -maxdepth 1 -name '*.t?z' -type f | sort) [[ -n "$files" ]] || { printf ''; return 0; } # Hash sorted "name sha256" lines so reordering does not change output. while IFS= read -r f; do |
