On Wed, 2008-11-12 at 17:55 -0500, Jeremy Katz wrote: > (And now, for the tested version :-) > > For new repos that are added, we should also be sure to add their comps > information to the base comps object. This largely cut and pastes bits from > yum's doGroupSetup(), but that can't be done on a per-repo basis. We should > add some API, but this will do for now > --- > iw/task_gui.py | 16 ++++++++++++++++ > 1 files changed, 16 insertions(+), 0 deletions(-) Looks good to me. Dave > > diff --git a/iw/task_gui.py b/iw/task_gui.py > index 8296e83..5f3c8b6 100644 > --- a/iw/task_gui.py > +++ b/iw/task_gui.py > @@ -21,6 +21,7 @@ import gtk > import gtk.glade > import gobject > import gui > +import gzip > from iw_gui import * > from image import * > from constants import * > @@ -43,6 +44,21 @@ def setupRepo(anaconda, repo): > anaconda.backend.doRepoSetup(anaconda, thisrepo=repo.id, fatalerrors=False) > anaconda.backend.doSackSetup(anaconda, thisrepo=repo.id, fatalerrors=False) > log.info("added repository %s with with source URL %s" % (repo.name, repo.mirrorlist or repo.baseurl)) > + # FIXME: need a per-repo way of doing this; largely cut and paste > + # from yum right now > + if not repo.groups_added: > + try: > + groupfile = repo.getGroups() > + # open it up as a file object so iterparse can cope > + # with our gz file > + if groupfile is not None and groupfile.endswith('.gz'): > + groupfile = gzip.open(groupfile) > + anaconda.backend.ayum._comps.add(groupfile) > + except Exception, e: > + log.debug("unable to add group information for repository %s" %(repo.name)) > + else: > + repo.groups_added = True > + log.info("added group information for repository %s" %(repo.name)) > except yum.Errors.RepoError, e: > anaconda.intf.messageWindow(_("Error"), > _("Unable to read package metadata from repository. " _______________________________________________ Anaconda-devel-list mailing list Anaconda-devel-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/anaconda-devel-list