Package: piuparts
Version: 1.6.0

hi,

please find a couple of patches to update piuparts' invocation of adequate(1),
to reflect the current set of the latter's tags.

I'm afraid I didn't do much in terms of verification, besides running the nose
tests, which seem to have a rather limited coverage.

happy to iterate on the patches if needed, and/or do further checks if you don't
mind giving some concrete guidance on how to do so (all of the relevant docs in
the repo seem rather quite stale)

somewhat incidentally: is ignored_tags ever set? if not, we could drop the
manual filtering out of tags to ignore; if it is, that part could be refactored
to ask adequate to not check for those tags (rather than have adequate check for
all tags and piuparts manually filter out entries for ignored tags)

thanks,
serafi
From 3743a3b784d195a9cc767e1c2602cff8a9ece66b Mon Sep 17 00:00:00 2001
From: Serafeim Zanikolas <[email protected]>
Date: Mon, 14 Sep 2026 22:16:03 +0200
Subject: [PATCH 1/2] drop obsolete adequate tags

the tags below have long been deprecated, and are treated as no-ops:

	bin-or-sbin-binary-requires-usr-lib-library
	incompatible-licenses
	pyshared-file-not-bytecompiled
---
 ...ry_requires_usr_lib_library_inadequate_issue.conf | 11 -----------
 .../incompatible_licenses_inadequate_issue.conf      | 11 -----------
 ...hared_file_not_bytecompiled_inadequate_issue.conf | 11 -----------
 piuparts-report.py                                   | 12 ------------
 piuparts.py                                          |  3 ---
 5 files changed, 48 deletions(-)
 delete mode 100644 known_problems/bin_or_sbin_binary_requires_usr_lib_library_inadequate_issue.conf
 delete mode 100644 known_problems/incompatible_licenses_inadequate_issue.conf
 delete mode 100644 known_problems/pyshared_file_not_bytecompiled_inadequate_issue.conf

diff --git a/known_problems/bin_or_sbin_binary_requires_usr_lib_library_inadequate_issue.conf b/known_problems/bin_or_sbin_binary_requires_usr_lib_library_inadequate_issue.conf
deleted file mode 100644
index 7995b6b2..00000000
--- a/known_problems/bin_or_sbin_binary_requires_usr_lib_library_inadequate_issue.conf
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# detect packages with some inadequate tag from adequate
-#
-PATTERN='(FAIL|WARN): Running adequate resulted in .* bin-or-sbin-binary-requires-usr-lib-library'
-WHERE='pass fail bugged affected'
-ISSUE=1
-HEADER="Packages tagged 'bin-or-sbin-binary-requires-usr-lib-library' by adequate"
-HELPTEXT="
-<p>Running <a href="https://packages.debian.org/adequate"; target="_blank">adequate</a> resulted in the package being tagged 'bin-or-sbin-binary-requires-usr-lib-library' which indicates a bug.
-</p>
-"
diff --git a/known_problems/incompatible_licenses_inadequate_issue.conf b/known_problems/incompatible_licenses_inadequate_issue.conf
deleted file mode 100644
index be0b0618..00000000
--- a/known_problems/incompatible_licenses_inadequate_issue.conf
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# detect packages with some inadequate tag from adequate
-#
-PATTERN='(FAIL|WARN): Running adequate resulted in .* incompatible-licenses'
-WHERE='pass fail bugged affected'
-ISSUE=1
-HEADER="Packages tagged 'incompatible-licenses' by adequate"
-HELPTEXT="
-<p>Running <a href="https://packages.debian.org/adequate"; target="_blank">adequate</a> resulted in the package being tagged 'incompatible-licenses' which indicates a bug.
-</p>
-"
diff --git a/known_problems/pyshared_file_not_bytecompiled_inadequate_issue.conf b/known_problems/pyshared_file_not_bytecompiled_inadequate_issue.conf
deleted file mode 100644
index 579da3bf..00000000
--- a/known_problems/pyshared_file_not_bytecompiled_inadequate_issue.conf
+++ /dev/null
@@ -1,11 +0,0 @@
-#
-# detect packages with some inadequate tag from adequate
-#
-PATTERN='(FAIL|WARN): Running adequate resulted in .* pyshared-file-not-bytecompiled'
-WHERE='pass fail bugged affected'
-ISSUE=1
-HEADER="Packages tagged 'pyshared-file-not-bytecompiled' by adequate"
-HELPTEXT="
-<p>Running <a href="https://packages.debian.org/adequate"; target="_blank">adequate</a> resulted in the package being tagged 'pyshared-file-not-bytecompiled' which indicates a bug.
-</p>
-"
diff --git a/piuparts-report.py b/piuparts-report.py
index b2654407..dad0d35a 100644
--- a/piuparts-report.py
+++ b/piuparts-report.py
@@ -476,14 +476,6 @@ linktarget_by_template = [
         "boring_broken_symlink_file_inadequate_issue.tpl",
         "...and logfile contains tag from adequate 'broken-symlink-file'",
     ),
