aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorB. Watson <urchlay@slackware.uk>2026-09-14 23:50:52 -0400
committerB. Watson <urchlay@slackware.uk>2026-09-14 23:50:52 -0400
commit8dd8dc8616a879c00237f1ebca7f3cbcce1fb772 (patch)
tree7e8d065fe063129180d3d7560025e22dc9442417
parente809cd1952ba28415697df9fc654c72051e30e86 (diff)
downloadsbo-maintainer-tools-8dd8dc8616a879c00237f1ebca7f3cbcce1fb772.tar.gz
sbopkglint: add checks for /var/log and /var/lib/pkgtools.
-rw-r--r--NEWS3
-rw-r--r--sbopkglint.d/05-basic-sanity.t.sh3
-rw-r--r--sbopkglint.d/pre-doinst.sh9
3 files changed, 15 insertions, 0 deletions
diff --git a/NEWS b/NEWS
index dd650f3..8a87c76 100644
--- a/NEWS
+++ b/NEWS
@@ -12,6 +12,9 @@ sbolint:
sbopkglint:
- Package which bundle their own glibc in /opt no longer trigger
a bad glibc version error (example: signal-desktop).
+- Only empty (0-byte) files named *.new may exist in /var/log.
+- The directories /var/lib/pkgtools/{scripts,douninst.sh,packages}
+ may not exist in the package tarball.
New in 0.9.8:
=============
diff --git a/sbopkglint.d/05-basic-sanity.t.sh b/sbopkglint.d/05-basic-sanity.t.sh
index aa04cf9..79c75c7 100644
--- a/sbopkglint.d/05-basic-sanity.t.sh
+++ b/sbopkglint.d/05-basic-sanity.t.sh
@@ -220,5 +220,8 @@ for i in bin sbin usr/bin usr/sbin; do
fi
done
+find_warnfiles "invalid file in /var/log (only 0-byte .new files allowed)" \
+ var/log -type f -a \! \( -empty -a -name '*.new' \)
+
find_warnfiles "package contains files owned by UID/GID >= 1000" \
. \( -uid +999 -o -gid +999 \)
diff --git a/sbopkglint.d/pre-doinst.sh b/sbopkglint.d/pre-doinst.sh
index c374b8f..6499240 100644
--- a/sbopkglint.d/pre-doinst.sh
+++ b/sbopkglint.d/pre-doinst.sh
@@ -25,10 +25,19 @@ usr/lib64/perl5/perllocal.pod \
var/cache/fontconfig/CACHEDIR.TAG \
var/cache/man/usr-man/CACHEDIR.TAG"
+baddirs="\
+var/lib/pkgtools/scripts
+var/lib/pkgtools/douninst.sh
+var/lib/pkgtools/packages"
+
for i in $badfiles; do
[ -e "$i" ] && warn "package contains forbidden file: $i"
done
+for i in $baddirs; do
+ [ -e "$i" ] && warn "package contains forbidden directory: $i"
+done
+
if [ -d usr/share/fonts ]; then
find_warnfiles "package contains forbidden file(s):" \
usr/share/fonts -name 'fonts.*'