imgcreate/yuminst.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-)
New commits: commit ce58f625e8215cface69ddc7f12cfbded0e3c66f Author: Jeremy Katz <[EMAIL PROTECTED]> Date: Mon Feb 11 14:16:37 2008 -0500 Ensure removing packages (-foo) really removes them -foo works as long as the package is a regular package, but it intentionally doesn't remove them from being pulled in for deps. We don't, though, want them to be pulled in as a result of the conditional requirements. So go through and remove them from the conditionals dict. Yes, this is ugly but conditionals are generally ugly diff --git a/imgcreate/yuminst.py b/imgcreate/yuminst.py index d15ed2f..14f4806 100644 --- a/imgcreate/yuminst.py +++ b/imgcreate/yuminst.py @@ -100,7 +100,15 @@ class LiveCDYum(yum.YumBase): txmbrs.append(p) if len(txmbrs) > 0: - map(lambda x: self.tsInfo.remove(x.pkgtup), txmbrs) + for x in txmbrs: + self.tsInfo.remove(x.pkgtup) + # we also need to remove from the conditionals + # dict so that things don't get pulled back in as a result + # of them. yes, this is ugly. conditionals should die. + for req, pkgs in self.tsInfo.conditionals: + if x in pkgs: + pkgs.remove(x) + self.tsInfo.conditionals[req] = pkgs else: print >> sys.stderr, "No such package %s to remove" %(pkg,) -- Fedora-livecd-list mailing list Fedora-livecd-list@redhat.com https://www.redhat.com/mailman/listinfo/fedora-livecd-list