ffbe098ef8
TLC (Twilight Commander) was missing from both ISO configs. Added
tlc = {} to [packages] in redbear-mini.toml and redbear-full.toml.
Created missing symlink: recipes/tui/tlc -> ../../local/recipes/tui/tlc.
46 lines
1.6 KiB
Bash
Executable File
46 lines
1.6 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# validate-collision-log.sh — Check build output for CollisionTracker findings
|
|
#
|
|
# Scans the build directory for any log files containing CollisionTracker
|
|
# output ([COLLISION-ERROR] or [COLLISION-WARN] markers). The runtime
|
|
# CollisionTracker runs during image assembly in redox_installer.
|
|
#
|
|
# Exit codes:
|
|
# 0 — No collision errors found
|
|
# 1 — Collision errors detected
|
|
|
|
set -euo pipefail
|
|
|
|
build_dir="${1:?Usage: validate-collision-log.sh <build-dir>}"
|
|
|
|
errors=0
|
|
warnings=0
|
|
|
|
if [ -d "$build_dir" ]; then
|
|
while IFS= read -r logfile; do
|
|
file_errors=$(grep -c '\[COLLISION-ERROR\]' "$logfile" 2>/dev/null || true)
|
|
file_warnings=$(grep -c '\[COLLISION-WARN\]' "$logfile" 2>/dev/null || true)
|
|
if [ "$file_errors" -gt 0 ] || [ "$file_warnings" -gt 0 ]; then
|
|
echo " $logfile: $file_errors error(s), $file_warnings warning(s)"
|
|
errors=$((errors + file_errors))
|
|
warnings=$((warnings + file_warnings))
|
|
fi
|
|
done < <(find "$build_dir" -name '*.log' -type f 2>/dev/null)
|
|
fi
|
|
|
|
echo "=== CollisionTracker log validation ==="
|
|
echo " Errors: $errors, Warnings: $warnings"
|
|
|
|
if [ "$errors" -gt 0 ]; then
|
|
echo "FAILED: $errors collision error(s) in build logs" >&2
|
|
echo " The CollisionTracker detected init service or environment file collisions." >&2
|
|
echo " Fix: Move config [[files]] init services from /usr/lib/init.d/ to /etc/init.d/" >&2
|
|
exit 1
|
|
fi
|
|
|
|
if [ "$warnings" -gt 0 ]; then
|
|
echo "WARN: $warnings non-critical collision(s) detected (not blocking)"
|
|
fi
|
|
|
|
echo "PASSED: No collision errors"
|