| Age | Commit message (Collapse) | Author | Files | Lines |
|
An unattended run answers new-config non-interactively, so .new files
can remain. When the leftover scan finds any, a non-interactive run now
ends with a hint to run 'slackpkg new-config' to merge them.
The r8125 rebuild now runs before the leftover scan and the recaps, so
its build output no longer buries them and any .new file it installs is
listed too.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
When the r8125 package is installed and the newest kernel under
/lib/modules has no r8125 module, rebuild it from the SBo -current
SlackBuild (R8125_DIR, default /var/lib/sbopkg/SBo-git/network/r8125)
and install it with upgradepkg. The SlackBuild dir is copied into the
run's temp dir so the sbopkg tree stays clean, and the source is checked
against the .info MD5. A failure warns that the NIC may not come up
after reboot instead of aborting the run.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
exec > >(tee ...) sent slackpkg's TUI (dialog writes to stderr) into the
log pipe, so the curses interface never reached the terminal and output
was mangled. Only tee non-interactive runs now; interactive runs skip
logging and keep fds 0/1/2 on the tty. Add an INT trap so Ctrl+C aborts
with 130 instead of letting the run continue.
|
|
Unattended clean-system lists removable packages but removes nothing by
design, and with no reminder they were easy to miss. Non-interactive
clean-system exits 0 when it listed candidates and 20 when there were
none, so set CLEAN_PENDING from the return code and print a closing line
telling the user to re-run with -i.
|
|
/var/log/dist-upgrade.log grows across runs: rotate weekly, keep 8
compressed, mode 0640 root:root. Uses create rather than copytruncate
since the script reopens the file on each run.
|
|
Non-interactive runs leave obsolete .new config files in place: new-config
exits without acting and there was no record to debug later. Tee the whole
run (script messages plus slackpkg output) to LOG, default
/var/log/dist-upgrade.log, with a timestamped header per run (a second one
on a 50-restart). LOG= disables it.
Also report leftover .new files under /etc and /boot at the end of a run.
|
|
slackpkg's cleanup() exits 20 when no packages match (benign, e.g. an
install-new with nothing to do) and 50 when it upgraded itself and wants
the operation restarted. Treating every nonzero as fatal aborted the run
on the very common 20.
Add handle_rc(): 0 and 20 continue, real errors abort with the exit code,
and 50 re-execs the script once with the original arguments, guarded by
DIST_UPGRADE_RESTARTS so a repeated 50 aborts instead of looping. All
steps now go through it.
|
|
mkinitrd_command_generator often emits no -m and relies on -f for the
root filesystem, so the module check silently skipped. Parse -f as well
and drop any name listed in modules.builtin.
Also fix the parser itself: two greps inside a { } group share one stdin
stream, so the second grep saw EOF and returned nothing. Replaced with a
single awk pass.
|
|
|