[master 1/1] Fix SoftwareSpoke._kickstarted.

dashea installerbot-noreply at redhat.com
Wed Jul 29 18:47:48 UTC 2015


From: David Shea <dshea at redhat.com>

Instead of basing the decision on the contents of a list that does not
get populated for kickstart installs, reset kickstarted flag in the
signal handlers for the environment and addon listboxes. Besides fixing
the problem of kickstart %packages always being treated as interactive,
this will catch potential changes to --optional or --nodefaults
triggered by GUI interactions.

Thanks to clumens for both finding the underlying problem and coming up
with the idea to fix it.
---
 pyanaconda/ui/gui/spokes/software.py | 15 ++++++---------
 1 file changed, 6 insertions(+), 9 deletions(-)

diff --git a/pyanaconda/ui/gui/spokes/software.py b/pyanaconda/ui/gui/spokes/software.py
index 3ef6a4e..d8b3402 100644
--- a/pyanaconda/ui/gui/spokes/software.py
+++ b/pyanaconda/ui/gui/spokes/software.py
@@ -132,15 +132,6 @@ def _payload_error(self):
     def _apply(self):
         env = self._get_selected_environment()
 
-        # Check if a kickstart install still looks like a kickstart install
-        # If an environment is selected and either the environment or the
-        # addon list does not match the ksdata, the packages were
-        # selected interactively.
-        if env and self._kickstarted:
-            if env != self.data.packages.environment or \
-                    set(self.selectedGroups) != set(self.data.packages.groupList):
-                self._kickstarted = False
-
         # Not a kickstart with packages, setup the environment and groups
         if env and not self._kickstarted:
             addons = self._get_selected_addons()
@@ -462,6 +453,9 @@ def on_environment_activated(self, listbox, row):
         if not self._selectFlag:
             return
 
+        # GUI selections means that packages are no longer coming from kickstart
+        self._kickstarted = False
+
         box = row.get_children()[0]
         button = box.get_children()[0]
 
@@ -485,6 +479,9 @@ def on_addon_activated(self, listbox, row):
         if isinstance(box, Gtk.Separator):
             return
 
+        # GUI selections means that packages are no longer coming from kickstart
+        self._kickstarted = False
+
         button = box.get_children()[0]
         addons = self._allAddons()
         group = addons[row.get_index()]


-- 
To view this commit on github, visit https://github.com/rhinstaller/anaconda/commit/780d0650822d54dc2b64c438ddb150260aaf42f2


More information about the anaconda-patches mailing list