diff options
| author | Danilo M. <danix@danix.xyz> | 2026-09-26 10:03:08 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-09-26 10:03:08 +0200 |
| commit | 83b30e4076356e7a2a104e7f67f727c792699107 (patch) | |
| tree | 5a198620a5995da48843e526e2ca29dfc2f1bfe6 /README.md | |
| parent | 2addd8bd31e146e91cc2489840da7b4ae1325eed (diff) | |
| download | dist-upgrade-83b30e4076356e7a2a104e7f67f727c792699107.tar.gz dist-upgrade-83b30e4076356e7a2a104e7f67f727c792699107.zip | |
Handle slackpkg exit 20 and 50, auto-restart on self-upgrade
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.
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 4 |
1 files changed, 4 insertions, 0 deletions
@@ -35,6 +35,10 @@ Environment: - the module set against the pre-upgrade snapshot (notices modules lost). 4. Reports whether a reboot is recommended. +If slackpkg upgrades itself mid-run (exit status 50) the script re-executes +once from the top to finish the operation, exactly as slackpkg's own message +asks. A second occurrence aborts with a message instead of looping. + Unattended mode runs the package commands with `-batch=on -default_answer=y`. `clean-system` is the exception: unattended it only lists packages that are not part of the official Slackware set and removes nothing, so third-party or |
