[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