diff options
| author | Danilo M. <danix@danix.xyz> | 2026-09-26 10:11:32 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-09-26 10:11:32 +0200 |
| commit | 24ef37c302c1c7900c113dd92240000a2cacf755 (patch) | |
| tree | 1ff545207cacd32b32dd43c57064058aa2c92670 | |
| parent | 7b07552c1e0fe5798c993b1c8cd54b0465921f34 (diff) | |
| download | dist-upgrade-24ef37c302c1c7900c113dd92240000a2cacf755.tar.gz dist-upgrade-24ef37c302c1c7900c113dd92240000a2cacf755.zip | |
Ship a logrotate rule for the run log
/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.
| -rw-r--r-- | AGENTS.md | 9 | ||||
| -rw-r--r-- | README.md | 3 | ||||
| -rw-r--r-- | logrotate.d/dist-upgrade | 9 |
3 files changed, 19 insertions, 2 deletions
@@ -11,6 +11,10 @@ Run all of these before calling a change done: ./dist-upgrade --self-test shellcheck --exclude=SC2218 dist-upgrade +If `logrotate` is available, the shipped rule can be checked with: + + logrotate -d logrotate.d/dist-upgrade + SC2218 is a shellcheck 0.11.0 false positive: it flags a function called on the left of a pipe inside another function definition (`b() { a | cat; }`), even when `a` is defined above. Keep it excluded; do not restructure the pipeline to @@ -21,8 +25,9 @@ silence it. - Do not run the script itself, or any `slackpkg` command, in this repo. It performs a real system upgrade and only makes sense on the user's Slackware box as root. -- Do not add config, cache or log files. The script is self-contained and - configured through the `INITRD` environment variable. +- Do not add runtime config, cache or log files. The script is self-contained + and configured through the `INITRD` and `LOG` environment variables; the only + config it ships is `logrotate.d/dist-upgrade`. ## Conventions @@ -25,6 +25,9 @@ Environment: - `LOG` append the whole run, slackpkg output included, to this file (default `/var/log/dist-upgrade.log`; set it empty to disable) +A logrotate rule for that log ships in `logrotate.d/dist-upgrade`; install it +to `/etc/logrotate.d/`. + ## What it does 1. Snapshots the current initrd's kernel version and module list. diff --git a/logrotate.d/dist-upgrade b/logrotate.d/dist-upgrade new file mode 100644 index 0000000..30af922 --- /dev/null +++ b/logrotate.d/dist-upgrade @@ -0,0 +1,9 @@ +/var/log/dist-upgrade.log { + weekly + rotate 8 + missingok + notifempty + compress + delaycompress + create 0640 root root +} |