-    (
-        "bin_or_sbin_binary_requires_usr_lib_library_inadequate_issue.tpl",
-        "but adequate found a binary in /bin or /sbin that requires a /usr/lib library",
-    ),
-    (
-        "incompatible_licenses_inadequate_issue.tpl",
-        "but adequate found a license incompatibility",
-    ),
     (
         "broken_binfmt_detector_inadequate_issue.tpl",
         "but adequate did not find the detector registered with update_binfmts",
@@ -512,10 +504,6 @@ linktarget_by_template = [
         "py_file_not_bytecompiled_inadequate_issue.tpl",
         "but adequate found a .py file that is not byte-compiled",
     ),
-    (
-        "pyshared_file_not_bytecompiled_inadequate_issue.tpl",
-        "but adequate found a .py file in /usr/share/pyshared that is not byte-compiled",
-    ),
     (
         "ldd_inadequate_issue.tpl",
         "but adequate failed to run ldd on a binary or library",
diff --git a/piuparts.py b/piuparts.py
index 9e927f42..6be6b542 100755
--- a/piuparts.py
+++ b/piuparts.py
@@ -1572,10 +1572,8 @@ class Chroot:
             (status, output) = run(["dpkg-query", "-f", "${Version}\n", "-W", "adequate"], ignore_errors=True)
             logging.info("Running adequate version %s now." % output.strip())
             adequate_tags = [
-                "bin-or-sbin-binary-requires-usr-lib-library",
                 "broken-binfmt-detector",
                 "broken-binfmt-interpreter",
-                "incompatible-licenses",
                 "ldd-failure",
                 "library-not-found",
                 "missing-alternative",
@@ -1584,7 +1582,6 @@ class Chroot:
                 "missing-symbol-version-information",
                 "program-name-collision",
                 "py-file-not-bytecompiled",
-                "pyshared-file-not-bytecompiled",
                 "symbol-size-mismatch",
                 "undefined-symbol",
             ]
-- 
2.47.3

From 293557b25203749cf4678a22dab000e2bef99a82 Mon Sep 17 00:00:00 2001
From: Serafeim Zanikolas <[email protected]>
Date: Mon, 14 Sep 2026 22:39:50 +0200
Subject: [PATCH 2/2] enable new adequate tags for detecting invalid users or
 groups in systemd, D-bus and sysvinit files

---
 known_problems/invalid_dbus_user_or_group.conf     | 10 ++++++++++
 known_problems/invalid_systemd_user_or_group.conf  | 10 ++++++++++
 known_problems/invalid_sysvinit_user_or_group.conf | 10 ++++++++++
 piuparts-report.py                                 | 12 ++++++++++++
 piuparts.py                                        |  3 +++
 5 files changed, 45 insertions(+)
 create mode 100644 known_problems/invalid_dbus_user_or_group.conf
 create mode 100644 known_problems/invalid_systemd_user_or_group.conf
 create mode 100644 known_problems/invalid_sysvinit_user_or_group.conf

diff --git a/known_problems/invalid_dbus_user_or_group.conf b/known_problems/invalid_dbus_user_or_group.conf
new file mode 100644
index 00000000..f8315caf
--- /dev/null
+++ b/known_problems/invalid_dbus_user_or_group.conf
@@ -0,0 +1,10 @@
+#
+# detect packages with some inadequate tag from adequate
+#
+PATTERN='(FAIL|WARN): Running adequate resulted in .*invalid-dbus-user-or-group'
+WHERE='pass fail bugged affected'
+ISSUE=1
+HEADER="Packages tagged 'invalid-dbus-user-or-group' by adequate"
+HELPTEXT="
+<p>Running <a href="https://packages.debian.org/adequate"; target="_blank">adequate</a> resulted in the package being tagged 'invalid-dbus-user-or-group' which indicates a bug.
+"
diff --git a/known_problems/invalid_systemd_user_or_group.conf b/known_problems/invalid_systemd_user_or_group.conf
new file mode 100644
index 00000000..78153eb1
--- /dev/null
+++ b/known_problems/invalid_systemd_user_or_group.conf
@@ -0,0 +1,10 @@
+#
+# detect packages with some inadequate tag from adequate
+#
+PATTERN='(FAIL|WARN): Running adequate resulted in .*invalid-systemd-user-or-group'
+WHERE='pass fail bugged affected'
+ISSUE=1
+HEADER="Packages tagged 'invalid-systemd-user-or-group' by adequate"
+HELPTEXT="
+<p>Running <a href="https://packages.debian.org/adequate"; target="_blank">adequate</a> resulted in the package being tagged 'invalid-systemd-user-or-group' which indicates a bug.
+"
diff --git a/known_problems/invalid_sysvinit_user_or_group.conf b/known_problems/invalid_sysvinit_user_or_group.conf
new file mode 100644
index 00000000..8422222b
--- /dev/null
+++ b/known_problems/invalid_sysvinit_user_or_group.conf
@@ -0,0 +1,10 @@
+#
+# detect packages with some inadequate tag from adequate
+#
+PATTERN='(FAIL|WARN): Running adequate resulted in .*invalid-sysvinit-user-or-group.conf'
+WHERE='pass fail bugged affected'
+ISSUE=1
+HEADER="Packages tagged 'invalid-sysvinit-user-or-group.conf' by adequate"
+HELPTEXT="
+<p>Running <a href="https://packages.debian.org/adequate"; target="_blank">adequate</a> resulted in the package being tagged 'invalid-sysvinit-user-or-group.conf' which indicates a bug.
+"
diff --git a/piuparts-report.py b/piuparts-report.py
index dad0d35a..6bb63146 100644
--- a/piuparts-report.py
+++ b/piuparts-report.py
@@ -527,6 +527,18 @@ linktarget_by_template = [
         "packages_have_been_kept_back_issue.tpl",
         "but logfile contains 'packages have been kept back'",
     ),
+    (
+        "invalid_dbus_user_or_group.tpl",
+        "but adequate found that a D-Bus configuration file specifies an invalid user or group",
+    ),
+    (
+        "invalid_systemd_user_or_group.tpl",
+        "but adequate found that a systemd service unit script specifies an invalid user or group",
+    )
+    (
+        "invalid_sysvinit_user_or_group.tpl",
+        "but adequate found that a sysvinit script specifies an invalid user or group",
+    ),
     ("needs_rebuild_issue.tpl", "but logfile recommends to rebuild some packages"),
     ("module_build_error_issue.tpl", "but logfile contains dkms module build failures"),
     ("obsolete_conffiles_issue.tpl", "but logfile reports obsolete conffiles"),
diff --git a/piuparts.py b/piuparts.py
index 6be6b542..0fac9704 100755
--- a/piuparts.py
+++ b/piuparts.py
@@ -1574,6 +1574,9 @@ class Chroot:
             adequate_tags = [
                 "broken-binfmt-detector",
                 "broken-binfmt-interpreter",
+                "invalid-dbus-user-or-group",
+                "invalid-systemd-user-or-group",
+                "invalid-sysvinit-user-or-group",
                 "ldd-failure",
                 "library-not-found",
                 "missing-alternative",
-- 
2.47.3

Attachment: signature.asc
Description: PGP signature

Reply via email to