diff options
author | Chris Lumens <clumens@redhat.com> | 2012-10-19 10:44:35 -0400 |
---|---|---|
committer | Chris Lumens <clumens@redhat.com> | 2012-10-19 16:47:44 -0400 |
commit | f4ec3d682ffd93dfc7105eaa09acdd7fd672a3e8 (patch) | |
tree | 9672892c8117fdf04931f220e1871c8d2db8d4fc /pyanaconda/packaging | |
parent | 91aca5c967eaade8e299c507f56fe8be8a05bb3f (diff) | |
download | anaconda-f4ec3d682ffd93dfc7105eaa09acdd7fd672a3e8.tar.gz anaconda-f4ec3d682ffd93dfc7105eaa09acdd7fd672a3e8.tar.xz anaconda-f4ec3d682ffd93dfc7105eaa09acdd7fd672a3e8.zip |
Hook up the "Remove Packages" button on the dep solving error screen.
All this does is set skip_broken and yum does all the rest. Note that we
are still doing dep solving a second time, when the progress hub is up, but
adding this setting to the Payload object means skip_broken will be in effect
there too. We still need proper error handling for other errors that might
occur at that point.
This should take care of #865073. I can't think of any cases where you can
get past the first hub with a dep solving error.
Diffstat (limited to 'pyanaconda/packaging')
-rw-r--r-- | pyanaconda/packaging/__init__.py | 4 | ||||
-rw-r--r-- | pyanaconda/packaging/yumpayload.py | 4 |
2 files changed, 8 insertions, 0 deletions
diff --git a/pyanaconda/packaging/__init__.py b/pyanaconda/packaging/__init__.py index 6462a286d..b7402c762 100644 --- a/pyanaconda/packaging/__init__.py +++ b/pyanaconda/packaging/__init__.py @@ -640,6 +640,10 @@ class ArchivePayload(ImagePayload): pass class PackagePayload(Payload): + def __init__(self, *args, **kwargs): + Payload.__init__(self, *args, **kwargs) + self.skipBroken = False + """ A PackagePayload installs a set of packages onto the target system. """ @property def kernelPackages(self): diff --git a/pyanaconda/packaging/yumpayload.py b/pyanaconda/packaging/yumpayload.py index e42d44368..108992c09 100644 --- a/pyanaconda/packaging/yumpayload.py +++ b/pyanaconda/packaging/yumpayload.py @@ -1101,6 +1101,10 @@ reposdir=%s log.info("checking software selection") self.txID = time.time() + if self.skipBroken: + log.info("running software check with skip_broken = True") + self._yum.conf.skip_broken = True + self.release() self.deleteYumTS() |