[projects/pld-builder.new] Use rpm instead of poldek for removing packages.

arekm arekm at pld-linux.org
Wed Apr 15 23:01:03 CEST 2026


commit dce01bb067f8858a1308e1b2ab7ac106b7dc5331
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date:   Wed Apr 15 23:00:42 2026 +0200

    Use rpm instead of poldek for removing packages.

 PLD_Builder/install.py | 22 ++++++++++++++++++----
 1 file changed, 18 insertions(+), 4 deletions(-)
---
diff --git a/PLD_Builder/install.py b/PLD_Builder/install.py
index ea5e90d..3e1ce50 100644
--- a/PLD_Builder/install.py
+++ b/PLD_Builder/install.py
@@ -17,6 +17,9 @@ hold = [
     'util-linux'
 ]
 
+def rpm_remove(pkgs, b):
+    return chroot.run("rpm --allmatches -e %s" % pkgs, logfile = b.logfile, user = "root")
+
 def close_killset(killset):
     k = killset.keys()
     if len(k) == 0:
@@ -65,7 +68,7 @@ def upgrade_from_batch(r, b):
         k = ' '.join(killset.keys())
         if True:
             b.log_line("upgrade requires removal of %s" % k)
-            res = chroot.run("rpm --allmatches -e %s" % k, logfile = b.logfile, user = "root")
+            res = rpm_remove(k, b)
             if res != 0:
                 b.log_line("package removal failed")
                 return False
@@ -154,9 +157,20 @@ def cleanup_stale_packages(b):
             stale[name] = 1
     f.close()
 
-    if stale:
-        b.log_line("removing stale packages from chroot: %s" % ' '.join(stale.keys()))
-        uninstall(stale, b)
+    if not stale:
+        return
+
+    for p in hold:
+        stale.pop(p, None)
+
+    if not stale:
+        return
+
+    names = ' '.join(sorted(stale))
+    b.log_line("removing stale packages from chroot: %s" % names)
+    res = rpm_remove(names, b)
+    if res != 0:
+        b.log_line("warning: stale package removal had errors (non-fatal)")
 
 def install_br(r, b):
     log.notice("installing BuildRequires for %s" % b.spec)
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/projects/pld-builder.new.git/commitdiff/dce01bb067f8858a1308e1b2ab7ac106b7dc5331



More information about the pld-cvs-commit mailing list