[yum-commits] Branch 'yum-3_2_X' - 39 commits -

James Antill james at osuosl.org
Wed Nov 23 19:56:52 UTC 2011


 0 files changed

New commits:
commit 2af4d4db3384ffcd93829303385a15d4d656c68f
Merge: c757d31 7d5cb5b
Author: James Antill <james at and.org>
Date:   Wed Nov 23 14:55:16 2011 -0500

    Merge branch 'master' into yum-3_2_X
    
    * master: (33 commits)
      Add failure notice for people who accidentally hit this branch
      ...

commit 7d5cb5b871328d1ab445f6545fff94168d40cc44
Author: James Antill <james at and.org>
Date:   Tue Mar 24 18:40:48 2009 -0400

    Add failure notice for people who accidentally hit this branch

diff --git a/yummain.py b/yummain.py
index 4d330af..2d9ddef 100755
--- a/yummain.py
+++ b/yummain.py
@@ -311,6 +311,14 @@ def user_main(args, exit_code=False):
     return errcode
 
 if __name__ == "__main__":
+    if True:
+        print """
+  This is the unstable development branch of what will eventually be 4.0.0.
+You almost certainly don't want to be running this. Instead run:
+
+    git checkout -t origin/yum-3_2_X
+"""
+        sys.exit(1)
     try:
         user_main(sys.argv[1:], exit_code=True)
     except KeyboardInterrupt, e:
commit ae1dc2880747ae01b7f9c8a0b3e745b641a96132
Merge: 9b5b7a1 9ef1d3f
Author: James Antill <james at and.org>
Date:   Tue Mar 24 18:37:53 2009 -0400

    Merge against yum-3_2_X, and fix conflicts - 2009-03-24

diff --cc yum/__init__.py
index 94c8588,d71b2f3..af0cb85
--- a/yum/__init__.py
+++ b/yum/__init__.py
@@@ -80,25 -83,26 +81,44 @@@ __version_info__ = tuple([ int(num) fo
  # multiple YumBase() objects.
  default_grabber.opts.user_agent += " yum/" + __version__
  
 +# Setup "yum" logging APIs. Can use via. "import yum; yum.log() ... "
 +log  = logginglevels.EasyLogger("yum.YumBase")
 +vlog = logginglevels.EasyLogger("yum.verbose.YumBase")
 +
 +# Quick functions ... so everything isn't prefxied with log.
 +(info, warn, critical)   = (log.info, log.warn, log.critical)
 +(info1, info2, info3)    = (log.info2, log.info1, log.info3)
 +(debug, debug_tm)        = (log.debug, log.debug_tm)
 +(debug1, debug2)         = (log.debug1, log.debug2)
 +(debug3, debug4)         = (log.debug3, log.debug4)
 +
 +# dito. above, but for "verbose"
 +(vinfo, vwarn, vcritical)   = (vlog.info, vlog.warn, vlog.critical)
 +(vinfo1, vinfo2, vinfo3)    = (vlog.info2, vlog.info1, vlog.info3)
 +(vdebug, vdebug_tm)         = (vlog.debug, vlog.debug_tm)
 +(vdebug1, vdebug2)          = (vlog.debug1, vlog.debug2)
 +(vdebug3, vdebug4)          = (vlog.debug3, vlog.debug4)
 +verbose                     = vlog.verbose
 +
+ class _YumPreBaseConf:
+     """This is the configuration interface for the YumBase configuration.
+        So if you want to change if plugins are on/off, or debuglevel/etc.
+        you tweak it here, and when yb.conf does it's thing ... it happens. """
+ 
+     def __init__(self):
+         self.fn = '/etc/yum/yum.conf'
+         self.root = '/'
+         self.init_plugins = True
+         self.plugin_types = (plugins.TYPE_CORE,)
+         self.optparser = None
+         self.debuglevel = None
+         self.errorlevel = None
+         self.disabled_plugins = None
+         self.enabled_plugins = None
+         self.syslog_ident = None
+         self.syslog_facility = None
+         self.syslog_device = '/dev/log'
+ 
 -
  class YumBase(depsolve.Depsolve):
      """This is a primary structure and base class. It houses the objects and
         methods needed to perform most things in yum. It is almost an abstract
@@@ -387,9 -419,10 +438,9 @@@
  
          if self._rpmdb is None:
              rpmdb_st = time.time()
-             vdebug(_('Reading Local RPMDB'))
 -            self.verbose_logger.log(logginglevels.DEBUG_4,
 -                                    _('Reading Local RPMDB'))
++            vdebug4(_('Reading Local RPMDB'))
              self._rpmdb = rpmsack.RPMDBPackageSack(root=self.conf.installroot)
 -            self.verbose_logger.debug('rpmdb time: %0.3f' % (time.time() - rpmdb_st))
 +            vdebug_tm(rpmdb_st, 'rpmdb time')
          return self._rpmdb
  
      def closeRpmDB(self):
@@@ -513,8 -546,8 +564,8 @@@
          
          if self.conf.obsoletes:
              obs_init = time.time()    
-             self._up.rawobsoletes = self.pkgSack.returnObsoletes(newest=True)
+             self._up.rawobsoletes = self.pkgSack.returnObsoletes()
 -            self.verbose_logger.debug('up:Obs Init time: %0.3f' % (time.time() - obs_init))
 +            vdebug_tm(obs_init, 'up:Obs Init time')
              
          self._up.exactarch = self.conf.exactarch
          self._up.exactarchlist = self.conf.exactarchlist
@@@ -558,7 -591,8 +609,7 @@@
              return self._comps
  
          group_st = time.time()            
-         vdebug(_('Getting group metadata'))
 -        self.verbose_logger.log(logginglevels.DEBUG_4,
 -                                _('Getting group metadata'))
++        vdebug4(_('Getting group metadata'))
          reposWithGroups = []
          self.repos.doSetup()
          for repo in self.repos.listGroupsEnabled():
@@@ -583,8 -617,13 +634,8 @@@
              if repo.groups_added: # already added the groups from this repo
                  continue
                  
-             vdebug1(_('Adding group file from repository: %s'), repo)
 -            self.verbose_logger.log(logginglevels.DEBUG_4,
 -                _('Adding group file from repository: %s'), repo)
++            vdebug4(_('Adding group file from repository: %s'), repo)
              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)
 -                
              try:
                  self._comps.add(groupfile)
              except (Errors.GroupsError,Errors.CompsException), e:
@@@ -930,12 -967,12 +977,12 @@@
          for i in ('ts_all_fn', 'ts_done_fn'):
              if hasattr(cb, i):
                  fn = getattr(cb, i)
-                 if os.path.exists(fn):
-                     try:
-                         os.unlink(fn)
-                     except (IOError, OSError), e:
-                         critical(_('Failed to remove transaction file %s'), fn)
+                 try:
+                     misc.unlink_f(fn)
+                 except (IOError, OSError), e:
 -                    self.logger.critical(_('Failed to remove transaction file %s') % fn)
++                    critical(_('Failed to remove transaction file %s'), fn)
  
+         self.rpmdb.dropCachedData() # drop out the rpm cache so we don't step on bad hdr indexes
          self.plugins.run('posttrans')
          return resultobject
  
@@@ -1453,12 -1489,13 +1497,12 @@@
              if not os.path.exists(fn):
                  continue
              try:
-                 os.unlink(fn)
+                 misc.unlink_f(fn)
              except OSError, e:
 -                self.logger.warning(_('Cannot remove %s'), fn)
 +                warning(_('Cannot remove %s'), fn)
                  continue
              else:
 -                self.verbose_logger.log(logginglevels.DEBUG_4,
 -                    _('%s removed'), fn)
 +                vdebug4(_('%s removed'), fn)
          
      def cleanHeaders(self):
          exts = ['hdr']
@@@ -1493,12 -1529,13 +1536,12 @@@
  
          for item in filelist:
              try:
-                 os.unlink(item)
+                 misc.unlink_f(item)
              except OSError, e:
 -                self.logger.critical(_('Cannot remove %s file %s'), filetype, item)
 +                critical(_('Cannot remove %s file %s'), filetype, item)
                  continue
              else:
 -                self.verbose_logger.log(logginglevels.DEBUG_4,
 -                    _('%s file %s removed'), filetype, item)
 +                vdebug4(_('%s file %s removed'), filetype, item)
                  removed+=1
          msg = _('%d %s files removed') % (removed, filetype)
          return 0, [msg]
@@@ -2446,21 -2465,23 +2464,23 @@@
                  # if we have anything left unmatched, let's take a look for it
                  # being a dep like glibc.so.2 or /foo/bar/baz
                  
-                 if len(unmatched) > 0:
-                     arg = unmatched[0] #only one in there
+                 if not mypkgs:
+                     arg = kwargs['pattern']
 -                    self.verbose_logger.debug(_('Checking for virtual provide or file-provide for %s'), 
 -                        arg)
 +                    vdebug(_('Checking for virtual provide or file-provide for %s'), 
 +                           arg)
  
                      try:
                          mypkgs = self.returnPackagesByDep(arg)
                      except yum.Errors.YumBaseError, e:
 -                        self.logger.critical(_('No Match for argument: %s') % arg)
 +                        critical(_('No Match for argument: %s'), arg)
                      else:
-                         if mypkgs:
-                             #  Dep. installs don't do wildcards, so we
-                             # just want a single named package.
+                         # install MTA* == fail, because provides don't do globs
+                         # install /usr/kerberos/bin/* == success (and we want
+                         #                                all of the pkgs)
+                         if mypkgs and not misc.re_glob(arg):
                              mypkgs = self.bestPackagesFromList(mypkgs,
                                                                 single_name=True)
+                         if mypkgs:
                              pkgs.extend(mypkgs)
                          
              else:
@@@ -2816,13 -2840,17 +2840,17 @@@
              #        it to of what is installed. in the meantime name.arch is
              #        most likely correct
              pot_updated = self.rpmdb.searchNevra(name=available_pkg.name, arch=available_pkg.arch)
+             if pot_updated and self.allowedMultipleInstalls(available_pkg):
+                 # only compare against the newest of what's installed for kernel
+                 pot_updated = sorted(pot_updated)[-1:]
+ 
              for ipkg in pot_updated:
                  if self.tsInfo.isObsoleted(ipkg.pkgtup):
 -                    self.verbose_logger.log(logginglevels.DEBUG_2, _('Not Updating Package that is already obsoleted: %s.%s %s:%s-%s'), 
 -                                            ipkg.pkgtup)
 +                    vdebug2(_('Not Updating Package that is already obsoleted: %s.%s %s:%s-%s'), 
 +                            ipkg.pkgtup)
                  elif self._newer_update_in_trans(ipkg.pkgtup, available_pkg):
 -                    self.verbose_logger.log(logginglevels.DEBUG_2, _('Not Updating Package that is already updated: %s.%s %s:%s-%s'), 
 -                                            ipkg.pkgtup)
 +                    vdebug2(_('Not Updating Package that is already updated: %s.%s %s:%s-%s'), 
 +                            ipkg.pkgtup)
                  elif ipkg.verLT(available_pkg):
                      txmbr = self.tsInfo.addUpdate(available_pkg, ipkg)
                      if requiringPo:
@@@ -3009,8 -3043,9 +3037,9 @@@
              # for now, banned and dropped.
              if self.allowedMultipleInstalls(item.po):
                  self.tsInfo.remove(item.pkgtup)
 +                vinfo2(_("Package %s is allowed multiple installs, skipping"),
 +                       item.po)
+                 tx_mbrs.remove(item)
 -                msg = _("Package %s is allowed multiple installs, skipping") % item.po
 -                self.verbose_logger.log(logginglevels.INFO_2, msg)
                  continue
              
              members = self.install(name=item.name, arch=item.arch,
diff --cc yum/logginglevels.py
index d87ee48,6c23f88..8846d6c
--- a/yum/logginglevels.py
+++ b/yum/logginglevels.py
@@@ -182,10 -155,10 +183,10 @@@ def doLoggingSetup(debuglevel, errorlev
      logger.addHandler(console_stderr)
     
      filelogger = logging.getLogger("yum.filelogging")
 -    filelogger.setLevel(logging.INFO)
 +    filelogger.setLevel(INFO)
      filelogger.propagate = False
  
-     log_dev = '/dev/log'
+     log_dev = syslog_device
      global syslog
      if os.path.exists(log_dev):
          try:
commit 9b5b7a1ce03f297fdd63847b34383811f3eb6b4f
Author: Tim Lauridsen <tim at naboo.local>
Date:   Thu Mar 5 12:46:57 2009 +0100

    Setup the repos in doUtilYumSetup

diff --git a/utils.py b/utils.py
index cea9110..6cbcefb 100644
--- a/utils.py
+++ b/utils.py
@@ -98,7 +98,7 @@ class YumUtilBase(YumBaseCli):
         try:
             self._getTs()
             self._getRpmDB()
-            self._getRepos()
+            self._getRepos(doSetup = True)
             self._getSacks()
         except yum.Errors.YumBaseError, msg:
             self.logger.critical(str(msg))
commit c247ff3192384fcd81367da1659a207604ec71c7
Merge: adaad31 f5f6c3f
Author: James Antill <james at and.org>
Date:   Sun Jan 4 19:09:01 2009 -0500

    Fix minor conflict, due to logging

diff --cc yum/__init__.py
index bacd9ca,e4ec245..94c8588
--- a/yum/__init__.py
+++ b/yum/__init__.py
@@@ -715,10 -701,10 +715,10 @@@ class YumBase(depsolve.Depsolve)
          skipped_po = set()
          removed_from_sack = set()
          orig_restring = restring    # Keep the old error messages 
-         hard_restart = False
+         looping = 0 
          while (len(self.po_with_problems) > 0 and rescode == 1):
              count += 1
 -            self.verbose_logger.debug(_("Skip-broken round %i"), count)
 +            vdebug(_("Skip-broken round %i"), count)
              self._printTransaction()        
              depTree = self._buildDepTree()
              startTs = set(self.tsInfo)
@@@ -2541,10 -2539,20 +2543,20 @@@
              
              # make sure this shouldn't be passed to update:
              if self.up.updating_dict.has_key(po.pkgtup):
 -                txmbrs = self.update(po=po)
 -                tx_return.extend(txmbrs)
 +                res = self.update(po=po)
 +                result.add(res)
                  continue
              
+             #  Make sure we're not installing a package which is obsoleted by
+             # something else in the repo. Unless there is a obsoletion loop,
+             # at which point ignore everything.
+             obsoleting_pkg = self._test_loop(po, self._pkg2obspkg)
+             if obsoleting_pkg is not None:
+                 self.verbose_logger.warning(_('Package %s is obsoleted by %s, trying to install %s instead'),
+                     po.name, obsoleting_pkg.name, obsoleting_pkg)               
+                 self.install(po=obsoleting_pkg)
+                 continue
+             
              # make sure it's not already installed
              if self.rpmdb.contains(po=po):
                  if not self.tsInfo.getMembersWithState(po.pkgtup, TS_REMOVE_STATES):
@@@ -2555,24 -2563,23 +2567,22 @@@
              # if so pass it to update b/c it should be able to figure it out
              if self.rpmdb.contains(name=po.name, arch=po.arch) and not self.allowedMultipleInstalls(po):
                  if not self.tsInfo.getMembersWithState(po.pkgtup, TS_REMOVE_STATES):
 -                    self.verbose_logger.warning(_('Package matching %s already installed. Checking for update.'), po)            
 -                    txmbrs = self.update(po=po)
 -                    tx_return.extend(txmbrs)
 +                    vwarning(_('Package matching %s already installed. Checking for update.'), po)            
 +                    res = self.update(po=po)
 +                    result.add(res)
                      continue
  
-             #  Make sure we're not installing a package which is obsoleted by
-             # something else in the repo. Unless there is a obsoletion loop,
-             # at which point ignore everything.
-             obsoleting_pkg = self._test_loop(po, self._pkg2obspkg)
-             if obsoleting_pkg is not None:
-                 vwarning(_('Package %s is obsoleted by %s, trying to install %s instead'),
-                     po.name, obsoleting_pkg.name, obsoleting_pkg)               
-                 self.install(po=obsoleting_pkg) # XXX result???
-                 continue
--                
              # at this point we are going to mark the pkg to be installed, make sure
+             # it's not an older package that is allowed in due to multiple installs
+             # or some other oddity. If it is - then modify the problem filter to cope
+             
+             for ipkg in self.rpmdb.searchNevra(name=po.name, arch=po.arch):
+                 if ipkg.EVR > po.EVR:
+                     self.tsInfo.probFilterFlags.append(rpm.RPMPROB_FILTER_OLDPACKAGE)
+                     break
+             
              # it doesn't obsolete anything. If it does, mark that in the tsInfo, too
-             if po.pkgtup in self.up.getObsoletesList(name=po.name, arch=po.arch):
+             if po.pkgtup in self.up.getObsoletesList(name=po.name):
                  for obsoletee in self._find_obsoletees(po):
                      txmbr = self.tsInfo.addObsoleting(po, obsoletee)
                      self.tsInfo.addObsoleted(obsoletee, po)
@@@ -2635,15 -2642,15 +2645,15 @@@
          # if no po do kwargs
          # uninstalled pkgs called for update get returned with errors in a list, maybe?
  
-         updates = self.up.getUpdatesTuples()
-         if self.conf.obsoletes:
-             obsoletes = self.up.getObsoletesTuples(newest=1)
-         else:
-             obsoletes = []
- 
-         result = transactioninfo.AdditionResult()
+         tx_return = []
          if not po and not kwargs: # update everything (the easy case)
 -            self.verbose_logger.log(logginglevels.DEBUG_2, _('Updating Everything'))
 +            vdebug2(_('Updating Everything'))
+             updates = self.up.getUpdatesTuples()
+             if self.conf.obsoletes:
+                 obsoletes = self.up.getObsoletesTuples(newest=1)
+             else:
+                 obsoletes = []
+ 
              for (obsoleting, installed) in obsoletes:
                  obsoleting_pkg = self.getPackageObject(obsoleting)
                  installed_pkg =  self.rpmdb.searchPkgTuple(installed)[0]
@@@ -2655,17 -2662,12 +2665,12 @@@
                  
              for (new, old) in updates:
                  if self.tsInfo.isObsoleted(pkgtup=old):
 -                    self.verbose_logger.log(logginglevels.DEBUG_2, _('Not Updating Package that is already obsoleted: %s.%s %s:%s-%s'), 
 +                    vdebug2(_('Not Updating Package that is already obsoleted: %s.%s %s:%s-%s'), 
                          old)
                  else:
-                     updating_pkg = self.getPackageObject(new)
-                     updated_pkg = self.rpmdb.searchPkgTuple(old)[0]
-                     res = self.tsInfo.addUpdate(updating_pkg, updated_pkg)
-                     if requiringPo:
-                         res.primary.setAsDep(requiringPo)
-                     result.add(res)
+                     tx_return.extend(self.update(po=self.getPackageObject(new)))
              
 -            return tx_return
 +            return result
  
          # complications
          # the user has given us something - either a package object to be
@@@ -2755,12 -2772,11 +2775,11 @@@
              for updating in self.up.updatesdict.get(installed_pkg.pkgtup, []):
                  po = self.getPackageObject(updating)
                  if self.tsInfo.isObsoleted(installed_pkg.pkgtup):
 -                    self.verbose_logger.log(logginglevels.DEBUG_2, _('Not Updating Package that is already obsoleted: %s.%s %s:%s-%s'), 
 -                                            installed_pkg.pkgtup)                                               
 +                    vdebug2(_('Not Updating Package that is already obsoleted: %s.%s %s:%s-%s'), 
 +                            installed_pkg.pkgtup)
                  # at this point we are going to mark the pkg to be installed, make sure
                  # it doesn't obsolete anything. If it does, mark that in the tsInfo, too
-                 elif po.pkgtup in self.up.getObsoletesList(name=po.name,
-                                                            arch=po.arch):
+                 elif po.pkgtup in self.up.getObsoletesList(name=po.name):
                      for obsoletee in self._find_obsoletees(po):
                          txmbr = self.tsInfo.addUpdate(po, installed_pkg)
                          if requiringPo:
diff --cc yum/comps.py
index 1aec15a,ac20652..4f30120
--- a/yum/comps.py
+++ b/yum/comps.py
@@@ -495,14 -496,9 +496,14 @@@ class Comps(object)
          if not srcfile:
              raise CompsException
              
-         if type(srcfile) == type('str'):
+         if type(srcfile) in types.StringTypes:
              # srcfile is a filename string
 -            infile = open(srcfile, 'rt')
 +            if srcfile.endswith('.gz'):
 +                infile = gzip.open(srcfile, 'r')
 +            elif srcfile.endswith('.bz2'):
 +                infile = bz2.BZ2File(srcfile, 'r')
 +            else:
 +                infile = open(srcfile, 'rt')
          else:
              # srcfile is a file object
              infile = srcfile
commit adaad312bbd3adb3fc46763a2a9f397311f3363b
Merge: 0ea797b ad14103
Author: James Antill <james at and.org>
Date:   Wed Dec 3 11:37:32 2008 -0500

    Merge branch 'yum-3_2_X'
    
    * yum-3_2_X:
      Work around for the crazy rpm package summaries bug, BZ 473239
      Make lastmsg a unicode string so we can do == tests, fixes Fedora BZ 473328
      Use "hashlib" directly in pgpmsg, so we don't have cross deps.

commit 0ea797b98915a81b125afecb78b7c009ed349ed0
Merge: e85c2da ea70f48
Author: James Antill <james at and.org>
Date:   Mon Dec 1 09:43:15 2008 -0500

    Merge branch 'yum-3_2_X'
    
    * yum-3_2_X:
      Simple fix for python-2.6, remove sha/md5 imports from pgpmsg
      Fix the protocol attribute to use the "std" attribute name
      When showing dups, also show "reinstall dups"
      updated German translation by Fabian Affolter
      updated Polish translation by Piotr DrÄ…g

commit e85c2da243298e0ba392cf7c2bdc47e24dc50a85
Author: James Antill <james at and.org>
Date:   Tue Nov 25 17:47:36 2008 -0500

    When showing dups, also show "reinstall dups"

diff --git a/cli.py b/cli.py
index 5398dfc..3728716 100644
--- a/cli.py
+++ b/cli.py
@@ -695,6 +695,8 @@ class YumBaseCli(yum.YumBase, output.YumOutput):
             
         ypl = self.doPackageLists(pkgnarrow=pkgnarrow, patterns=extcmds,
                                   ignore_case=True)
+        if self.conf.showdupesfromrepos:
+            ypl.available += ypl.reinstall_available
 
         # This is mostly leftover from when patterns didn't exist
         # FIXME: However when returnPackages() has already been run, we
commit 6f1abad1d82b600d58ea9421e4078a127a5c73d8
Author: Tim Lauridsen <timlau at fedoraproject.org>
Date:   Sat Nov 22 08:07:18 2008 +0100

    updated German translation by Fabian Affolter

diff --git a/po/de.po b/po/de.po
index 2e31f46..f4e419d 100644
--- a/po/de.po
+++ b/po/de.po
@@ -9,8 +9,8 @@ msgid ""
 msgstr ""
 "Project-Id-Version: yum\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-17 02:09+0000\n"
-"PO-Revision-Date: 2008-10-23 09:23+0100\n"
+"POT-Creation-Date: 2008-11-13 05:44+0000\n"
+"PO-Revision-Date: 2008-11-15 21:05+0100\n"
 "Last-Translator: Fabian Affolter <fab at fedoraproject.org>\n"
 "Language-Team: German <fedora-trans-de at redhat.com>\n"
 "MIME-Version: 1.0\n"
@@ -20,7 +20,7 @@ msgstr ""
 "X-Poedit-Language: German\n"
 
 #: ../callback.py:48
-#: ../output.py:777
+#: ../output.py:808
 #: ../yum/rpmtrans.py:71
 msgid "Updating"
 msgstr "Aktualisieren"
@@ -30,11 +30,10 @@ msgstr "Aktualisieren"
 msgid "Erasing"
 msgstr "Löschen"
 
-#. Arch can't get "that big" ... so always use the max.
 #: ../callback.py:50
 #: ../callback.py:51
 #: ../callback.py:53
-#: ../output.py:776
+#: ../output.py:807
 #: ../yum/rpmtrans.py:73
 #: ../yum/rpmtrans.py:74
 #: ../yum/rpmtrans.py:76
@@ -48,7 +47,7 @@ msgid "Obsoleted"
 msgstr "Veraltet"
 
 #: ../callback.py:54
-#: ../output.py:890
+#: ../output.py:913
 msgid "Updated"
 msgstr "Aktualisiert"
 
@@ -59,7 +58,7 @@ msgstr "Gelöscht"
 #: ../callback.py:56
 #: ../callback.py:57
 #: ../callback.py:59
-#: ../output.py:888
+#: ../output.py:911
 msgid "Installed"
 msgstr "Installiert"
 
@@ -83,7 +82,7 @@ msgid "Erased: %s"
 msgstr "Gelöscht: %s"
 
 #: ../callback.py:217
-#: ../output.py:778
+#: ../output.py:809
 msgid "Removing"
 msgstr "Entfernen"
 
@@ -106,14 +105,14 @@ msgid "Reading repository metadata in from local files"
 msgstr "Lese Repository-Metadaten aus lokalen Dateien ein"
 
 #: ../cli.py:187
-#: ../utils.py:71
+#: ../utils.py:79
 #, python-format
 msgid "Config Error: %s"
 msgstr "Konfigurationsfehler: %s"
 
 #: ../cli.py:190
-#: ../cli.py:1125
-#: ../utils.py:74
+#: ../cli.py:1132
+#: ../utils.py:82
 #, python-format
 msgid "Options Error: %s"
 msgstr "Optionenfehler: %s"
@@ -173,17 +172,17 @@ msgid "Error Downloading Packages:\n"
 msgstr "Fehler beim Herunterladen der Pakete:\n"
 
 #: ../cli.py:404
-#: ../yum/__init__.py:3133
+#: ../yum/__init__.py:3287
 msgid "Running rpm_check_debug"
 msgstr "Führe rpm_check_debug durch"
 
 #: ../cli.py:407
-#: ../yum/__init__.py:3136
+#: ../yum/__init__.py:3290
 msgid "ERROR with rpm_check_debug vs depsolve:"
 msgstr "FEHLER mit rpm_check_debug gegen depsolve:"
 
 #: ../cli.py:411
-#: ../yum/__init__.py:3138
+#: ../yum/__init__.py:3292
 msgid "Please report this error in bugzilla"
 msgstr "Bitte melden Sie diesen Fehler in Bugzilla"
 
@@ -238,14 +237,14 @@ msgstr "Analysiere Installationsargumente des Pakets"
 
 #: ../cli.py:582
 #: ../cli.py:657
-#: ../yumcommands.py:889
+#: ../yumcommands.py:933
 msgid "Package(s) to install"
 msgstr "Paket(e) zum Installieren"
 
 #: ../cli.py:583
 #: ../cli.py:658
-#: ../yumcommands.py:150
-#: ../yumcommands.py:890
+#: ../yumcommands.py:151
+#: ../yumcommands.py:934
 msgid "Nothing to do"
 msgstr "Nichts zu tun"
 
@@ -328,72 +327,72 @@ msgstr "Räume Metadaten für abgelaufene Caches auf"
 msgid "Cleaning up plugins"
 msgstr "Räume Plugins auf"
 
-#: ../cli.py:851
+#: ../cli.py:855
 msgid "Installed Groups:"
 msgstr "Installierte Gruppen:"
 
-#: ../cli.py:858
+#: ../cli.py:862
 msgid "Available Groups:"
 msgstr "Verfügbare Gruppen:"
 
-#: ../cli.py:864
+#: ../cli.py:868
 msgid "Done"
 msgstr "Fertig"
 
-#: ../cli.py:875
-#: ../cli.py:893
-#: ../cli.py:899
-#: ../yum/__init__.py:2245
+#: ../cli.py:879
+#: ../cli.py:897
+#: ../cli.py:903
+#: ../yum/__init__.py:2368
 #, python-format
 msgid "Warning: Group %s does not exist."
 msgstr "Warnung: Gruppe %s existiert nicht."
 
-#: ../cli.py:903
+#: ../cli.py:907
 msgid "No packages in any requested group available to install or update"
 msgstr "Keine Pakete in irgendeiner Gruppe verfügbar zum Installieren oder Aktualisieren"
 
-#: ../cli.py:905
+#: ../cli.py:909
 #, python-format
 msgid "%d Package(s) to Install"
 msgstr "%d Paket(e) zum Installieren"
 
-#: ../cli.py:915
-#: ../yum/__init__.py:2257
+#: ../cli.py:919
+#: ../yum/__init__.py:2380
 #, python-format
 msgid "No group named %s exists"
 msgstr "Es existiert keine Gruppe mit dem Namen %s"
 
-#: ../cli.py:921
+#: ../cli.py:925
 msgid "No packages to remove from groups"
 msgstr "Keine Pakete zum Entfernen aus dem Gruppen gefunden"
 
-#: ../cli.py:923
+#: ../cli.py:927
 #, python-format
 msgid "%d Package(s) to remove"
 msgstr "%d Paket(e) zum Entfernen"
 
-#: ../cli.py:965
+#: ../cli.py:969
 #, python-format
 msgid "Package %s is already installed, skipping"
 msgstr "Paket %s ist bereits installiert, überspringe"
 
-#: ../cli.py:976
+#: ../cli.py:980
 #, python-format
 msgid "Discarding non-comparable pkg %s.%s"
 msgstr "Verwerfe nicht vergleichbare Pakete %s.%s"
 
 #. we've not got any installed that match n or n+a
-#: ../cli.py:1002
+#: ../cli.py:1006
 #, python-format
 msgid "No other %s installed, adding to list for potential install"
 msgstr "Kein anderes %s installiert, füge es zur Liste für eine potentielle Installation hinzu"
 
-#: ../cli.py:1021
+#: ../cli.py:1025
 #, python-format
 msgid "Command line error: %s"
 msgstr "Kommandozeilen-Fehler: %s"
 
-#: ../cli.py:1034
+#: ../cli.py:1038
 #, python-format
 msgid ""
 "\n"
@@ -404,244 +403,244 @@ msgstr ""
 "\n"
 "%s: %s Option benötigt ein Argument"
 
-#: ../cli.py:1167
+#: ../cli.py:1174
 msgid "show this help message and exit"
 msgstr "Hilfeinformation anzeigen und beenden"
 
-#: ../cli.py:1171
+#: ../cli.py:1178
 msgid "be tolerant of errors"
 msgstr "fehlertolerant sein"
 
-#: ../cli.py:1173
+#: ../cli.py:1180
 msgid "run entirely from cache, don't update cache"
 msgstr "laufe komplett aus dem Zwischenspeicher, aktualisiere Zwischenspeicher nicht"
 
-#: ../cli.py:1175
+#: ../cli.py:1182
 msgid "config file location"
 msgstr "Ort der Konfigurationsdatei"
 
-#: ../cli.py:1177
+#: ../cli.py:1184
 msgid "maximum command wait time"
 msgstr "maximale Befehlswartezeit"
 
-#: ../cli.py:1179
+#: ../cli.py:1186
 msgid "debugging output level"
 msgstr "Debugging-Ausgabe-Stufe"
 
-#: ../cli.py:1183
+#: ../cli.py:1190
 msgid "show duplicates, in repos, in list/search commands"
 msgstr "Zeige Duplikate, in Repos, in Listen/Suchen-Befehlen"
 
-#: ../cli.py:1185
+#: ../cli.py:1192
 msgid "error output level"
 msgstr "Fehler-Ausgabe-Stufe"
 
-#: ../cli.py:1188
+#: ../cli.py:1195
 msgid "quiet operation"
 msgstr "Stiller Betrieb"
 
-#: ../cli.py:1190
+#: ../cli.py:1197
 msgid "verbose operation"
 msgstr "Wortreicher Betrieb"
 
-#: ../cli.py:1192
+#: ../cli.py:1199
 msgid "answer yes for all questions"
 msgstr "Beantworte alle Fragen mit 'ja'"
 
-#: ../cli.py:1194
+#: ../cli.py:1201
 msgid "show Yum version and exit"
 msgstr "Yum-Version anzeigen und Programm beenden"
 
-#: ../cli.py:1195
+#: ../cli.py:1202
 msgid "set install root"
 msgstr "Wurzel-Installationsverzeichnis setzen"
 
-#: ../cli.py:1199
+#: ../cli.py:1206
 msgid "enable one or more repositories (wildcards allowed)"
 msgstr "aktiviere eines oder mehrere Repositories (Wildcards erlaubt)"
 
-#: ../cli.py:1203
+#: ../cli.py:1210
 msgid "disable one or more repositories (wildcards allowed)"
 msgstr "deaktiviere eines oder mehrere Repositories (Wildcards erlaubt)"
 
-#: ../cli.py:1206
+#: ../cli.py:1213
 msgid "exclude package(s) by name or glob"
 msgstr "schliesse Paket(e) nach Namen oder global aus"
 
-#: ../cli.py:1208
+#: ../cli.py:1215
 msgid "disable exclude from main, for a repo or for everything"
 msgstr "deaktiviere Ausschluss von 'main', einem Repository oder allem"
 
-#: ../cli.py:1211
+#: ../cli.py:1218
 msgid "enable obsoletes processing during updates"
 msgstr "aktiviere veraltetes Verarbeiten während Aktualisierung"
 
-#: ../cli.py:1213
+#: ../cli.py:1220
 msgid "disable Yum plugins"
 msgstr "deaktiviere Yum-Plugins"
 
-#: ../cli.py:1215
+#: ../cli.py:1222
 msgid "disable gpg signature checking"
 msgstr "deaktiviere GPG-Signatur-Prüfung"
 
-#: ../cli.py:1217
+#: ../cli.py:1224
 msgid "disable plugins by name"
 msgstr "deaktiviere Plugins nach Namen"
 
-#: ../cli.py:1220
+#: ../cli.py:1227
 msgid "enable plugins by name"
 msgstr "aktiviere Plugins nach Namen"
 
-#: ../cli.py:1223
+#: ../cli.py:1230
 msgid "skip packages with depsolving problems"
 msgstr "überspringe Pakete mit Abhängigkeitsauflösungsproblemen"
 
-#: ../output.py:236
+#: ../output.py:248
 msgid "Jan"
 msgstr "Jan"
 
-#: ../output.py:236
+#: ../output.py:248
 msgid "Feb"
 msgstr "Feb"
 
-#: ../output.py:236
+#: ../output.py:248
 msgid "Mar"
 msgstr "Mär"
 
-#: ../output.py:236
+#: ../output.py:248
 msgid "Apr"
 msgstr "Apr"
 
-#: ../output.py:236
+#: ../output.py:248
 msgid "May"
 msgstr "Mai"
 
-#: ../output.py:236
+#: ../output.py:248
 msgid "Jun"
 msgstr "Jun"
 
-#: ../output.py:237
+#: ../output.py:249
 msgid "Jul"
 msgstr "Jul"
 
-#: ../output.py:237
+#: ../output.py:249
 msgid "Aug"
 msgstr "Aug"
 
-#: ../output.py:237
+#: ../output.py:249
 msgid "Sep"
 msgstr "Sep"
 
-#: ../output.py:237
+#: ../output.py:249
 msgid "Oct"
 msgstr "Okt"
 
-#: ../output.py:237
+#: ../output.py:249
 msgid "Nov"
 msgstr "Nov"
 
-#: ../output.py:237
+#: ../output.py:249
 msgid "Dec"
 msgstr "Dez"
 
-#: ../output.py:247
+#: ../output.py:259
 msgid "Trying other mirror."
 msgstr "Versuche anderen Spiegel-Server."
 
-#: ../output.py:425
+#: ../output.py:439
 #, python-format
 msgid "Name       : %s%s%s"
 msgstr "Name       : %s%s%s"
 
-#: ../output.py:426
+#: ../output.py:440
 #, python-format
 msgid "Arch       : %s"
 msgstr "Architektur : %s"
 
-#: ../output.py:428
+#: ../output.py:442
 #, python-format
 msgid "Epoch      : %s"
 msgstr "Epoch      : %s"
 
-#: ../output.py:429
+#: ../output.py:443
 #, python-format
 msgid "Version    : %s"
 msgstr "Version    : %s"
 
-#: ../output.py:430
+#: ../output.py:444
 #, python-format
 msgid "Release    : %s"
 msgstr "Ausgabe    : %s"
 
-#: ../output.py:431
+#: ../output.py:445
 #, python-format
 msgid "Size       : %s"
 msgstr "Grösse     : %s"
 
-#: ../output.py:432
+#: ../output.py:446
 #, python-format
 msgid "Repo       : %s"
 msgstr "Repo       : %s"
 
-#: ../output.py:434
+#: ../output.py:448
 #, python-format
 msgid "Committer  : %s"
 msgstr "Ãœbermittler  : %s"
 
-#: ../output.py:435
+#: ../output.py:449
 #, python-format
 msgid "Committime : %s"
-msgstr "Ãœbermittllungszeit  : %s"
+msgstr "Ãœbermittlungszeit  : %s"
 
-#: ../output.py:436
+#: ../output.py:450
 #, python-format
 msgid "Buildtime  : %s"
 msgstr "Build-Zeit  : %s"
 
-#: ../output.py:438
+#: ../output.py:452
 #, python-format
 msgid "Installtime: %s"
 msgstr "Installationszeit: %s"
 
-#: ../output.py:439
+#: ../output.py:453
 msgid "Summary    : "
 msgstr "Zusammenfassung    : "
 
-#: ../output.py:441
+#: ../output.py:455
 #, python-format
 msgid "URL        : %s"
 msgstr "URL        : %s"
 
-#: ../output.py:442
+#: ../output.py:456
 #, python-format
 msgid "License    : %s"
 msgstr "Lizenz     : %s"
 
-#: ../output.py:443
+#: ../output.py:457
 msgid "Description: "
 msgstr "Beschreibung:"
 
-#: ../output.py:500
+#: ../output.py:514
 msgid "y"
 msgstr "j"
 
-#: ../output.py:500
+#: ../output.py:514
 msgid "yes"
 msgstr "ja"
 
-#: ../output.py:501
+#: ../output.py:515
 msgid "n"
 msgstr "n"
 
-#: ../output.py:501
+#: ../output.py:515
 msgid "no"
 msgstr "nein"
 
-#: ../output.py:505
+#: ../output.py:519
 msgid "Is this ok [y/N]: "
 msgstr "Ist dies in Ordnung? [j/N] :"
 
-#: ../output.py:587
+#: ../output.py:601
 #, python-format
 msgid ""
 "\n"
@@ -650,119 +649,124 @@ msgstr ""
 "\n"
 "Gruppe: %s"
 
-#: ../output.py:594
+#: ../output.py:608
 #, python-format
 msgid " Description: %s"
 msgstr " Beschreibung: %s"
 
-#: ../output.py:596
+#: ../output.py:610
 msgid " Mandatory Packages:"
 msgstr " Obligatorische Pakete:"
 
-#: ../output.py:597
+#: ../output.py:611
 msgid " Default Packages:"
 msgstr " Standard-Pakete:"
 
-#: ../output.py:598
+#: ../output.py:612
 msgid " Optional Packages:"
 msgstr " Optionale Pakete:"
 
-#: ../output.py:599
+#: ../output.py:613
 msgid " Conditional Packages:"
 msgstr " Zwangsbedingte Pakete:"
 
-#: ../output.py:619
+#: ../output.py:633
 #, python-format
 msgid "package: %s"
 msgstr "Paket: %s"
 
-#: ../output.py:621
+#: ../output.py:635
 msgid "  No dependencies for this package"
 msgstr "  Keine Abhängigkeiten für dieses Paket"
 
-#: ../output.py:626
+#: ../output.py:640
 #, python-format
 msgid "  dependency: %s"
 msgstr "  Abhängigkeit: %s"
 
-#: ../output.py:628
+#: ../output.py:642
 msgid "   Unsatisfied dependency"
 msgstr "   Nicht erfüllte Abhängigkeit"
 
-#: ../output.py:700
+#: ../output.py:714
 msgid "Matched from:"
 msgstr "Ãœbereinstimmung von:"
 
-#: ../output.py:708
+#: ../output.py:722
 msgid "Description : "
 msgstr "Beschreibung : "
 
-#: ../output.py:711
+#: ../output.py:725
 #, python-format
 msgid "URL         : %s"
 msgstr "URL        : %s"
 
-#: ../output.py:714
+#: ../output.py:728
 #, python-format
 msgid "License     : %s"
 msgstr "Lizenz     : %s"
 
-#: ../output.py:717
+#: ../output.py:731
 #, python-format
 msgid "Filename    : %s"
 msgstr "Dateiname     : %s"
 
-#: ../output.py:721
+#: ../output.py:735
 msgid "Other       : "
 msgstr "Andere     : "
 
-#: ../output.py:753
+#: ../output.py:767
 msgid "There was an error calculating total download size"
 msgstr "Fehler beim Berechnen der Gesamtgrösse der Downloads"
 
-#: ../output.py:758
+#: ../output.py:772
 #, python-format
 msgid "Total size: %s"
 msgstr "Gesamtgrösse: %s"
 
-#: ../output.py:761
+#: ../output.py:775
 #, python-format
 msgid "Total download size: %s"
 msgstr "Gesamte Downloadgrösse: %s"
 
-#: ../output.py:779
+#: ../output.py:810
 msgid "Installing for dependencies"
 msgstr "Installiert für Abhängigkeiten"
 
-#: ../output.py:780
+#: ../output.py:811
 msgid "Updating for dependencies"
 msgstr "Aktualisiert für Abhängigkeiten"
 
-#: ../output.py:781
+#: ../output.py:812
 msgid "Removing for dependencies"
 msgstr "Entfernt für Abhängigkeiten"
 
-#: ../output.py:817
+#: ../output.py:819
+#: ../output.py:915
+msgid "Skipped (dependency problems)"
+msgstr "Übersprungen (Abhängigkeitsprobleme)"
+
+#: ../output.py:840
 msgid "Package"
 msgstr "Paket"
 
-#: ../output.py:817
+#: ../output.py:840
 msgid "Arch"
 msgstr "Arch"
 
-#: ../output.py:818
+#: ../output.py:841
 msgid "Version"
 msgstr "Version"
 
-#: ../output.py:818
+#: ../output.py:841
 msgid "Repository"
 msgstr "Repository"
 
-#: ../output.py:819
+#: ../output.py:842
 msgid "Size"
 msgstr "Grösse"
 
-#: ../output.py:830
+#: ../output.py:853
 #, python-format
 msgid ""
 "     replacing  %s.%s %s\n"
@@ -771,7 +775,7 @@ msgstr ""
 "     ersetze  %s.%s %s\n"
 "\n"
 
-#: ../output.py:838
+#: ../output.py:861
 #, python-format
 msgid ""
 "\n"
@@ -788,27 +792,27 @@ msgstr ""
 "Aktualisieren     %5.5s Paket(e)         \n"
 "Enfernen          %5.5s Paket(e)         \n"
 
-#: ../output.py:886
+#: ../output.py:909
 msgid "Removed"
 msgstr "Entfernt"
 
-#: ../output.py:887
+#: ../output.py:910
 msgid "Dependency Removed"
 msgstr "Abhängigkeiten entfernt"
 
-#: ../output.py:889
+#: ../output.py:912
 msgid "Dependency Installed"
 msgstr "Abhängigkeit installiert"
 
-#: ../output.py:891
+#: ../output.py:914
 msgid "Dependency Updated"
 msgstr "Abhängigkeit aktualisiert"
 
-#: ../output.py:892
+#: ../output.py:916
 msgid "Replaced"
 msgstr "Ersetzt       "
 
-#: ../output.py:965
+#: ../output.py:989
 #, python-format
 msgid ""
 "\n"
@@ -817,77 +821,77 @@ msgstr ""
 "\n"
 " Aktueller Download abgebrochen, %s unterbrechen Sie (ctrl-c) erneut %s innerhalb %s%s%s Sekunden zum Beenden.\n"
 
-#: ../output.py:975
+#: ../output.py:999
 msgid "user interrupt"
 msgstr "Benutzer-Unterbrechung"
 
-#: ../output.py:991
+#: ../output.py:1015
 msgid "Total"
 msgstr "Total"
 
-#: ../output.py:1005
+#: ../output.py:1029
 msgid "installed"
 msgstr "installiert"
 
-#: ../output.py:1006
+#: ../output.py:1030
 msgid "updated"
 msgstr "aktualisiert"
 
-#: ../output.py:1007
+#: ../output.py:1031
 msgid "obsoleted"
 msgstr "veraltet"
 
-#: ../output.py:1008
+#: ../output.py:1032
 msgid "erased"
 msgstr "gelöscht"
 
 # Dies ist das Sorgenkind. So weit ich weiss, werden die Verben von oben bezogen. Eventuell könnte auch eine radikale Änderung eine Lösung sein. Fabian
-#: ../output.py:1012
+#: ../output.py:1036
 #, python-format
 msgid "---> Package %s.%s %s:%s-%s set to be %s"
 msgstr "---> Paket %s.%s %s:%s-%s markiert, um %s zu werden"
 
-#: ../output.py:1019
+#: ../output.py:1043
 msgid "--> Running transaction check"
 msgstr "--> Führe Transaktionsprüfung aus"
 
-#: ../output.py:1024
+#: ../output.py:1048
 msgid "--> Restarting Dependency Resolution with new changes."
 msgstr "--> Starte Abhängigkeitsauflösung mit den neuen Änderungen neu."
 
-#: ../output.py:1029
+#: ../output.py:1053
 msgid "--> Finished Dependency Resolution"
 msgstr "--> Abhängigkeitsauflösung beendet"
 
-#: ../output.py:1034
+#: ../output.py:1058
 #, python-format
 msgid "--> Processing Dependency: %s for package: %s"
 msgstr "--> Verarbeite Abhängigkeiten: %s für Paket: %s"
 
-#: ../output.py:1039
+#: ../output.py:1063
 #, python-format
 msgid "--> Unresolved Dependency: %s"
 msgstr "--> Nicht aufgelöste Abhängigkeit: %s"
 
-#: ../output.py:1045
+#: ../output.py:1069
 #, python-format
 msgid "--> Processing Conflict: %s conflicts %s"
 msgstr "--> Verarbeite Konflikt: %s kollidiert mit %s"
 
-#: ../output.py:1048
+#: ../output.py:1072
 msgid "--> Populating transaction set with selected packages. Please wait."
 msgstr "--> Fülle Verarbeitungsset mit ausgewählten Paketen. Bitte warten."
 
-#: ../output.py:1052
+#: ../output.py:1076
 #, python-format
 msgid "---> Downloading header for %s to pack into transaction set."
 msgstr "---> Lade Header für %s herunter, um ins Verarbeitungsset zu packen."
 
-#: ../yumcommands.py:40
+#: ../yumcommands.py:41
 msgid "You need to be root to perform this command."
 msgstr "Sie müssen root sein, um diesen Befehl ausführen zu können."
 
-#: ../yumcommands.py:47
+#: ../yumcommands.py:48
 msgid ""
 "\n"
 "You have enabled checking of packages via GPG keys. This is a good thing. \n"
@@ -917,291 +921,311 @@ msgstr ""
 "\n"
 "Für weitere Informationen kontaktieren Sie Ihre Distribution oder Ihren Paket-Anbieter.\n"
 
-#: ../yumcommands.py:67
+#: ../yumcommands.py:68
 #, python-format
 msgid "Error: Need to pass a list of pkgs to %s"
 msgstr "Fehler: Muss eine Liste von Paketen an %s übergeben"
 
-#: ../yumcommands.py:73
+#: ../yumcommands.py:74
 msgid "Error: Need an item to match"
 msgstr "Fehler: Brauche einen Begriff, der passt"
 
-#: ../yumcommands.py:79
+#: ../yumcommands.py:80
 msgid "Error: Need a group or list of groups"
 msgstr "Fehler: Brauche eine Gruppe oder eine Liste von Gruppen"
 
-#: ../yumcommands.py:88
+#: ../yumcommands.py:89
 #, python-format
 msgid "Error: clean requires an option: %s"
 msgstr "Fehler: Aufräumen benötigt eine Option: %s"
 
-#: ../yumcommands.py:93
+#: ../yumcommands.py:94
 #, python-format
 msgid "Error: invalid clean argument: %r"
 msgstr "Fehler: Ungültiges Argument für Aufräumen: %r"
 
-#: ../yumcommands.py:106
+#: ../yumcommands.py:107
 msgid "No argument to shell"
 msgstr "Kein Argument für Shell"
 
-#: ../yumcommands.py:109
+#: ../yumcommands.py:110
 #, python-format
 msgid "Filename passed to shell: %s"
 msgstr "Dateinamen an Shell übergeben: %s"
 
-#: ../yumcommands.py:113
+#: ../yumcommands.py:114
 #, python-format
 msgid "File %s given as argument to shell does not exist."
 msgstr "Datei %s, angegeben als Argument für Shell, existiert nicht."
 
-#: ../yumcommands.py:119
+#: ../yumcommands.py:120
 msgid "Error: more than one file given as argument to shell."
 msgstr "Fehler: mehr als eine Datei als Argument an die Shell übergeben."
 
-#: ../yumcommands.py:160
+#: ../yumcommands.py:161
 msgid "PACKAGE..."
 msgstr "PAKET..."
 
-#: ../yumcommands.py:163
+#: ../yumcommands.py:164
 msgid "Install a package or packages on your system"
 msgstr "Installiere ein Paket oder Pakete auf Ihrem System"
 
-#: ../yumcommands.py:172
+#: ../yumcommands.py:173
 msgid "Setting up Install Process"
 msgstr "Einrichten des Installationsprozess"
 
-#: ../yumcommands.py:183
+#: ../yumcommands.py:184
 msgid "[PACKAGE...]"
 msgstr "[PAKET...]"
 
-#: ../yumcommands.py:186
+#: ../yumcommands.py:187
 msgid "Update a package or packages on your system"
 msgstr "Aktualisiere ein Paket oder Pakete auf Ihrem System"
 
-#: ../yumcommands.py:194
+#: ../yumcommands.py:195
 msgid "Setting up Update Process"
 msgstr "Einrichten des Aktualisierungsprozess"
 
-#: ../yumcommands.py:236
+#: ../yumcommands.py:237
 msgid "Display details about a package or group of packages"
 msgstr "Zeige Details über ein Paket oder einer Gruppe von Pakete an"
 
 #. Output the packages:
-#: ../yumcommands.py:261
+#: ../yumcommands.py:262
 msgid "Installed Packages"
 msgstr "Installierte Pakete"
 
-#: ../yumcommands.py:263
+#: ../yumcommands.py:264
 msgid "Available Packages"
 msgstr "Verfügbare Pakete"
 
-#: ../yumcommands.py:265
+#: ../yumcommands.py:266
 msgid "Extra Packages"
 msgstr "Extra-Pakete"
 
-#: ../yumcommands.py:267
+#: ../yumcommands.py:268
 msgid "Updated Packages"
 msgstr "Aktualisierte Pakete"
 
-#: ../yumcommands.py:274
-#: ../yumcommands.py:281
+#: ../yumcommands.py:275
+#: ../yumcommands.py:282
+#: ../yumcommands.py:551
 msgid "Obsoleting Packages"
 msgstr "Veraltete Pakete"
 
-#: ../yumcommands.py:283
+#: ../yumcommands.py:284
 msgid "Recently Added Packages"
 msgstr "Kürzlich hinzugefügte Pakete"
 
-#: ../yumcommands.py:290
+#: ../yumcommands.py:291
 msgid "No matching Packages to list"
 msgstr "Keine übereinstimmenden Pakete zum Auflisten"
 
-#: ../yumcommands.py:304
+#: ../yumcommands.py:305
 msgid "List a package or groups of packages"
 msgstr "Liste von Pakete oder Gruppen von Paketen"
 
-#: ../yumcommands.py:316
+#: ../yumcommands.py:317
 msgid "Remove a package or packages from your system"
 msgstr "Entferne ein Paket oder Pakete auf Ihrem System"
 
-#: ../yumcommands.py:324
+#: ../yumcommands.py:325
 msgid "Setting up Remove Process"
 msgstr "Einrichten des Entfernungsprozess"
 
-#: ../yumcommands.py:339
+#: ../yumcommands.py:340
 msgid "Setting up Group Process"
 msgstr "Einrichten des Gruppenprozess"
 
-#: ../yumcommands.py:345
+#: ../yumcommands.py:346
 msgid "No Groups on which to run command"
 msgstr "Keine Gruppe, auf welcher der Befehl ausgeführt werden kann"
 
-#: ../yumcommands.py:358
+#: ../yumcommands.py:359
 msgid "List available package groups"
 msgstr "Verfügbare Gruppen anzeigen"
 
-#: ../yumcommands.py:375
+#: ../yumcommands.py:376
 msgid "Install the packages in a group on your system"
 msgstr "Installiere die Pakete in einer Gruppe auf Ihrem System"
 
-#: ../yumcommands.py:397
+#: ../yumcommands.py:398
 msgid "Remove the packages in a group from your system"
 msgstr "Entferne die Pakete in einer Gruppe von Ihrem System"
 
-#: ../yumcommands.py:424
+#: ../yumcommands.py:425
 msgid "Display details about a package group"
 msgstr "Zeigt Details über eine Paket-Gruppe an"
 
-#: ../yumcommands.py:448
+#: ../yumcommands.py:449
 msgid "Generate the metadata cache"
 msgstr "Generiere den Metadaten-Zwischenspeicher"
 
-#: ../yumcommands.py:454
+#: ../yumcommands.py:455
 msgid "Making cache files for all metadata files."
 msgstr "Erstelle Zwischenspeicherungsdatei für alle Metadaten-Dateien."
 
-#: ../yumcommands.py:455
+#: ../yumcommands.py:456
 msgid "This may take a while depending on the speed of this computer"
 msgstr "Dies kann eine Weile dauert, abhängig von der Geschwindigkeit dieses Computers"
 
-#: ../yumcommands.py:476
+#: ../yumcommands.py:477
 msgid "Metadata Cache Created"
 msgstr "Metadaten-Zwischenspeicher erstellt"
 
-#: ../yumcommands.py:490
+#: ../yumcommands.py:491
 msgid "Remove cached data"
 msgstr "Entferne gespeicherte Daten"
 
-#: ../yumcommands.py:511
+#: ../yumcommands.py:512
 msgid "Find what package provides the given value"
 msgstr "Suche ein Paket, welches den gegebenen Wert bereitstellen"
 
-#: ../yumcommands.py:531
+#: ../yumcommands.py:532
 msgid "Check for available package updates"
 msgstr "Überprüfe auf verfügbare Paket-Aktualisierungen"
 
-#: ../yumcommands.py:556
+#: ../yumcommands.py:571
 msgid "Search package details for the given string"
 msgstr "Suche nach Paket-Details für die gegebene Zeichenkette"
 
-#: ../yumcommands.py:562
+#: ../yumcommands.py:577
 msgid "Searching Packages: "
 msgstr "Suche Pakete:"
 
-#: ../yumcommands.py:579
+#: ../yumcommands.py:594
 msgid "Update packages taking obsoletes into account"
 msgstr "Aktualisiere Pakete, berücksichtige veraltete"
 
-#: ../yumcommands.py:588
+#: ../yumcommands.py:603
 msgid "Setting up Upgrade Process"
 msgstr "Einrichten des Upgradeprozess"
 
-#: ../yumcommands.py:602
+#: ../yumcommands.py:617
 msgid "Install a local RPM"
 msgstr "Installiere ein lokales RPM"
 
-#: ../yumcommands.py:611
+#: ../yumcommands.py:626
 msgid "Setting up Local Package Process"
 msgstr "Einrichten der lokalen Paketverarbeitung"
 
-#: ../yumcommands.py:630
+#: ../yumcommands.py:645
 msgid "Determine which package provides the given dependency"
 msgstr "Bestimme, welche Pakete die gegebenen Abhängigkeiten bereitstellen"
 
-#: ../yumcommands.py:633
+#: ../yumcommands.py:648
 msgid "Searching Packages for Dependency:"
 msgstr "Suche Pakete für Abhängigkeit:"
 
-#: ../yumcommands.py:647
+#: ../yumcommands.py:662
 msgid "Run an interactive yum shell"
 msgstr "Führe eine interaktive Yum-Shell aus"
 
-#: ../yumcommands.py:653
+#: ../yumcommands.py:668
 msgid "Setting up Yum Shell"
 msgstr "Einrichten der Yum-Shell"
 
-#: ../yumcommands.py:671
+#: ../yumcommands.py:686
 msgid "List a package's dependencies"
 msgstr "Liste von Paket-Abhängigkeiten"
 
-#: ../yumcommands.py:677
+#: ../yumcommands.py:692
 msgid "Finding dependencies: "
 msgstr "Suche Abhängigkeiten:"
 
-#: ../yumcommands.py:693
+#: ../yumcommands.py:708
 msgid "Display the configured software repositories"
 msgstr "Zeige die konfigurierten Software-Repositories an"
 
-#: ../yumcommands.py:742
+#: ../yumcommands.py:756
+#: ../yumcommands.py:769
+#: ../yumcommands.py:770
 msgid "enabled"
 msgstr "aktiviert"
 
-#: ../yumcommands.py:751
+#: ../yumcommands.py:765
+#: ../yumcommands.py:768
 msgid "disabled"
 msgstr "deaktiviert"
 
-#: ../yumcommands.py:760
+#: ../yumcommands.py:777
 msgid "repo id"
 msgstr "Repo-ID"
 
-#: ../yumcommands.py:761
+#: ../yumcommands.py:778
 msgid "repo name"
 msgstr "Repo-Name:"
 
-#: ../yumcommands.py:761
+#: ../yumcommands.py:780
 msgid "status"
 msgstr "Status"
 
-#: ../yumcommands.py:764
+#: ../yumcommands.py:790
 msgid "Repo-id     : "
 msgstr "Repo-ID       : "
 
-#: ../yumcommands.py:765
+#: ../yumcommands.py:791
 msgid "Repo-name   : "
 msgstr "Repo-Name   : "
 
-#: ../yumcommands.py:766
+#: ../yumcommands.py:792
 msgid "Repo-status : "
 msgstr "Repo-Status : "
 
-#: ../yumcommands.py:768
+#: ../yumcommands.py:794
+msgid "Repo-revision: "
+msgstr "Repo-Revision: "
+
+#: ../yumcommands.py:798
+msgid "Repo-tags   : "
+msgstr "Repo-Tags   : "
+
+#: ../yumcommands.py:804
+msgid "Repo-distro-tags: "
+msgstr "Repo-Distro-Tags: "
+
+#: ../yumcommands.py:809
 msgid "Repo-updated: "
 msgstr "Repo aktualisiert:"
 
-#: ../yumcommands.py:770
+#: ../yumcommands.py:811
 msgid "Repo-pkgs   : "
 msgstr "Repo-PKGS   : "
 
-#: ../yumcommands.py:771
+#: ../yumcommands.py:812
 msgid "Repo-size   : "
 msgstr "Repo-Grösse   : "
 
-#: ../yumcommands.py:774
+#: ../yumcommands.py:819
 msgid "Repo-baseurl: "
 msgstr "Repo BaseURL:"
 
-#: ../yumcommands.py:778
+#: ../yumcommands.py:823
+msgid "Repo-metalink: "
+msgstr "Repo-Metalink: "
+
+#: ../yumcommands.py:826
 msgid "Repo-mirrors: "
 msgstr "Repo-Spiegel: "
 
-#: ../yumcommands.py:782
+#: ../yumcommands.py:830
 msgid "Repo-exclude: "
 msgstr "Repo ausgeschlossen:"
 
-#: ../yumcommands.py:786
+#: ../yumcommands.py:834
 msgid "Repo-include: "
 msgstr "Repo eingeschlossen:"
 
-#: ../yumcommands.py:812
+#: ../yumcommands.py:856
 msgid "Display a helpful usage message"
 msgstr "Zeigt eine kurze Verwendungsinformation"
 
-#: ../yumcommands.py:846
+#: ../yumcommands.py:890
 #, python-format
 msgid "No help available for %s"
 msgstr "Keine Hilfe für %s vorhanden"
 
-#: ../yumcommands.py:851
+#: ../yumcommands.py:895
 msgid ""
 "\n"
 "\n"
@@ -1211,7 +1235,7 @@ msgstr ""
 "\n"
 "Aliase: "
 
-#: ../yumcommands.py:853
+#: ../yumcommands.py:897
 msgid ""
 "\n"
 "\n"
@@ -1221,11 +1245,11 @@ msgstr ""
 "\n"
 "Alias: "
 
-#: ../yumcommands.py:882
+#: ../yumcommands.py:926
 msgid "Setting up Reinstall Process"
 msgstr "Einrichten des Neuinstallationsprozess"
 
-#: ../yumcommands.py:896
+#: ../yumcommands.py:940
 msgid "reinstall a package"
 msgstr "Installiere Paket neu"
 
@@ -1297,197 +1321,197 @@ msgstr ""
 msgid "doTsSetup() will go away in a future version of Yum.\n"
 msgstr "doTsSetup() wird in zukünftigen Version von Yum verschwinden.\n"
 
-#: ../yum/depsolve.py:97
+#: ../yum/depsolve.py:99
 msgid "Setting up TransactionSets before config class is up"
 msgstr "Konfiguriere TransactionSets bevor die Konfigurationsklasse gestartet ist"
 
-#: ../yum/depsolve.py:148
+#: ../yum/depsolve.py:150
 #, python-format
 msgid "Invalid tsflag in config file: %s"
 msgstr "Ungültiges tsflag in Konfigurationsdatei: %s"
 
-#: ../yum/depsolve.py:159
+#: ../yum/depsolve.py:161
 #, python-format
 msgid "Searching pkgSack for dep: %s"
 msgstr "Suche pkgSack für Abhängigkeiten: %s"
 
-#: ../yum/depsolve.py:182
+#: ../yum/depsolve.py:184
 #, python-format
 msgid "Potential match for %s from %s"
 msgstr "Potentielle Übereinstimmung für %s von %s"
 
-#: ../yum/depsolve.py:190
+#: ../yum/depsolve.py:192
 #, python-format
 msgid "Matched %s to require for %s"
 msgstr "Übereinstimmung von %s, welche gebraucht wird für %s"
 
-#: ../yum/depsolve.py:231
+#: ../yum/depsolve.py:233
 #, python-format
 msgid "Member: %s"
 msgstr "Mitglied: %s"
 
-#: ../yum/depsolve.py:245
-#: ../yum/depsolve.py:732
+#: ../yum/depsolve.py:247
+#: ../yum/depsolve.py:734
 #, python-format
 msgid "%s converted to install"
 msgstr "%s konvertiert zum Installieren"
 
-#: ../yum/depsolve.py:252
+#: ../yum/depsolve.py:254
 #, python-format
 msgid "Adding Package %s in mode %s"
 msgstr "Füge Paket %s hinzu in Modus %s"
 
-#: ../yum/depsolve.py:262
+#: ../yum/depsolve.py:264
 #, python-format
 msgid "Removing Package %s"
 msgstr "Entferne Paket %s"
 
-#: ../yum/depsolve.py:273
+#: ../yum/depsolve.py:275
 #, python-format
 msgid "%s requires: %s"
 msgstr "%s benötigt: %s"
 
-#: ../yum/depsolve.py:331
+#: ../yum/depsolve.py:333
 msgid "Needed Require has already been looked up, cheating"
 msgstr "Benötigte Anforderung wurde bereits nachgeschlagen, betrüge"
 
-#: ../yum/depsolve.py:341
+#: ../yum/depsolve.py:343
 #, python-format
 msgid "Needed Require is not a package name. Looking up: %s"
 msgstr "Benötigte Anforderung ist kein Paket-Name. Schlagen nach: %s"
 
-#: ../yum/depsolve.py:348
+#: ../yum/depsolve.py:350
 #, python-format
 msgid "Potential Provider: %s"
 msgstr "Potentieller Anbieter: %s"
 
-#: ../yum/depsolve.py:371
+#: ../yum/depsolve.py:373
 #, python-format
 msgid "Mode is %s for provider of %s: %s"
 msgstr "Modus ist %s für Anbieter von %s: %s"
 
-#: ../yum/depsolve.py:375
+#: ../yum/depsolve.py:377
 #, python-format
 msgid "Mode for pkg providing %s: %s"
 msgstr "Modus für pkg-Bereitstellung %s: %s"
 
-#: ../yum/depsolve.py:379
+#: ../yum/depsolve.py:381
 #, python-format
 msgid "TSINFO: %s package requiring %s marked as erase"
 msgstr "TSINFO: %s Paket benötigt %s markiert als gelöscht"
 
-#: ../yum/depsolve.py:391
+#: ../yum/depsolve.py:393
 #, python-format
 msgid "TSINFO: Obsoleting %s with %s to resolve dep."
 msgstr "TSINFO: Veraltetes %s mit %s zum Auflösen der Abhängigkeit."
 
-#: ../yum/depsolve.py:394
+#: ../yum/depsolve.py:396
 #, python-format
 msgid "TSINFO: Updating %s to resolve dep."
 msgstr "TSINFO: Aktualisiere %s zum Auflösen der Abhängigkeit."
 
-#: ../yum/depsolve.py:402
+#: ../yum/depsolve.py:404
 #, python-format
 msgid "Cannot find an update path for dep for: %s"
 msgstr "Kann keine Aktualisierungspfad für Abhängigkeit finden für: %s"
 
-#: ../yum/depsolve.py:412
+#: ../yum/depsolve.py:414
 #, python-format
 msgid "Unresolvable requirement %s for %s"
 msgstr "Unlösbare Anforderung %s für %s"
 
-#: ../yum/depsolve.py:435
+#: ../yum/depsolve.py:437
 #, python-format
 msgid "Quick matched %s to require for %s"
 msgstr "Übereinstimmung von %s, welche gebraucht wird für %s"
 
 #. is it already installed?
-#: ../yum/depsolve.py:477
+#: ../yum/depsolve.py:479
 #, python-format
 msgid "%s is in providing packages but it is already installed, removing."
 msgstr "%s ist in einem bereitgestellten Paket, aber bereits installiert, entferne."
 
-#: ../yum/depsolve.py:492
+#: ../yum/depsolve.py:494
 #, python-format
 msgid "Potential resolving package %s has newer instance in ts."
 msgstr "Potentielles aufgelöste Paket %s hat eine neuere Instanz in ts."
 
-#: ../yum/depsolve.py:503
+#: ../yum/depsolve.py:505
 #, python-format
 msgid "Potential resolving package %s has newer instance installed."
 msgstr "Potentielles aufgelöste Paket %s hat eine neuere Instanz installiert."
 
-#: ../yum/depsolve.py:511
-#: ../yum/depsolve.py:560
+#: ../yum/depsolve.py:513
+#: ../yum/depsolve.py:562
 #, python-format
 msgid "Missing Dependency: %s is needed by package %s"
 msgstr "Fehlende Abhängigkeit: %s wird benötigt von Paket %s"
 
-#: ../yum/depsolve.py:524
+#: ../yum/depsolve.py:526
 #, python-format
 msgid "%s already in ts, skipping this one"
 msgstr "%s bereits in ts, überspringe dies"
 
-#: ../yum/depsolve.py:570
+#: ../yum/depsolve.py:572
 #, python-format
 msgid "TSINFO: Marking %s as update for %s"
 msgstr "TSINFO: Markiere %s als Aktualisierung für %s"
 
-#: ../yum/depsolve.py:578
+#: ../yum/depsolve.py:580
 #, python-format
 msgid "TSINFO: Marking %s as install for %s"
 msgstr "TSINFO: Markiert %s als Installation für %s"
 
-#: ../yum/depsolve.py:670
-#: ../yum/depsolve.py:750
+#: ../yum/depsolve.py:672
+#: ../yum/depsolve.py:752
 msgid "Success - empty transaction"
 msgstr "Erfolg - Leere Transaktion"
 
-#: ../yum/depsolve.py:709
-#: ../yum/depsolve.py:722
+#: ../yum/depsolve.py:711
+#: ../yum/depsolve.py:724
 msgid "Restarting Loop"
 msgstr "Starte Schleife neu"
 
-#: ../yum/depsolve.py:738
+#: ../yum/depsolve.py:740
 msgid "Dependency Process ending"
 msgstr "Abhängigkeitsverarbeitung beendet"
 
-#: ../yum/depsolve.py:744
+#: ../yum/depsolve.py:746
 #, python-format
 msgid "%s from %s has depsolving problems"
 msgstr "%s von %s hat Abhängigkeitsauflöse-Probleme"
 
-#: ../yum/depsolve.py:751
+#: ../yum/depsolve.py:753
 msgid "Success - deps resolved"
 msgstr "Erfolg - Abhängigkeiten aufgelöst"
 
-#: ../yum/depsolve.py:765
+#: ../yum/depsolve.py:767
 #, python-format
 msgid "Checking deps for %s"
 msgstr "Prüfe Abhängigkeiten für %s"
 
-#: ../yum/depsolve.py:848
+#: ../yum/depsolve.py:850
 #, python-format
 msgid "looking for %s as a requirement of %s"
 msgstr "schauen nach %s als eine Anforderung von %s"
 
-#: ../yum/depsolve.py:988
+#: ../yum/depsolve.py:990
 #, python-format
 msgid "Running compare_providers() for %s"
 msgstr "Führe compare_providers() aus für %s"
 
-#: ../yum/depsolve.py:1016
-#: ../yum/depsolve.py:1022
+#: ../yum/depsolve.py:1018
+#: ../yum/depsolve.py:1024
 #, python-format
 msgid "better arch in po %s"
 msgstr "bessere Architektur in po %s"
 
-#: ../yum/depsolve.py:1061
+#: ../yum/depsolve.py:1063
 #, python-format
 msgid "%s obsoletes %s"
 msgstr " %s veraltete %s"
 
-#: ../yum/depsolve.py:1077
+#: ../yum/depsolve.py:1079
 #, python-format
 msgid ""
 "archdist compared %s to %s on %s\n"
@@ -1496,115 +1520,115 @@ msgstr ""
 "Archdist verglichen %s zu %s auf %s\n"
 "  Gewinner: %s"
 
-#: ../yum/depsolve.py:1084
+#: ../yum/depsolve.py:1086
 #, python-format
 msgid "common sourcerpm %s and %s"
 msgstr "Gemeinsames Quellen-RPM %s und %s"
 
-#: ../yum/depsolve.py:1090
+#: ../yum/depsolve.py:1092
 #, python-format
 msgid "common prefix of %s between %s and %s"
 msgstr "Gemeinsamer Prefix von %s zwischen %s und %s"
 
 # Hat jemand eine Idee für eine bessere Übersetzung? Fabian
-#: ../yum/depsolve.py:1098
+#: ../yum/depsolve.py:1100
 #, python-format
 msgid "Best Order: %s"
 msgstr "Beste Bestellung: %s"
 
-#: ../yum/__init__.py:134
+#: ../yum/__init__.py:135
 msgid "doConfigSetup() will go away in a future version of Yum.\n"
 msgstr "doConfigSetup() wird in zukünftigen Version von Yum verschwinden.\n"
 
-#: ../yum/__init__.py:314
+#: ../yum/__init__.py:315
 #, python-format
 msgid "Repository %r is missing name in configuration, using id"
 msgstr "Bei Repository %r fehlt der Name in der Konfiguration, benutze id"
 
-#: ../yum/__init__.py:352
+#: ../yum/__init__.py:353
 msgid "plugins already initialised"
 msgstr "Plugins bereits initialisiert"
 
-#: ../yum/__init__.py:359
+#: ../yum/__init__.py:360
 msgid "doRpmDBSetup() will go away in a future version of Yum.\n"
 msgstr "doRpmDBSetup() wird in zukünftigen Version von Yum verschwinden.\n"
 
-#: ../yum/__init__.py:369
+#: ../yum/__init__.py:370
 msgid "Reading Local RPMDB"
 msgstr "Lese lokale RPMDB"
 
-#: ../yum/__init__.py:387
+#: ../yum/__init__.py:388
 msgid "doRepoSetup() will go away in a future version of Yum.\n"
 msgstr "doRepoSetup() wird in zukünftigen Version von Yum verschwinden.\n"
 
-#: ../yum/__init__.py:407
+#: ../yum/__init__.py:408
 msgid "doSackSetup() will go away in a future version of Yum.\n"
 msgstr "doSackSetup() wird in zukünftigen Version von Yum verschwinden \n"
 
-#: ../yum/__init__.py:424
+#: ../yum/__init__.py:425
 msgid "Setting up Package Sacks"
 msgstr "Einrichten des Paket-Behälters"
 
-#: ../yum/__init__.py:467
+#: ../yum/__init__.py:468
 #, python-format
 msgid "repo object for repo %s lacks a _resetSack method\n"
 msgstr "Repository-Objekt für Repository %s fehlt a _resetSack method\n"
 
-#: ../yum/__init__.py:468
+#: ../yum/__init__.py:469
 msgid "therefore this repo cannot be reset.\n"
 msgstr "deshalb dieses Repository kann nicht zurückgesetzt werden.\n"
 
-#: ../yum/__init__.py:473
+#: ../yum/__init__.py:474
 msgid "doUpdateSetup() will go away in a future version of Yum.\n"
 msgstr "doUpdateSetup() wird in zukünftigen Version von Yum verschwinden.\n"
 
-#: ../yum/__init__.py:485
+#: ../yum/__init__.py:486
 msgid "Building updates object"
 msgstr "Baue Aktualisierungsobjekt"
 
-#: ../yum/__init__.py:516
+#: ../yum/__init__.py:517
 msgid "doGroupSetup() will go away in a future version of Yum.\n"
 msgstr "doGroupSetup() wird in zukünftigen Version von Yum verschwinden .\n"
 
-#: ../yum/__init__.py:540
+#: ../yum/__init__.py:541
 msgid "Getting group metadata"
 msgstr "Beziehe Gruppen-Metadaten"
 
-#: ../yum/__init__.py:566
+#: ../yum/__init__.py:567
 #, python-format
 msgid "Adding group file from repository: %s"
 msgstr "Füge Gruppen-Datei von Repository hinzu: %s"
 
-#: ../yum/__init__.py:575
+#: ../yum/__init__.py:576
 #, python-format
 msgid "Failed to add groups file for repository: %s - %s"
 msgstr "Hinzufügen von Gruppen-Datei für Repository fehlgeschlagen: %s - %s"
 
-#: ../yum/__init__.py:581
+#: ../yum/__init__.py:582
 msgid "No Groups Available in any repository"
 msgstr "Keine Gruppen in irgendeinem Repository verfügbar"
 
-#: ../yum/__init__.py:631
+#: ../yum/__init__.py:632
 msgid "Importing additional filelist information"
 msgstr "Importiere zusätzlichen Dateilisten-Informationen"
 
-#: ../yum/__init__.py:639
-msgid "There are unfinished transactions remaining. You mightconsider running yum-complete-transaction first to finish them."
+#: ../yum/__init__.py:641
+msgid "There are unfinished transactions remaining. You might consider running yum-complete-transaction first to finish them."
 msgstr "Es gibt noch nicht abgeschlossene Transaktionen. Sie sollten in Betracht ziehen, zuerst  yum-complete-transaction auszuführen, um sie abzuschliessen."
 
 # Ob da die Ãœbersetzung den Punkt trifft...Fabian
-#: ../yum/__init__.py:689
+#: ../yum/__init__.py:707
 #, python-format
 msgid "Skip-broken round %i"
 msgstr "Ãœberspringe defekte Runde %i"
 
 # Ob da die Ãœbersetzung den Punkt trifft...Fabian
-#: ../yum/__init__.py:712
+#: ../yum/__init__.py:756
 #, python-format
 msgid "Skip-broken took %i rounds "
 msgstr "Ãœberspringen der defekte brachte %i Runden"
 
-#: ../yum/__init__.py:713
+#: ../yum/__init__.py:757
 msgid ""
 "\n"
 "Packages skipped because of dependency problems:"
@@ -1612,90 +1636,91 @@ msgstr ""
 "\n"
 "Pakete übersprungen wegen Abhängigkeitsproblemen:"
 
-#: ../yum/__init__.py:717
+#: ../yum/__init__.py:761
 #, python-format
 msgid "    %s from %s"
 msgstr "    %s von %s"
 
-#: ../yum/__init__.py:802
+#: ../yum/__init__.py:905
 msgid "Warning: scriptlet or other non-fatal errors occurred during transaction."
 msgstr "Warnung: Es sind Scriptlet- oder andere nicht-fatale Fehler bei der Verarbeitung aufgetreten."
 
-#: ../yum/__init__.py:818
+#: ../yum/__init__.py:921
 #, python-format
 msgid "Failed to remove transaction file %s"
 msgstr "Entfernen der Verarbeitungsdatei %s fehlgeschlagen"
 
 # verstehe ich nicht ganz, was gemeint ist. Fabian
-#: ../yum/__init__.py:859
+#: ../yum/__init__.py:962
 #, python-format
 msgid "excluding for cost: %s from %s"
 msgstr "Ausschluss für Aufwand: %s from %s"
 
 # Dies gefällt auch nicht allen. Fabian
-#: ../yum/__init__.py:890
+#: ../yum/__init__.py:993
 msgid "Excluding Packages in global exclude list"
-msgstr "Schliessen Pakete, welche in der globalen Ausschlussliste sind, aus"
+msgstr "Schliesse Pakete, welche in der globalen Ausschlussliste sind, aus"
 
-#: ../yum/__init__.py:892
+#: ../yum/__init__.py:995
 #, python-format
 msgid "Excluding Packages from %s"
 msgstr "Schliesse Pakete aus von %s"
 
-#: ../yum/__init__.py:919
+#: ../yum/__init__.py:1022
 #, python-format
 msgid "Reducing %s to included packages only"
 msgstr "Reduziere %s nur zum Einbeziehen der Pakete"
 
-#: ../yum/__init__.py:925
+#: ../yum/__init__.py:1028
 #, python-format
 msgid "Keeping included package %s"
 msgstr "Behalte integriertes Paket %s"
 
-#: ../yum/__init__.py:931
+#: ../yum/__init__.py:1034
 #, python-format
 msgid "Removing unmatched package %s"
 msgstr "Entferne nicht übereinstimmendes Paket %s"
 
-#: ../yum/__init__.py:934
+#: ../yum/__init__.py:1037
 msgid "Finished"
 msgstr "Abgeschlossen"
 
 #. Whoa. What the heck happened?
-#: ../yum/__init__.py:964
+#: ../yum/__init__.py:1067
 #, python-format
 msgid "Unable to check if PID %s is active"
 msgstr "Unfähig zum Prüfen, ob PID %s ist aktiv"
 
 #. Another copy seems to be running.
-#: ../yum/__init__.py:968
+#: ../yum/__init__.py:1071
 #, python-format
 msgid "Existing lock %s: another copy is running as pid %s."
 msgstr "Existierende Blockierung %s: eine andere Kopie läuft mit PID %s."
 
-#: ../yum/__init__.py:1039
+#: ../yum/__init__.py:1142
 msgid "Package does not match intended download"
 msgstr "Paket stimmt nicht mit dem vorgesehenen Herunterladen überein."
 
-#: ../yum/__init__.py:1054
+#: ../yum/__init__.py:1157
 msgid "Could not perform checksum"
 msgstr "Konnte Prüfsumme nicht bilden"
 
-#: ../yum/__init__.py:1057
+#: ../yum/__init__.py:1160
 msgid "Package does not match checksum"
 msgstr "Paket stimmt nicht mit der Prüfsumme überein"
 
-#: ../yum/__init__.py:1100
+#: ../yum/__init__.py:1203
 #, python-format
 msgid "package fails checksum but caching is enabled for %s"
 msgstr "Paket bei Checksumme-Prüfung durchgefallen, aber Zwischenspeicherung ist aktiviert für %s"
 
-#: ../yum/__init__.py:1103
+#: ../yum/__init__.py:1206
+#: ../yum/__init__.py:1234
 #, python-format
 msgid "using local copy of %s"
 msgstr "benutze lokale Kopie von %s"
 
-#: ../yum/__init__.py:1130
+#: ../yum/__init__.py:1248
 #, python-format
 msgid ""
 "Insufficient space in download directory %s\n"
@@ -1706,330 +1731,330 @@ msgstr ""
 "    * frei   %s\n"
 "    * benötigt %s"
 
-#: ../yum/__init__.py:1177
+#: ../yum/__init__.py:1295
 msgid "Header is not complete."
 msgstr "Header ist nicht vollständig."
 
-#: ../yum/__init__.py:1217
+#: ../yum/__init__.py:1335
 #, python-format
 msgid "Header not in local cache and caching-only mode enabled. Cannot download %s"
 msgstr "Header ist nicht im lokalen Zwischenspeicher und Nur-Zwischenspeicher-Modus aktiviert. Kann %s nicht herunterladen"
 
-#: ../yum/__init__.py:1272
+#: ../yum/__init__.py:1390
 #, python-format
 msgid "Public key for %s is not installed"
 msgstr "Öffentlicher Schlüssel für %s ist nicht installiert"
 
-#: ../yum/__init__.py:1276
+#: ../yum/__init__.py:1394
 #, python-format
 msgid "Problem opening package %s"
 msgstr "Problem beim Öffnen des Paketes %s"
 
-#: ../yum/__init__.py:1284
+#: ../yum/__init__.py:1402
 #, python-format
 msgid "Public key for %s is not trusted"
 msgstr "Öffentlicher Schlüssel für %s ist nicht vertrauenswürdig"
 
-#: ../yum/__init__.py:1288
+#: ../yum/__init__.py:1406
 #, python-format
 msgid "Package %s is not signed"
 msgstr "Paket %s ist nicht unterschrieben"
 
-#: ../yum/__init__.py:1326
+#: ../yum/__init__.py:1444
 #, python-format
 msgid "Cannot remove %s"
 msgstr "Kann %s nicht entfernen"
 
-#: ../yum/__init__.py:1330
+#: ../yum/__init__.py:1448
 #, python-format
 msgid "%s removed"
 msgstr "%s entfernt"
 
-#: ../yum/__init__.py:1367
+#: ../yum/__init__.py:1485
 #, python-format
 msgid "Cannot remove %s file %s"
 msgstr "Kann %s Datei nicht entfernt %s"
 
-#: ../yum/__init__.py:1371
+#: ../yum/__init__.py:1489
 #, python-format
 msgid "%s file %s removed"
 msgstr "%s Datei %s entfernt"
 
-#: ../yum/__init__.py:1373
+#: ../yum/__init__.py:1491
 #, python-format
 msgid "%d %s files removed"
 msgstr "%d %s Dateien entfernt"
 
-#: ../yum/__init__.py:1435
+#: ../yum/__init__.py:1553
 #, python-format
 msgid "More than one identical match in sack for %s"
 msgstr "Mehr als eine identische Übereinstimmung im Behälter für %s"
 
-#: ../yum/__init__.py:1441
+#: ../yum/__init__.py:1559
 #, python-format
 msgid "Nothing matches %s.%s %s:%s-%s from update"
 msgstr "Keine Ãœbereinstimmungen  %s.%s %s:%s-%s mit der Aktualisierung"
 
-#: ../yum/__init__.py:1649
+#: ../yum/__init__.py:1767
 msgid "searchPackages() will go away in a future version of Yum.                      Use searchGenerator() instead. \n"
 msgstr "searchPackages() wird in zukünftigen Version von Yum verschwinden.                      Benutze stattdessen searchGenerator(). \n"
 
-#: ../yum/__init__.py:1687
+#: ../yum/__init__.py:1805
 #, python-format
 msgid "Searching %d packages"
 msgstr "Suche %d Pakete"
 
-#: ../yum/__init__.py:1691
+#: ../yum/__init__.py:1809
 #, python-format
 msgid "searching package %s"
 msgstr "Suche Paket %s"
 
-#: ../yum/__init__.py:1703
+#: ../yum/__init__.py:1821
 msgid "searching in file entries"
 msgstr "Suche in Datei-Einträgen"
 
-#: ../yum/__init__.py:1710
+#: ../yum/__init__.py:1828
 msgid "searching in provides entries"
 msgstr "suche in bereitgestellten Einträgen"
 
-#: ../yum/__init__.py:1743
+#: ../yum/__init__.py:1861
 #, python-format
 msgid "Provides-match: %s"
 msgstr "Stelle Ãœbereinstimmung bereit: %s"
 
-#: ../yum/__init__.py:1792
+#: ../yum/__init__.py:1910
 msgid "No group data available for configured repositories"
 msgstr "Keine Gruppe für konfigurierte Repositories verfügbar"
 
-#: ../yum/__init__.py:1818
-#: ../yum/__init__.py:1837
-#: ../yum/__init__.py:1868
-#: ../yum/__init__.py:1874
-#: ../yum/__init__.py:1947
-#: ../yum/__init__.py:1951
+#: ../yum/__init__.py:1941
+#: ../yum/__init__.py:1960
+#: ../yum/__init__.py:1991
+#: ../yum/__init__.py:1997
+#: ../yum/__init__.py:2070
+#: ../yum/__init__.py:2074
 #, python-format
 msgid "No Group named %s exists"
 msgstr "Kein Gruppe mit dem Namen %s vorhanden"
 
-#: ../yum/__init__.py:1849
-#: ../yum/__init__.py:1964
+#: ../yum/__init__.py:1972
+#: ../yum/__init__.py:2087
 #, python-format
 msgid "package %s was not marked in group %s"
 msgstr "Paket %s war nicht markiert in Gruppe %s"
 
-#: ../yum/__init__.py:1896
+#: ../yum/__init__.py:2019
 #, python-format
 msgid "Adding package %s from group %s"
 msgstr "Füge Paket %s aus Gruppe %s hinzu"
 
-#: ../yum/__init__.py:1900
+#: ../yum/__init__.py:2023
 #, python-format
 msgid "No package named %s available to be installed"
 msgstr "Kein Paket mit Namen %s verfügbar zum Installieren"
 
 # Paket-Behälter wird sicher nicht allen gefallen. Fabian
-#: ../yum/__init__.py:1989
+#: ../yum/__init__.py:2112
 #, python-format
 msgid "Package tuple %s could not be found in packagesack"
 msgstr "Paket-Tupel %s kann nicht gefunden werden im Paket-Behälter"
 
-#: ../yum/__init__.py:2004
+#: ../yum/__init__.py:2127
 msgid "getInstalledPackageObject() will go away, use self.rpmdb.searchPkgTuple().\n"
 msgstr "getInstalledPackageObject() wird verschwinden, benutze self.rpmdb.searchPkgTuple().\n"
 
-#: ../yum/__init__.py:2056
-#: ../yum/__init__.py:2099
+#: ../yum/__init__.py:2179
+#: ../yum/__init__.py:2222
 msgid "Invalid versioned dependency string, try quoting it."
 msgstr "Ungültig versionierte Abhängigkeitszeichenkette, versuche es zu notieren."
 
-#: ../yum/__init__.py:2058
-#: ../yum/__init__.py:2101
+#: ../yum/__init__.py:2181
+#: ../yum/__init__.py:2224
 msgid "Invalid version flag"
 msgstr "Ungültiges Versionsflag"
 
-#: ../yum/__init__.py:2073
-#: ../yum/__init__.py:2077
+#: ../yum/__init__.py:2196
+#: ../yum/__init__.py:2200
 #, python-format
 msgid "No Package found for %s"
 msgstr "Kein Paket gefunden für %s"
 
-#: ../yum/__init__.py:2276
+#: ../yum/__init__.py:2399
 msgid "Package Object was not a package object instance"
 msgstr "Paketobjekt war keine Paketobjektinstanz"
 
-#: ../yum/__init__.py:2280
+#: ../yum/__init__.py:2403
 msgid "Nothing specified to install"
 msgstr "Nichts angegeben zum Installieren"
 
 #. only one in there
-#: ../yum/__init__.py:2298
+#: ../yum/__init__.py:2421
 #, python-format
 msgid "Checking for virtual provide or file-provide for %s"
 msgstr "Überprüfe nach virtueller Bereitstellung oder Datei-Bereitstellung für %s"
 
-#: ../yum/__init__.py:2304
-#: ../yum/__init__.py:2680
+#: ../yum/__init__.py:2427
+#: ../yum/__init__.py:2820
 #, python-format
 msgid "No Match for argument: %s"
 msgstr "Kein Übereinstimmung für Argument: %s"
 
-#: ../yum/__init__.py:2370
+#: ../yum/__init__.py:2493
 #, python-format
 msgid "Package %s installed and not available"
 msgstr "Paket %s installiert und nicht verfügbar"
 
-#: ../yum/__init__.py:2373
+#: ../yum/__init__.py:2496
 msgid "No package(s) available to install"
 msgstr "Kein(e) Paket(e) zum Installieren verfügbar."
 
-#: ../yum/__init__.py:2385
+#: ../yum/__init__.py:2508
 #, python-format
 msgid "Package: %s  - already in transaction set"
 msgstr "Paket: %s - bereits im Transaktionsset"
 
-#: ../yum/__init__.py:2398
+#: ../yum/__init__.py:2521
 #, python-format
 msgid "Package %s already installed and latest version"
 msgstr "Paket %s ist bereits installiert und ist in der neusten Version vorhanden."
 
-#: ../yum/__init__.py:2405
+#: ../yum/__init__.py:2528
 #, python-format
 msgid "Package matching %s already installed. Checking for update."
 msgstr "Paket, das auf %s passt, ist bereits installiert. Überprüfe auf Aktualisierung."
 
-#: ../yum/__init__.py:2415
+#: ../yum/__init__.py:2538
 #, python-format
 msgid "Package %s is obsoleted by %s, trying to install %s instead"
 msgstr "Paket %svon %s ist veraltet, versuche stattdessen %s zu installieren."
 
 #. update everything (the easy case)
-#: ../yum/__init__.py:2485
+#: ../yum/__init__.py:2619
 msgid "Updating Everything"
 msgstr "Aktualisiere alles"
 
-#: ../yum/__init__.py:2497
-#: ../yum/__init__.py:2602
-#: ../yum/__init__.py:2613
-#: ../yum/__init__.py:2635
+#: ../yum/__init__.py:2631
+#: ../yum/__init__.py:2736
+#: ../yum/__init__.py:2747
+#: ../yum/__init__.py:2769
 #, python-format
 msgid "Not Updating Package that is already obsoleted: %s.%s %s:%s-%s"
 msgstr "Aktualisiere Paket nicht, da es bereits veraltet ist: %s.%s %s:%s-%s"
 
-#: ../yum/__init__.py:2593
+#: ../yum/__init__.py:2727
 #, python-format
 msgid "Package is already obsoleted: %s.%s %s:%s-%s"
 msgstr "Paket ist bereits veraltet: %s.%s %s:%s-%s"
 
-#: ../yum/__init__.py:2616
-#: ../yum/__init__.py:2638
+#: ../yum/__init__.py:2750
+#: ../yum/__init__.py:2772
 #, python-format
 msgid "Not Updating Package that is already updated: %s.%s %s:%s-%s"
 msgstr "Aktualisiere Paket nicht, da es bereits veraltet ist:  %s.%s %s:%s-%s"
 
-#: ../yum/__init__.py:2677
+#: ../yum/__init__.py:2817
 #, python-format
 msgid "%s"
 msgstr "%s"
 
-#: ../yum/__init__.py:2693
+#: ../yum/__init__.py:2833
 msgid "No package matched to remove"
 msgstr "Kein Paket stimmt zum Entfernen überein"
 
-#: ../yum/__init__.py:2727
+#: ../yum/__init__.py:2867
 #, python-format
 msgid "Cannot open file: %s. Skipping."
 msgstr "Kann Datei nicht öffnen: %s. Überspringen."
 
-#: ../yum/__init__.py:2730
+#: ../yum/__init__.py:2870
 #, python-format
 msgid "Examining %s: %s"
 msgstr "Untersuche %s: %s"
 
-#: ../yum/__init__.py:2738
+#: ../yum/__init__.py:2878
 #, python-format
 msgid "Cannot add package %s to transaction. Not a compatible architecture: %s"
 msgstr "Kann Paket %s nicht zur Transaktion hinzufügen. Keine kompatible Architektur: %s"
 
-#: ../yum/__init__.py:2746
+#: ../yum/__init__.py:2886
 #, python-format
 msgid "Package %s not installed, cannot update it. Run yum install to install it instead."
 msgstr "Paket %s nicht installiert, kann es nicht aktualisieren. Führen Sie stattdessen yum install aus, um es zu installieren."
 
-#: ../yum/__init__.py:2779
+#: ../yum/__init__.py:2919
 #, python-format
 msgid "Excluding %s"
 msgstr "Exklusive %s"
 
-#: ../yum/__init__.py:2784
+#: ../yum/__init__.py:2924
 #, python-format
 msgid "Marking %s to be installed"
 msgstr "Markiere %s zum Installieren"
 
-#: ../yum/__init__.py:2790
+#: ../yum/__init__.py:2930
 #, python-format
 msgid "Marking %s as an update to %s"
 msgstr "Markiere %s als eine Aktualisierung für %s"
 
-#: ../yum/__init__.py:2797
+#: ../yum/__init__.py:2937
 #, python-format
 msgid "%s: does not update installed package."
 msgstr "%s: aktualisiert installierte Pakete nicht."
 
-#: ../yum/__init__.py:2815
+#: ../yum/__init__.py:2955
 msgid "Problem in reinstall: no package matched to remove"
 msgstr "Probleme beim Neuinstallieren: kein Paket stimmt zum Entfernen überein"
 
-#: ../yum/__init__.py:2826
+#: ../yum/__init__.py:2966
 #, python-format
 msgid "Package %s is allowed multiple installs, skipping"
 msgstr "Paket %s darf mehrfach installiert sein, überspringe"
 
-#: ../yum/__init__.py:2833
+#: ../yum/__init__.py:2973
 msgid "Problem in reinstall: no package matched to install"
 msgstr "Probleme beim Neuinstallieren: kein Paket stimmt zum Installieren überein"
 
-#: ../yum/__init__.py:2868
+#: ../yum/__init__.py:3008
 #, python-format
 msgid "Retrieving GPG key from %s"
 msgstr "GPG-Schlüssel abrufen von %s"
 
-#: ../yum/__init__.py:2874
+#: ../yum/__init__.py:3028
 msgid "GPG key retrieval failed: "
 msgstr "GPG-Schlüssel-Abruf fehlgeschlagen:"
 
-#: ../yum/__init__.py:2885
+#: ../yum/__init__.py:3039
 #, python-format
 msgid "GPG key parsing failed: key does not have value %s"
 msgstr "GPG-Schlüssel-Analyse fehlgeschlagen: Schlüssel hat keinen Wert %s"
 
-#: ../yum/__init__.py:2917
+#: ../yum/__init__.py:3071
 #, python-format
 msgid "GPG key at %s (0x%s) is already installed"
 msgstr "GPG-Schlüssel unter %s (0x%s) ist bereits installiert"
 
 #. Try installing/updating GPG key
-#: ../yum/__init__.py:2922
-#: ../yum/__init__.py:2984
+#: ../yum/__init__.py:3076
+#: ../yum/__init__.py:3138
 #, python-format
 msgid "Importing GPG key 0x%s \"%s\" from %s"
 msgstr "Importiere GPG-Schlüssel 0x%s \"%s\" von %s"
 
-#: ../yum/__init__.py:2939
+#: ../yum/__init__.py:3093
 msgid "Not installing key"
 msgstr "Nicht installierter Schlüssel"
 
-#: ../yum/__init__.py:2945
+#: ../yum/__init__.py:3099
 #, python-format
 msgid "Key import failed (code %d)"
 msgstr "Schlüssel-Import fehlgeschlagen (Code %d)"
 
-#: ../yum/__init__.py:2946
-#: ../yum/__init__.py:3005
+#: ../yum/__init__.py:3100
+#: ../yum/__init__.py:3159
 msgid "Key imported successfully"
 msgstr "Schlüssel erfolgreich importiert"
 
-#: ../yum/__init__.py:2951
-#: ../yum/__init__.py:3010
+#: ../yum/__init__.py:3105
+#: ../yum/__init__.py:3164
 #, python-format
 msgid ""
 "The GPG keys listed for the \"%s\" repository are already installed but they are not correct for this package.\n"
@@ -2038,91 +2063,91 @@ msgstr ""
 "Die aufgelisteten GPG-Schlüssel für das \"%s\"-Repository sind bereits installiert, aber sie sind nicht korrekt für dieses Paket.\n"
 "Stellen Sie sicher, dass die korrekten Schlüssel-URLs für dieses Repository konfiguriert sind."
 
-#: ../yum/__init__.py:2960
+#: ../yum/__init__.py:3114
 msgid "Import of key(s) didn't help, wrong key(s)?"
 msgstr "Importieren der Schlüssel hat nicht geholfen, falsche Schlüssel?"
 
-#: ../yum/__init__.py:2979
+#: ../yum/__init__.py:3133
 #, python-format
 msgid "GPG key at %s (0x%s) is already imported"
 msgstr "GPG-Schlüssel unter %s (0x%s) ist bereits importiert"
 
-#: ../yum/__init__.py:2999
+#: ../yum/__init__.py:3153
 #, python-format
 msgid "Not installing key for repo %s"
 msgstr "Nicht installierter Schlüssel für Repo %s"
 
-#: ../yum/__init__.py:3004
+#: ../yum/__init__.py:3158
 msgid "Key import failed"
 msgstr "Schlüssel-Import fehlgeschlagen"
 
-#: ../yum/__init__.py:3095
+#: ../yum/__init__.py:3249
 msgid "Unable to find a suitable mirror."
 msgstr "Es kann kein geeigneter Mirror gefunden werden."
 
-#: ../yum/__init__.py:3097
+#: ../yum/__init__.py:3251
 msgid "Errors were encountered while downloading packages."
 msgstr "Beim Herunterladen der Pakete sind Fehler aufgetreten."
 
-#: ../yum/__init__.py:3161
+#: ../yum/__init__.py:3315
 msgid "Test Transaction Errors: "
 msgstr "Test-Transaktionsfehler"
 
 #. Mostly copied from YumOutput._outKeyValFill()
-#: ../yum/plugins.py:199
+#: ../yum/plugins.py:201
 msgid "Loaded plugins: "
 msgstr "Geladene Plugins: "
 
-#: ../yum/plugins.py:213
-#: ../yum/plugins.py:219
+#: ../yum/plugins.py:215
+#: ../yum/plugins.py:221
 #, python-format
 msgid "No plugin match for: %s"
 msgstr "Kein Plugin für Argument: %s"
 
-#: ../yum/plugins.py:249
+#: ../yum/plugins.py:251
 #, python-format
 msgid "\"%s\" plugin is disabled"
 msgstr "\"%s\" Plugin ist deaktiviert"
 
 #. Give full backtrace:
-#: ../yum/plugins.py:261
+#: ../yum/plugins.py:263
 #, python-format
 msgid "Plugin \"%s\" can't be imported"
 msgstr "Plugin \"%s\" kann nicht importiert werden"
 
-#: ../yum/plugins.py:268
+#: ../yum/plugins.py:270
 #, python-format
 msgid "Plugin \"%s\" doesn't specify required API version"
 msgstr "Plugin \"%s\" gibt keine benötigte API-Version an"
 
-#: ../yum/plugins.py:273
+#: ../yum/plugins.py:275
 #, python-format
 msgid "Plugin \"%s\" requires API %s. Supported API is %s."
 msgstr "Plugin \"%s\" benötigt API %s. Unterstützte API ist %s."
 
-#: ../yum/plugins.py:306
+#: ../yum/plugins.py:308
 #, python-format
 msgid "Loading \"%s\" plugin"
 msgstr "Lade \"%s\" Plugin"
 
-#: ../yum/plugins.py:313
+#: ../yum/plugins.py:315
 #, python-format
 msgid "Two or more plugins with the name \"%s\" exist in the plugin search path"
 msgstr "Zwei oder mehr Plugins mit dem Namen \"%s\" existieren im Plugin-Suchpfad"
 
-#: ../yum/plugins.py:333
+#: ../yum/plugins.py:335
 #, python-format
 msgid "Configuration file %s not found"
 msgstr "Konfigurationsdatei %s nicht gefunden"
 
 #. for
 #. Configuration files for the plugin not found
-#: ../yum/plugins.py:336
+#: ../yum/plugins.py:338
 #, python-format
 msgid "Unable to find configuration file for plugin %s"
 msgstr "Kann Konfigurationsdatei für Plugin %s nicht finden"
 
-#: ../yum/plugins.py:490
+#: ../yum/plugins.py:492
 msgid "registration of commands not supported"
 msgstr "Registrierung von Befehlen nicht unterstützt"
 
commit 09163c9f1a9305b383d82f46335111677bbee076
Author: Tim Lauridsen <timlau at fedoraproject.org>
Date:   Sat Nov 22 08:05:10 2008 +0100

    updated Polish translation by Piotr DrÄ…g

diff --git a/po/pl.po b/po/pl.po
index 51e5f29..e1e4000 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -5,15 +5,15 @@ msgid ""
 msgstr ""
 "Project-Id-Version: pl\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-26 15:54+0100\n"
-"PO-Revision-Date: 2008-10-22 00:15+0200\n"
+"POT-Creation-Date: 2008-11-22 03:51+0100\n"
+"PO-Revision-Date: 2008-11-22 03:55+0100\n"
 "Last-Translator: Piotr DrÄ…g <piotrdrag at gmail.com>\n"
 "Language-Team: Polish <pl at li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: ../callback.py:48 ../output.py:777 ../yum/rpmtrans.py:71
+#: ../callback.py:48 ../output.py:914 ../yum/rpmtrans.py:71
 msgid "Updating"
 msgstr "Aktualizowanie"
 
@@ -21,8 +21,7 @@ msgstr "Aktualizowanie"
 msgid "Erasing"
 msgstr "Usuwanie"
 
-#. Arch can't get "that big" ... so always use the max.
-#: ../callback.py:50 ../callback.py:51 ../callback.py:53 ../output.py:776
+#: ../callback.py:50 ../callback.py:51 ../callback.py:53 ../output.py:913
 #: ../yum/rpmtrans.py:73 ../yum/rpmtrans.py:74 ../yum/rpmtrans.py:76
 msgid "Installing"
 msgstr "Instalowanie"
@@ -31,7 +30,7 @@ msgstr "Instalowanie"
 msgid "Obsoleted"
 msgstr "Przestarzałe"
 
-#: ../callback.py:54 ../output.py:890
+#: ../callback.py:54 ../output.py:1019
 msgid "Updated"
 msgstr "Zaktualizowano"
 
@@ -39,7 +38,7 @@ msgstr "Zaktualizowano"
 msgid "Erased"
 msgstr "Usunięto"
 
-#: ../callback.py:56 ../callback.py:57 ../callback.py:59 ../output.py:888
+#: ../callback.py:56 ../callback.py:57 ../callback.py:59 ../output.py:1017
 msgid "Installed"
 msgstr "Zainstalowano"
 
@@ -61,7 +60,7 @@ msgstr "Błąd: nieprawidłowy stan wyjścia: %s dla %s"
 msgid "Erased: %s"
 msgstr "Usunięto: %s"
 
-#: ../callback.py:217 ../output.py:778
+#: ../callback.py:217 ../output.py:915
 msgid "Removing"
 msgstr "Usuwanie"
 
@@ -82,47 +81,47 @@ msgstr "Ustawianie repozytoriów"
 msgid "Reading repository metadata in from local files"
 msgstr "Odczytywanie metadanych repozytoriów z lokalnych plików"
 
-#: ../cli.py:187 ../utils.py:71
+#: ../cli.py:188 ../utils.py:79
 #, python-format
 msgid "Config Error: %s"
 msgstr "BÅ‚Ä…d konfiguracji: %s"
 
-#: ../cli.py:190 ../cli.py:1128 ../utils.py:74
+#: ../cli.py:191 ../cli.py:1172 ../utils.py:82
 #, python-format
 msgid "Options Error: %s"
 msgstr "BÅ‚Ä…d opcji: %s"
 
-#: ../cli.py:218
+#: ../cli.py:219
 #, python-format
 msgid "  Installed: %s-%s at %s"
 msgstr "  Zainstalowane: %s-%s at %s"
 
-#: ../cli.py:220
+#: ../cli.py:221
 #, python-format
 msgid "  Built    : %s at %s"
 msgstr "  Zbudowane    : %s o %s"
 
-#: ../cli.py:222
+#: ../cli.py:223
 #, python-format
 msgid "  Committed: %s at %s"
 msgstr "  Wysłane: %s o %s"
 
-#: ../cli.py:259
+#: ../cli.py:260
 msgid "You need to give some command"
 msgstr "Musisz podać jakieś polecenie"
 
-#: ../cli.py:301
+#: ../cli.py:302
 msgid "Disk Requirements:\n"
 msgstr "Wymagana przestrzeń na dysku:\n"
 
-#: ../cli.py:303
+#: ../cli.py:304
 #, python-format
 msgid "  At least %dMB needed on the %s filesystem.\n"
 msgstr "  Potrzeba co najmniej %d MB w systemie plików %s.\n"
 
 #. TODO: simplify the dependency errors?
 #. Fixup the summary
-#: ../cli.py:308
+#: ../cli.py:309
 msgid ""
 "Error Summary\n"
 "-------------\n"
@@ -130,55 +129,64 @@ msgstr ""
 "Podsumowanie błędów\n"
 "-------------------\n"
 
-#: ../cli.py:351
+#: ../cli.py:352
 msgid "Trying to run the transaction but nothing to do. Exiting."
 msgstr "Próbowano wykonać transakcję, ale nie ma nic do zrobienia. Zamykanie."
 
-#: ../cli.py:381
+#: ../cli.py:382
 msgid "Exiting on user Command"
 msgstr "Zamykanie na polecenie użytkownika"
 
-#: ../cli.py:385
+#: ../cli.py:386
 msgid "Downloading Packages:"
 msgstr "Pobieranie pakietów:"
 
-#: ../cli.py:390
+#: ../cli.py:391
 msgid "Error Downloading Packages:\n"
 msgstr "Błąd podczas pobierania pakietów:\n"
 
-#: ../cli.py:404 ../yum/__init__.py:3154
+#: ../cli.py:403
+msgid "Entering rpm code"
+msgstr "Przechodzenie do kodu RPM"
+
+#: ../cli.py:407 ../yum/__init__.py:3312
 msgid "Running rpm_check_debug"
 msgstr "Wykonywanie rpm_check_debug"
 
-#: ../cli.py:407 ../yum/__init__.py:3157
+#: ../cli.py:410 ../yum/__init__.py:3315
 msgid "ERROR with rpm_check_debug vs depsolve:"
 msgstr "BŁĄD rpm_check_debug i rozwiązywania zależności:"
 
-#: ../cli.py:411 ../yum/__init__.py:3159
-msgid "Please report this error in bugzilla"
-msgstr "Zgłoś ten błąd w Bugzilli"
+#: ../cli.py:414
+#, python-format
+msgid "Please report this error in %s"
+msgstr "Zgłoś ten błąd na %s"
 
-#: ../cli.py:417
+#: ../cli.py:420
 msgid "Running Transaction Test"
 msgstr "Wykonywanie testu transakcji"
 
-#: ../cli.py:433
+#: ../cli.py:436
 msgid "Finished Transaction Test"
 msgstr "Zakończono test transakcji"
 
-#: ../cli.py:435
+#: ../cli.py:438
 msgid "Transaction Check Error:\n"
 msgstr "BÅ‚Ä…d podczas sprawdzania transakcji:\n"
 
-#: ../cli.py:442
+#: ../cli.py:445
 msgid "Transaction Test Succeeded"
 msgstr "Test transakcji został zakończony powodzeniem"
 
-#: ../cli.py:463
+#: ../cli.py:466
 msgid "Running Transaction"
 msgstr "Wykonywanie transakcji"
 
-#: ../cli.py:493
+#: ../cli.py:471
+msgid "Leaving rpm code"
+msgstr "Opuszczanie kodu RPM"
+
+#: ../cli.py:498
 msgid ""
 "Refusing to automatically import keys when running unattended.\n"
 "Use \"-y\" to override."
@@ -187,68 +195,68 @@ msgstr ""
 "uruchomienia.\n"
 "Użyj \"-y\", aby wymusić."
 
-#: ../cli.py:512 ../cli.py:545
+#: ../cli.py:517 ../cli.py:550
 msgid "  * Maybe you meant: "
 msgstr "  * Czy chodziło o: "
 
-#: ../cli.py:528 ../cli.py:536
+#: ../cli.py:533 ../cli.py:541
 #, python-format
 msgid "Package(s) %s%s%s available, but not installed."
 msgstr "Pakiety %s%s%s są dostępne, ale nie są zainstalowane."
 
-#: ../cli.py:542 ../cli.py:577
+#: ../cli.py:547 ../cli.py:582
 #, python-format
 msgid "No package %s%s%s available."
 msgstr "Nie ma pakietu %s%s%s."
 
-#: ../cli.py:567
+#: ../cli.py:572
 msgid "Parsing package install arguments"
 msgstr "Analizowanie parametrów instalacji pakietów"
 
-#: ../cli.py:582 ../cli.py:657 ../yumcommands.py:912
+#: ../cli.py:587 ../cli.py:662 ../yumcommands.py:984
 msgid "Package(s) to install"
 msgstr "Pakiety do zainstalowania"
 
-#: ../cli.py:583 ../cli.py:658 ../yumcommands.py:150 ../yumcommands.py:913
+#: ../cli.py:588 ../cli.py:663 ../yumcommands.py:151 ../yumcommands.py:985
 msgid "Nothing to do"
 msgstr "Nie ma niczego do zrobienia"
 
-#: ../cli.py:616
+#: ../cli.py:621
 #, python-format
 msgid "%d packages marked for Update"
 msgstr "%d pakietów oznaczonych do aktualizacji"
 
-#: ../cli.py:619
+#: ../cli.py:624
 msgid "No Packages marked for Update"
 msgstr "Brak pakietów oznaczonych do aktualizacji"
 
-#: ../cli.py:633
+#: ../cli.py:638
 #, python-format
 msgid "%d packages marked for removal"
 msgstr "%d pakietów oznaczonych do usunięcia"
 
-#: ../cli.py:636
+#: ../cli.py:641
 msgid "No Packages marked for removal"
 msgstr "Brak pakietów oznaczonych do usunięcia"
 
-#: ../cli.py:648
+#: ../cli.py:653
 msgid "No Packages Provided"
 msgstr "Nie podano pakietów"
 
-#: ../cli.py:689
+#: ../cli.py:706
 msgid "Matching packages for package list to user args"
 msgstr "Dopasowywanie listy pakietów do parametrów użytkownika"
 
-#: ../cli.py:731
+#: ../cli.py:755
 #, python-format
 msgid "Warning: No matches found for: %s"
 msgstr "Ostrzeżenie: nie znaleziono wyników dla: %s"
 
-#: ../cli.py:734
+#: ../cli.py:758
 msgid "No Matches found"
 msgstr "Brak wyników"
 
-#: ../cli.py:773
+#: ../cli.py:797
 #, python-format
 msgid ""
 "Warning: 3.0.x versions of yum would erronously match against filenames.\n"
@@ -257,104 +265,104 @@ msgstr ""
 "Ostrzeżenie: wersje yuma 3.0.x błędnie dopasowują nazwy plików.\n"
 " Można użyć \"%s*/%s%s\" i/lub \"%s*bin/%s%s\", aby uzyskać to zachowanie"
 
-#: ../cli.py:789
+#: ../cli.py:813
 #, python-format
 msgid "No Package Found for %s"
 msgstr "Nie znaleziono pakietów dla %s"
 
-#: ../cli.py:801
+#: ../cli.py:825
 msgid "Cleaning up Everything"
 msgstr "Czyszczenie wszystkiego"
 
-#: ../cli.py:815
+#: ../cli.py:839
 msgid "Cleaning up Headers"
 msgstr "Czyszczenie nagłówków"
 
-#: ../cli.py:818
+#: ../cli.py:842
 msgid "Cleaning up Packages"
 msgstr "Czyszczenie pakietów"
 
-#: ../cli.py:821
+#: ../cli.py:845
 msgid "Cleaning up xml metadata"
 msgstr "Czytanie metadanych XML"
 
-#: ../cli.py:824
+#: ../cli.py:848
 msgid "Cleaning up database cache"
 msgstr "Czyszczenie pamięci podręcznej bazy danych"
 
-#: ../cli.py:827
+#: ../cli.py:851
 msgid "Cleaning up expire-cache metadata"
 msgstr "Czytanie metadanych wygasłej pamięci podręcznej"
 
-#: ../cli.py:830
+#: ../cli.py:854
 msgid "Cleaning up plugins"
 msgstr "Czyszczenie wtyczek"
 
-#: ../cli.py:851
+#: ../cli.py:879
 msgid "Installed Groups:"
 msgstr "Zainstalowane grupy:"
 
-#: ../cli.py:858
+#: ../cli.py:886
 msgid "Available Groups:"
 msgstr "Dostępne grupy:"
 
-#: ../cli.py:864
+#: ../cli.py:892
 msgid "Done"
 msgstr "Zakończono"
 
-#: ../cli.py:875 ../cli.py:893 ../cli.py:899 ../yum/__init__.py:2246
+#: ../cli.py:903 ../cli.py:921 ../cli.py:927 ../yum/__init__.py:2387
 #, python-format
 msgid "Warning: Group %s does not exist."
 msgstr "Ostrzeżenie: grupa %s nie istnieje."
 
-#: ../cli.py:903
+#: ../cli.py:931
 msgid "No packages in any requested group available to install or update"
 msgstr ""
 "Brak pakietów dostępnych do instalacji lub aktualizacji w żadnej z żądanych "
 "grup"
 
-#: ../cli.py:905
+#: ../cli.py:933
 #, python-format
 msgid "%d Package(s) to Install"
 msgstr "%d pakietów do instalacji"
 
-#: ../cli.py:915 ../yum/__init__.py:2258
+#: ../cli.py:943 ../yum/__init__.py:2399
 #, python-format
 msgid "No group named %s exists"
 msgstr "Grupa o nazwie %s nie istnieje"
 
-#: ../cli.py:921
+#: ../cli.py:949
 msgid "No packages to remove from groups"
 msgstr "Brak pakietów do usunięcia z grup"
 
-#: ../cli.py:923
+#: ../cli.py:951
 #, python-format
 msgid "%d Package(s) to remove"
 msgstr "%d pakietów do usunięcia"
 
-#: ../cli.py:965
+#: ../cli.py:993
 #, python-format
 msgid "Package %s is already installed, skipping"
 msgstr "Pakiet %s jest już zainstalowany, pomijanie"
 
-#: ../cli.py:976
+#: ../cli.py:1004
 #, python-format
 msgid "Discarding non-comparable pkg %s.%s"
 msgstr "Odrzucanie pakietu %s.%s, którego nie można porównać"
 
 #. we've not got any installed that match n or n+a
-#: ../cli.py:1002
+#: ../cli.py:1030
 #, python-format
 msgid "No other %s installed, adding to list for potential install"
 msgstr ""
 "Inne %s nie sÄ… zainstalowane, dodawanie do listy potencjalnie instalowanych"
 
-#: ../cli.py:1021
+#: ../cli.py:1049
 #, python-format
 msgid "Command line error: %s"
 msgstr "Błąd wiersza poleceń: %s"
 
-#: ../cli.py:1034
+#: ../cli.py:1062
 #, python-format
 msgid ""
 "\n"
@@ -365,244 +373,252 @@ msgstr ""
 "\n"
 "%s: opcja %s wymaga parametru"
 
-#: ../cli.py:1170
+#: ../cli.py:1112
+msgid "--color takes one of: auto, always, never"
+msgstr "--color przyjmuje jednÄ… z: auto, always, never"
+
+#: ../cli.py:1214
 msgid "show this help message and exit"
 msgstr "wyświetla ten komunikat pomocy i wyłącza"
 
-#: ../cli.py:1174
+#: ../cli.py:1218
 msgid "be tolerant of errors"
 msgstr "toleruje błędy"
 
-#: ../cli.py:1176
+#: ../cli.py:1220
 msgid "run entirely from cache, don't update cache"
 msgstr "uruchamia wyłącznie z pamięci podręcznej i nie aktualizuje jej"
 
-#: ../cli.py:1178
+#: ../cli.py:1222
 msgid "config file location"
 msgstr "położenie pliku konfiguracji"
 
-#: ../cli.py:1180
+#: ../cli.py:1224
 msgid "maximum command wait time"
 msgstr "maksymalny czas oczekiwania na polecenie"
 
-#: ../cli.py:1182
+#: ../cli.py:1226
 msgid "debugging output level"
 msgstr "poziom wyjścia debugowania"
 
-#: ../cli.py:1186
+#: ../cli.py:1230
 msgid "show duplicates, in repos, in list/search commands"
 msgstr "wyświetla duplikaty w repozytoriach w poleceniach list/search"
 
-#: ../cli.py:1188
+#: ../cli.py:1232
 msgid "error output level"
 msgstr "poziom wyjścia błędów"
 
-#: ../cli.py:1191
+#: ../cli.py:1235
 msgid "quiet operation"
 msgstr "mało komunikatów"
 
-#: ../cli.py:1193
+#: ../cli.py:1237
 msgid "verbose operation"
 msgstr "dużo komunikatów"
 
-#: ../cli.py:1195
+#: ../cli.py:1239
 msgid "answer yes for all questions"
 msgstr "odpowiada tak na wszystkie pytania"
 
-#: ../cli.py:1197
+#: ../cli.py:1241
 msgid "show Yum version and exit"
 msgstr "wyświetla wersję yuma i wyłącza"
 
-#: ../cli.py:1198
+#: ../cli.py:1242
 msgid "set install root"
 msgstr "ustawia roota instalacji"
 
-#: ../cli.py:1202
+#: ../cli.py:1246
 msgid "enable one or more repositories (wildcards allowed)"
 msgstr "włącza jedno lub więcej repozytoriów (wieloznaczniki są dozwolone)"
 
-#: ../cli.py:1206
+#: ../cli.py:1250
 msgid "disable one or more repositories (wildcards allowed)"
 msgstr "wyłącza jedno lub więcej repozytoriów (wieloznaczniki są dozwolone)"
 
-#: ../cli.py:1209
+#: ../cli.py:1253
 msgid "exclude package(s) by name or glob"
 msgstr "wyklucza pakiety po nazwie lub wyrażeniu regularnym"
 
-#: ../cli.py:1211
+#: ../cli.py:1255
 msgid "disable exclude from main, for a repo or for everything"
 msgstr "wyłącza wykluczanie z głównego, dla repozytorium lub wszystkiego"
 
-#: ../cli.py:1214
+#: ../cli.py:1258
 msgid "enable obsoletes processing during updates"
 msgstr "włącza przetwarzanie przestarzałych pakietów podczas aktualizacji"
 
-#: ../cli.py:1216
+#: ../cli.py:1260
 msgid "disable Yum plugins"
 msgstr "wyłącza wtyczki yuma"
 
-#: ../cli.py:1218
+#: ../cli.py:1262
 msgid "disable gpg signature checking"
 msgstr "wyłącza sprawdzanie podpisu GPG"
 
-#: ../cli.py:1220
+#: ../cli.py:1264
 msgid "disable plugins by name"
 msgstr "wyłącza wtyczki po nazwie"
 
-#: ../cli.py:1223
+#: ../cli.py:1267
 msgid "enable plugins by name"
 msgstr "włącza wtyczki po nazwie"
 
-#: ../cli.py:1226
+#: ../cli.py:1270
 msgid "skip packages with depsolving problems"
 msgstr "pomija pakiety mające problemy z rozwiązaniem zależności"
 
-#: ../output.py:236
+#: ../cli.py:1272
+msgid "control whether color is used"
+msgstr "kontroluje użycie kolorów"
+
+#: ../output.py:301
 msgid "Jan"
 msgstr "sty"
 
-#: ../output.py:236
+#: ../output.py:301
 msgid "Feb"
 msgstr "lut"
 
-#: ../output.py:236
+#: ../output.py:301
 msgid "Mar"
 msgstr "mar"
 
-#: ../output.py:236
+#: ../output.py:301
 msgid "Apr"
 msgstr "kwi"
 
-#: ../output.py:236
+#: ../output.py:301
 msgid "May"
 msgstr "maj"
 
-#: ../output.py:236
+#: ../output.py:301
 msgid "Jun"
 msgstr "cze"
 
-#: ../output.py:237
+#: ../output.py:302
 msgid "Jul"
 msgstr "lip"
 
-#: ../output.py:237
+#: ../output.py:302
 msgid "Aug"
 msgstr "sie"
 
-#: ../output.py:237
+#: ../output.py:302
 msgid "Sep"
 msgstr "wrz"
 
-#: ../output.py:237
+#: ../output.py:302
 msgid "Oct"
 msgstr "paź"
 
-#: ../output.py:237
+#: ../output.py:302
 msgid "Nov"
 msgstr "lis"
 
-#: ../output.py:237
+#: ../output.py:302
 msgid "Dec"
 msgstr "gru"
 
-#: ../output.py:247
+#: ../output.py:312
 msgid "Trying other mirror."
 msgstr "Próbowanie innego serwera lustrzanego."
 
-#: ../output.py:425
+#: ../output.py:527
 #, python-format
 msgid "Name       : %s%s%s"
 msgstr "Nazwa              : %s%s%s"
 
-#: ../output.py:426
+#: ../output.py:528
 #, python-format
 msgid "Arch       : %s"
 msgstr "Architektura       : %s"
 
-#: ../output.py:428
+#: ../output.py:530
 #, python-format
 msgid "Epoch      : %s"
 msgstr "Epoka              : %s"
 
-#: ../output.py:429
+#: ../output.py:531
 #, python-format
 msgid "Version    : %s"
 msgstr "Wersja             : %s"
 
-#: ../output.py:430
+#: ../output.py:532
 #, python-format
 msgid "Release    : %s"
 msgstr "Wydanie            : %s"
 
-#: ../output.py:431
+#: ../output.py:533
 #, python-format
 msgid "Size       : %s"
 msgstr "Rozmiar            : %s"
 
-#: ../output.py:432
+#: ../output.py:534
 #, python-format
 msgid "Repo       : %s"
 msgstr "Repozytorium       : %s"
 
-#: ../output.py:434
+#: ../output.py:536
 #, python-format
 msgid "Committer  : %s"
 msgstr "Twórca             : %s"
 
-#: ../output.py:435
+#: ../output.py:537
 #, python-format
 msgid "Committime : %s"
 msgstr "Czas wysłania      : %s"
 
-#: ../output.py:436
+#: ../output.py:538
 #, python-format
 msgid "Buildtime  : %s"
 msgstr "Czas zbudowania    : %s"
 
-#: ../output.py:438
+#: ../output.py:540
 #, python-format
 msgid "Installtime: %s"
 msgstr "Czas zainstalowania: %s"
 
-#: ../output.py:439
+#: ../output.py:541
 msgid "Summary    : "
 msgstr "Podsumowanie       : "
 
-#: ../output.py:441
+#: ../output.py:543
 #, python-format
 msgid "URL        : %s"
 msgstr "URL                : %s"
 
-#: ../output.py:442
+#: ../output.py:544
 #, python-format
 msgid "License    : %s"
 msgstr "Licencja           : %s"
 
-#: ../output.py:443
+#: ../output.py:545
 msgid "Description: "
 msgstr "Opis               : "
 
-#: ../output.py:500
+#: ../output.py:609
 msgid "y"
 msgstr "t"
 
-#: ../output.py:500
+#: ../output.py:609
 msgid "yes"
 msgstr "tak"
 
-#: ../output.py:501
+#: ../output.py:610
 msgid "n"
 msgstr "n"
 
-#: ../output.py:501
+#: ../output.py:610
 msgid "no"
 msgstr "nie"
 
-#: ../output.py:505
+#: ../output.py:614
 msgid "Is this ok [y/N]: "
 msgstr "W porzÄ…dku? [t/N]: "
 
-#: ../output.py:587
+#: ../output.py:702
 #, python-format
 msgid ""
 "\n"
@@ -611,119 +627,128 @@ msgstr ""
 "\n"
 "Grupa: %s"
 
-#: ../output.py:594
+#: ../output.py:709
 #, python-format
 msgid " Description: %s"
 msgstr " Opis: %s"
 
-#: ../output.py:596
+#: ../output.py:711
 msgid " Mandatory Packages:"
 msgstr " Pakiety obowiÄ…zkowe:"
 
-#: ../output.py:597
+#: ../output.py:712
 msgid " Default Packages:"
 msgstr " Domyślne pakiety:"
 
-#: ../output.py:598
+#: ../output.py:713
 msgid " Optional Packages:"
 msgstr " Pakiety opcjonalne:"
 
-#: ../output.py:599
+#: ../output.py:714
 msgid " Conditional Packages:"
 msgstr " Pakiety warunkowe:"
 
-#: ../output.py:619
+#: ../output.py:734
 #, python-format
 msgid "package: %s"
 msgstr "pakiet: %s"
 
-#: ../output.py:621
+#: ../output.py:736
 msgid "  No dependencies for this package"
 msgstr "  Brak zależności dla tego pakietu"
 
-#: ../output.py:626
+#: ../output.py:741
 #, python-format
 msgid "  dependency: %s"
 msgstr "  zależność: %s"
 
-#: ../output.py:628
+#: ../output.py:743
 msgid "   Unsatisfied dependency"
 msgstr "   Nierozwiązana zależność"
 
-#: ../output.py:700
+#: ../output.py:818
+#, python-format
+msgid "Repo        : %s"
+msgstr "Repozytorium: %s"
+
+#: ../output.py:819
 msgid "Matched from:"
 msgstr "Dopasowano z:"
 
-#: ../output.py:708
+#: ../output.py:827
 msgid "Description : "
 msgstr "Opis        : "
 
-#: ../output.py:711
+#: ../output.py:830
 #, python-format
 msgid "URL         : %s"
 msgstr "URL         : %s"
 
-#: ../output.py:714
+#: ../output.py:833
 #, python-format
 msgid "License     : %s"
 msgstr "Licencja    : %s"
 
-#: ../output.py:717
+#: ../output.py:836
 #, python-format
 msgid "Filename    : %s"
 msgstr "Nazwa pliku : %s"
 
-#: ../output.py:721
+#: ../output.py:840
 msgid "Other       : "
 msgstr "Inne        : "
 
-#: ../output.py:753
+#: ../output.py:873
 msgid "There was an error calculating total download size"
 msgstr "Wystąpił błąd podczas obliczania całkowitego rozmiaru pobierania"
 
-#: ../output.py:758
+#: ../output.py:878
 #, python-format
 msgid "Total size: %s"
 msgstr "Całkowity rozmiar: %s"
 
-#: ../output.py:761
+#: ../output.py:881
 #, python-format
 msgid "Total download size: %s"
 msgstr "Całkowity rozmiar pobierania: %s"
 
-#: ../output.py:779
+#: ../output.py:916
 msgid "Installing for dependencies"
 msgstr "Instalowanie, aby rozwiązać zależności"
 
-#: ../output.py:780
+#: ../output.py:917
 msgid "Updating for dependencies"
 msgstr "Aktualizowanie, aby rozwiązać zależności"
 
-#: ../output.py:781
+#: ../output.py:918
 msgid "Removing for dependencies"
 msgstr "Usuwanie, aby rozwiązać zależności"
 
-#: ../output.py:817
+#: ../output.py:925 ../output.py:1021
+msgid "Skipped (dependency problems)"
+msgstr "Pominięto (problemy z zależnościami)"
+
+#: ../output.py:946
 msgid "Package"
 msgstr "Pakiet"
 
-#: ../output.py:817
+#: ../output.py:946
 msgid "Arch"
 msgstr "Architektura"
 
-#: ../output.py:818
+#: ../output.py:947
 msgid "Version"
 msgstr "Wersja"
 
-#: ../output.py:818
+#: ../output.py:947
 msgid "Repository"
 msgstr "Repozytorium"
 
-#: ../output.py:819
+#: ../output.py:948
 msgid "Size"
 msgstr "Rozmiar"
 
-#: ../output.py:830
+#: ../output.py:959
 #, python-format
 msgid ""
 "     replacing  %s.%s %s\n"
@@ -732,7 +757,7 @@ msgstr ""
 "     zastępuje  %s.%s %s\n"
 "\n"
 
-#: ../output.py:838
+#: ../output.py:967
 #, python-format
 msgid ""
 "\n"
@@ -749,27 +774,27 @@ msgstr ""
 "Aktualizowanie %5.5s pakietów     \n"
 "Usuwanie       %5.5s pakietów     \n"
 
-#: ../output.py:886
+#: ../output.py:1015
 msgid "Removed"
 msgstr "Usunięto"
 
-#: ../output.py:887
+#: ../output.py:1016
 msgid "Dependency Removed"
 msgstr "Usunięto zależność"
 
-#: ../output.py:889
+#: ../output.py:1018
 msgid "Dependency Installed"
 msgstr "Zainstalowano zależność"
 
-#: ../output.py:891
+#: ../output.py:1020
 msgid "Dependency Updated"
 msgstr "Zaktualizowano zależność"
 
-#: ../output.py:892
+#: ../output.py:1022
 msgid "Replaced"
 msgstr "ZastÄ…piono"
 
-#: ../output.py:965
+#: ../output.py:1095
 #, python-format
 msgid ""
 "\n"
@@ -780,76 +805,76 @@ msgstr ""
 " Obecne pobieranie zostało anulowane, %sprzerwij (Ctrl-C) ponownie%s w ciągu "
 "%s%s%s sekund, aby zakończyć.\n"
 
-#: ../output.py:975
+#: ../output.py:1105
 msgid "user interrupt"
 msgstr "przerwane przez użytkownika"
 
-#: ../output.py:991
+#: ../output.py:1121
 msgid "Total"
 msgstr "Razem"
 
-#: ../output.py:1005
+#: ../output.py:1135
 msgid "installed"
 msgstr "zainstalowany"
 
-#: ../output.py:1006
+#: ../output.py:1136
 msgid "updated"
 msgstr "zaktualizowany"
 
-#: ../output.py:1007
+#: ../output.py:1137
 msgid "obsoleted"
 msgstr "zastÄ…piony"
 
-#: ../output.py:1008
+#: ../output.py:1138
 msgid "erased"
 msgstr "usunięty"
 
-#: ../output.py:1012
+#: ../output.py:1142
 #, python-format
 msgid "---> Package %s.%s %s:%s-%s set to be %s"
 msgstr "---> Pakiet %s.%s %s:%s-%s zostanie %s"
 
-#: ../output.py:1019
+#: ../output.py:1149
 msgid "--> Running transaction check"
 msgstr "--> Wykonywanie sprawdzania transakcji"
 
-#: ../output.py:1024
+#: ../output.py:1154
 msgid "--> Restarting Dependency Resolution with new changes."
 msgstr "--> Ponowne uruchamianie rozwiązywania zależności z nowymi zmianami."
 
-#: ../output.py:1029
+#: ../output.py:1159
 msgid "--> Finished Dependency Resolution"
 msgstr "--> Zakończono rozwiązywanie zależności"
 
-#: ../output.py:1034
+#: ../output.py:1164
 #, python-format
 msgid "--> Processing Dependency: %s for package: %s"
 msgstr "--> Przetwarzanie zależności: %s dla pakietu: %s"
 
-#: ../output.py:1039
+#: ../output.py:1169
 #, python-format
 msgid "--> Unresolved Dependency: %s"
 msgstr "--> Nierozwiązana zależność: %s"
 
-#: ../output.py:1045
+#: ../output.py:1175
 #, python-format
 msgid "--> Processing Conflict: %s conflicts %s"
 msgstr "--> Przetwarzanie konfliktów: %s jest w konflikcie z %s"
 
-#: ../output.py:1048
+#: ../output.py:1178
 msgid "--> Populating transaction set with selected packages. Please wait."
 msgstr "--> Układanie zestawu transakcji z wybranymi pakietami. Proszę czekać."
 
-#: ../output.py:1052
+#: ../output.py:1182
 #, python-format
 msgid "---> Downloading header for %s to pack into transaction set."
 msgstr "---> Pobieranie nagłówka dla %s do umieszczenia w zestawie transakcji."
 
-#: ../yumcommands.py:40
+#: ../yumcommands.py:41
 msgid "You need to be root to perform this command."
 msgstr "Musisz być zalogowany jako root, aby wykonać to polecenie."
 
-#: ../yumcommands.py:47
+#: ../yumcommands.py:48
 msgid ""
 "\n"
 "You have enabled checking of packages via GPG keys. This is a good thing. \n"
@@ -880,306 +905,307 @@ msgstr ""
 "Aby dowiedzieć się więcej, skontaktuj się z dostawcą dystrybucji lub\n"
 "pakietu.\n"
 
-#: ../yumcommands.py:67
+#: ../yumcommands.py:68
 #, python-format
 msgid "Error: Need to pass a list of pkgs to %s"
 msgstr "Błąd: wymagane jest przekazanie listy pakietów do %s"
 
-#: ../yumcommands.py:73
+#: ../yumcommands.py:74
 msgid "Error: Need an item to match"
 msgstr "BÅ‚Ä…d: wymagany jest parametr do dopasowania"
 
-#: ../yumcommands.py:79
+#: ../yumcommands.py:80
 msgid "Error: Need a group or list of groups"
 msgstr "BÅ‚Ä…d: wymagana jest grupa lub lista grup"
 
-#: ../yumcommands.py:88
+#: ../yumcommands.py:89
 #, python-format
 msgid "Error: clean requires an option: %s"
 msgstr "BÅ‚Ä…d: czyszczenie wymaga opcji: %s"
 
-#: ../yumcommands.py:93
+#: ../yumcommands.py:94
 #, python-format
 msgid "Error: invalid clean argument: %r"
 msgstr "Błąd: nieprawidłowy parametr czyszczenia: %r"
 
-#: ../yumcommands.py:106
+#: ../yumcommands.py:107
 msgid "No argument to shell"
 msgstr "Brak parametrów dla powłoki"
 
-#: ../yumcommands.py:109
+#: ../yumcommands.py:110
 #, python-format
 msgid "Filename passed to shell: %s"
 msgstr "Przekazano nazwę pliku do powłoki: %s"
 
-#: ../yumcommands.py:113
+#: ../yumcommands.py:114
 #, python-format
 msgid "File %s given as argument to shell does not exist."
 msgstr "Plik %s podany powłoce jako parametr nie istnieje."
 
-#: ../yumcommands.py:119
+#: ../yumcommands.py:120
 msgid "Error: more than one file given as argument to shell."
 msgstr "Błąd: podano powłoce więcej niż jeden plik jako parametr."
 
-#: ../yumcommands.py:160
+#: ../yumcommands.py:161
 msgid "PACKAGE..."
 msgstr "PAKIET..."
 
-#: ../yumcommands.py:163
+#: ../yumcommands.py:164
 msgid "Install a package or packages on your system"
 msgstr "Zainstaluj pakiet lub pakiety w systemie"
 
-#: ../yumcommands.py:172
+#: ../yumcommands.py:173
 msgid "Setting up Install Process"
 msgstr "Ustawianie procesu instalacji"
 
-#: ../yumcommands.py:183
+#: ../yumcommands.py:184
 msgid "[PACKAGE...]"
 msgstr "[PAKIET...]"
 
-#: ../yumcommands.py:186
+#: ../yumcommands.py:187
 msgid "Update a package or packages on your system"
 msgstr "Zaktualizuj pakiet lub pakiety w systemie"
 
-#: ../yumcommands.py:194
+#: ../yumcommands.py:195
 msgid "Setting up Update Process"
 msgstr "Ustawianie procesu aktualizacji"
 
-#: ../yumcommands.py:236
+#: ../yumcommands.py:237
 msgid "Display details about a package or group of packages"
 msgstr "Wyświetl szczegóły o pakiecie lub grupie pakietów"
 
-#. Output the packages:
-#: ../yumcommands.py:261
+#: ../yumcommands.py:278
 msgid "Installed Packages"
 msgstr "Zainstalowane pakiety"
 
-#: ../yumcommands.py:263
+#: ../yumcommands.py:285
 msgid "Available Packages"
 msgstr "Dostępne pakiety"
 
-#: ../yumcommands.py:265
+#: ../yumcommands.py:289
 msgid "Extra Packages"
 msgstr "Dodatkowe pakiety"
 
-#: ../yumcommands.py:267
+#: ../yumcommands.py:291
 msgid "Updated Packages"
 msgstr "Zaktualizowane pakiety"
 
-#: ../yumcommands.py:274 ../yumcommands.py:281
+#: ../yumcommands.py:298 ../yumcommands.py:305 ../yumcommands.py:574
 msgid "Obsoleting Packages"
 msgstr "Zastępowanie przestarzałych pakietów"
 
-#: ../yumcommands.py:283
+#: ../yumcommands.py:307
 msgid "Recently Added Packages"
 msgstr "Ostatnio dodane pakiety"
 
-#: ../yumcommands.py:290
+#: ../yumcommands.py:314
 msgid "No matching Packages to list"
 msgstr "Brak pakietów pasujących do listy"
 
-#: ../yumcommands.py:304
+#: ../yumcommands.py:328
 msgid "List a package or groups of packages"
 msgstr "Wyświetl listę pakietów lub grup pakietów"
 
-#: ../yumcommands.py:316
+#: ../yumcommands.py:340
 msgid "Remove a package or packages from your system"
 msgstr "Usuń pakiet lub pakiety z systemu"
 
-#: ../yumcommands.py:324
+#: ../yumcommands.py:348
 msgid "Setting up Remove Process"
 msgstr "Ustawianie procesu usuwania"
 
-#: ../yumcommands.py:339
+#: ../yumcommands.py:363
 msgid "Setting up Group Process"
 msgstr "Ustawianie procesu grup"
 
-#: ../yumcommands.py:345
+#: ../yumcommands.py:369
 msgid "No Groups on which to run command"
 msgstr "Brak grup, na których można wykonać polecenie"
 
-#: ../yumcommands.py:358
+#: ../yumcommands.py:382
 msgid "List available package groups"
 msgstr "Wyświetl listę dostępnych grup pakietów"
 
-#: ../yumcommands.py:375
+#: ../yumcommands.py:399
 msgid "Install the packages in a group on your system"
 msgstr "Zainstaluj pakiety z grupy w systemie"
 
-#: ../yumcommands.py:397
+#: ../yumcommands.py:421
 msgid "Remove the packages in a group from your system"
 msgstr "Usuń pakiety z grupy z systemu"
 
-#: ../yumcommands.py:424
+#: ../yumcommands.py:448
 msgid "Display details about a package group"
 msgstr "Wyświetl szczegóły o grupie pakietów"
 
-#: ../yumcommands.py:448
+#: ../yumcommands.py:472
 msgid "Generate the metadata cache"
 msgstr "Utwórz pamięć podręczną metadanych"
 
-#: ../yumcommands.py:454
+#: ../yumcommands.py:478
 msgid "Making cache files for all metadata files."
 msgstr "Tworzenie plików pamięci podręcznej ze wszystkich plików metadanych."
 
-#: ../yumcommands.py:455
+#: ../yumcommands.py:479
 msgid "This may take a while depending on the speed of this computer"
 msgstr "Może to chwilę zająć, z zależności od szybkości komputera"
 
-#: ../yumcommands.py:476
+#: ../yumcommands.py:500
 msgid "Metadata Cache Created"
 msgstr "Utworzono pamięć podręczną metadanych"
 
-#: ../yumcommands.py:490
+#: ../yumcommands.py:514
 msgid "Remove cached data"
 msgstr "Usunięto dane z pamięci podręcznej"
 
-#: ../yumcommands.py:511
+#: ../yumcommands.py:535
 msgid "Find what package provides the given value"
 msgstr "Znajdź pakiet dostarczający podaną wartość"
 
-#: ../yumcommands.py:531
+#: ../yumcommands.py:555
 msgid "Check for available package updates"
 msgstr "Sprawdź dostępne aktualizacje pakietów"
 
-#: ../yumcommands.py:556
+#: ../yumcommands.py:594
 msgid "Search package details for the given string"
 msgstr "Znajdź szczegóły pakietów dla podanego łańcucha tekstowego"
 
-#: ../yumcommands.py:562
+#: ../yumcommands.py:600
 msgid "Searching Packages: "
 msgstr "Wyszukiwanie pakietów: "
 
-#: ../yumcommands.py:579
+#: ../yumcommands.py:617
 msgid "Update packages taking obsoletes into account"
 msgstr "Zaktualizuj pakiety, w tym przestarzałe"
 
-#: ../yumcommands.py:588
+#: ../yumcommands.py:626
 msgid "Setting up Upgrade Process"
 msgstr "Ustawianie procesu aktualizacji"
 
-#: ../yumcommands.py:602
+#: ../yumcommands.py:640
 msgid "Install a local RPM"
 msgstr "Zainstaluj lokalny pakiet RPM"
 
-#: ../yumcommands.py:611
+#: ../yumcommands.py:649
 msgid "Setting up Local Package Process"
 msgstr "Ustawianie procesu lokalnego pakietu"
 
-#: ../yumcommands.py:630
+#: ../yumcommands.py:668
 msgid "Determine which package provides the given dependency"
 msgstr "Określ, który pakiet dostarcza podaną zależność"
 
-#: ../yumcommands.py:633
+#: ../yumcommands.py:671
 msgid "Searching Packages for Dependency:"
 msgstr "Wyszukiwanie pakietów dla zależności:"
 
-#: ../yumcommands.py:647
+#: ../yumcommands.py:685
 msgid "Run an interactive yum shell"
 msgstr "Uruchom interaktywną powłokę yuma"
 
-#: ../yumcommands.py:653
+#: ../yumcommands.py:691
 msgid "Setting up Yum Shell"
 msgstr "Ustawianie powłoki yuma"
 
-#: ../yumcommands.py:671
+#: ../yumcommands.py:709
 msgid "List a package's dependencies"
 msgstr "Wyświetl listę zależności pakietu"
 
-#: ../yumcommands.py:677
+#: ../yumcommands.py:715
 msgid "Finding dependencies: "
 msgstr "Wyszukiwanie zależności: "
 
-#: ../yumcommands.py:693
+#: ../yumcommands.py:731
 msgid "Display the configured software repositories"
 msgstr "Wyświetl skonfigurowane repozytoria oprogramowania"
 
-#: ../yumcommands.py:742
+#: ../yumcommands.py:779 ../yumcommands.py:780
 msgid "enabled"
 msgstr "włączone"
 
-#: ../yumcommands.py:751
+#: ../yumcommands.py:788 ../yumcommands.py:789
 msgid "disabled"
 msgstr "wyłączone"
 
-#: ../yumcommands.py:760
-msgid "repo id"
-msgstr "ID repozytorium"
-
-#: ../yumcommands.py:761
-msgid "repo name"
-msgstr "nazwa repozytorium"
-
-#: ../yumcommands.py:761
-msgid "status"
-msgstr "stan"
-
-#: ../yumcommands.py:765
+#: ../yumcommands.py:800
 msgid "Repo-id     : "
 msgstr "Identyfikator repozytorium        : "
 
-#: ../yumcommands.py:766
+#: ../yumcommands.py:801
 msgid "Repo-name   : "
 msgstr "Nazwa repozytorium                : "
 
-#: ../yumcommands.py:767
+#: ../yumcommands.py:802
 msgid "Repo-status : "
 msgstr "Stan repozytorium                 : "
 
-#: ../yumcommands.py:769
+#: ../yumcommands.py:804
 msgid "Repo-revision: "
 msgstr "Wersja repozytorium               : "
 
-#: ../yumcommands.py:773
+#: ../yumcommands.py:808
 msgid "Repo-tags   : "
 msgstr "Znaczniki repozytorium            : "
 
-#: ../yumcommands.py:779
+#: ../yumcommands.py:814
 msgid "Repo-distro-tags: "
 msgstr "Znaczniki dystrybucji repozytorium: "
 
-#: ../yumcommands.py:784
+#: ../yumcommands.py:819
 msgid "Repo-updated: "
 msgstr "Aktualizacje repozytorium         : "
 
-#: ../yumcommands.py:786
+#: ../yumcommands.py:821
 msgid "Repo-pkgs   : "
 msgstr "Pakiety repozytorium              : "
 
-#: ../yumcommands.py:787
+#: ../yumcommands.py:822
 msgid "Repo-size   : "
 msgstr "Rozmiar repozytorium              : "
 
-#: ../yumcommands.py:794
+#: ../yumcommands.py:829
 msgid "Repo-baseurl: "
 msgstr "Podstawowy URL repozytorium       : "
 
-#: ../yumcommands.py:798
+#: ../yumcommands.py:833
 msgid "Repo-metalink: "
 msgstr "Metaodnośnik repozytorium         : "
 
-#: ../yumcommands.py:801
+#: ../yumcommands.py:836
 msgid "Repo-mirrors: "
 msgstr "Serwery lustrzane repozytorium    : "
 
-#: ../yumcommands.py:805
+#: ../yumcommands.py:840
 msgid "Repo-exclude: "
 msgstr "Wykluczenia z repozytorium        : "
 
-#: ../yumcommands.py:809
+#: ../yumcommands.py:844
 msgid "Repo-include: "
 msgstr "Dołączone z repozytorium          : "
 
-#: ../yumcommands.py:835
+#. Work out the first (id) and last (enabled/disalbed/count),
+#. then chop the middle (name)...
+#: ../yumcommands.py:854 ../yumcommands.py:880
+msgid "repo id"
+msgstr "ID repozytorium"
+
+#: ../yumcommands.py:868 ../yumcommands.py:869 ../yumcommands.py:883
+msgid "status"
+msgstr "stan"
+
+#: ../yumcommands.py:881
+msgid "repo name"
+msgstr "nazwa repozytorium"
+
+#: ../yumcommands.py:907
 msgid "Display a helpful usage message"
 msgstr "Wyświetl pomocny komunikat o używaniu"
 
-#: ../yumcommands.py:869
+#: ../yumcommands.py:941
 #, python-format
 msgid "No help available for %s"
 msgstr "Brak pomocy dla %s"
 
-#: ../yumcommands.py:874
+#: ../yumcommands.py:946
 msgid ""
 "\n"
 "\n"
@@ -1189,7 +1215,7 @@ msgstr ""
 "\n"
 "aliasy: "
 
-#: ../yumcommands.py:876
+#: ../yumcommands.py:948
 msgid ""
 "\n"
 "\n"
@@ -1199,11 +1225,11 @@ msgstr ""
 "\n"
 "alias: "
 
-#: ../yumcommands.py:905
+#: ../yumcommands.py:977
 msgid "Setting up Reinstall Process"
 msgstr "Ustawianie procesu ponownej instalacji"
 
-#: ../yumcommands.py:919
+#: ../yumcommands.py:991
 msgid "reinstall a package"
 msgstr "ponownie zainstaluj pakiet"
 
@@ -1273,196 +1299,196 @@ msgstr ""
 msgid "doTsSetup() will go away in a future version of Yum.\n"
 msgstr "doTsSetup() zostanie usunięte w przyszłych wersjach yuma.\n"
 
-#: ../yum/depsolve.py:97
+#: ../yum/depsolve.py:99
 msgid "Setting up TransactionSets before config class is up"
 msgstr "Ustawianie zestawów transakcji przed włączeniem klasy konfiguracji"
 
-#: ../yum/depsolve.py:148
+#: ../yum/depsolve.py:150
 #, python-format
 msgid "Invalid tsflag in config file: %s"
 msgstr "Nieprawidłowa flaga zestawu transakcji tsflag w pliku konfiguracji: %s"
 
-#: ../yum/depsolve.py:159
+#: ../yum/depsolve.py:161
 #, python-format
 msgid "Searching pkgSack for dep: %s"
 msgstr "Wyszukiwanie zestawu pakietów dla zależności: %s"
 
-#: ../yum/depsolve.py:182
+#: ../yum/depsolve.py:184
 #, python-format
 msgid "Potential match for %s from %s"
 msgstr "Potencjalny wynik dla %s z %s"
 
-#: ../yum/depsolve.py:190
+#: ../yum/depsolve.py:192
 #, python-format
 msgid "Matched %s to require for %s"
 msgstr "%s pasuje jako wymaganie dla %s"
 
-#: ../yum/depsolve.py:231
+#: ../yum/depsolve.py:233
 #, python-format
 msgid "Member: %s"
 msgstr "Członek: %s"
 
-#: ../yum/depsolve.py:245 ../yum/depsolve.py:732
+#: ../yum/depsolve.py:247 ../yum/depsolve.py:733
 #, python-format
 msgid "%s converted to install"
 msgstr "%s przekonwertowano do zainstalowania"
 
-#: ../yum/depsolve.py:252
+#: ../yum/depsolve.py:254
 #, python-format
 msgid "Adding Package %s in mode %s"
 msgstr "Dodawanie pakietu %s w trybie %s"
 
-#: ../yum/depsolve.py:262
+#: ../yum/depsolve.py:264
 #, python-format
 msgid "Removing Package %s"
 msgstr "Usuwanie pakietu %s"
 
-#: ../yum/depsolve.py:273
+#: ../yum/depsolve.py:275
 #, python-format
 msgid "%s requires: %s"
 msgstr "%s wymaga: %s"
 
-#: ../yum/depsolve.py:331
+#: ../yum/depsolve.py:333
 msgid "Needed Require has already been looked up, cheating"
 msgstr "Wymagana zależność została już znaleziona, oszukiwanie"
 
-#: ../yum/depsolve.py:341
+#: ../yum/depsolve.py:343
 #, python-format
 msgid "Needed Require is not a package name. Looking up: %s"
 msgstr "Wymagana zależność nie jest nazwą pakietu. Wyszukiwanie: %s"
 
-#: ../yum/depsolve.py:348
+#: ../yum/depsolve.py:350
 #, python-format
 msgid "Potential Provider: %s"
 msgstr "Potencjalny dostawca: %s"
 
-#: ../yum/depsolve.py:371
+#: ../yum/depsolve.py:373
 #, python-format
 msgid "Mode is %s for provider of %s: %s"
 msgstr "Tryb to %s dla dostawcy %s: %s"
 
-#: ../yum/depsolve.py:375
+#: ../yum/depsolve.py:377
 #, python-format
 msgid "Mode for pkg providing %s: %s"
 msgstr "Tryb dla pakietu dostarczajÄ…cego %s: %s"
 
-#: ../yum/depsolve.py:379
+#: ../yum/depsolve.py:381
 #, python-format
 msgid "TSINFO: %s package requiring %s marked as erase"
 msgstr "TSINFO: pakiet %s wymagający %s został oznaczony jako do usunięcia"
 
-#: ../yum/depsolve.py:391
+#: ../yum/depsolve.py:393
 #, python-format
 msgid "TSINFO: Obsoleting %s with %s to resolve dep."
 msgstr ""
 "TSINFO: zastępowanie przestarzałego pakietu %s pakietem %s, aby rozwiązać "
 "zależność."
 
-#: ../yum/depsolve.py:394
+#: ../yum/depsolve.py:396
 #, python-format
 msgid "TSINFO: Updating %s to resolve dep."
 msgstr "TSINFO: aktualizowanie %s, aby rozwiązać zależność."
 
-#: ../yum/depsolve.py:402
+#: ../yum/depsolve.py:404
 #, python-format
 msgid "Cannot find an update path for dep for: %s"
 msgstr "Nie można znaleźć ścieżki aktualizacji dla zależności dla: %s"
 
-#: ../yum/depsolve.py:412
+#: ../yum/depsolve.py:414
 #, python-format
 msgid "Unresolvable requirement %s for %s"
 msgstr "Nie można rozwiązać wymagania %s dla %s"
 
-#: ../yum/depsolve.py:435
+#: ../yum/depsolve.py:437
 #, python-format
 msgid "Quick matched %s to require for %s"
 msgstr "Szybko dopasowano %s jako wymaganie %s"
 
 #. is it already installed?
-#: ../yum/depsolve.py:477
+#: ../yum/depsolve.py:479
 #, python-format
 msgid "%s is in providing packages but it is already installed, removing."
 msgstr ""
 "%s jest w dostarczających pakietach, ale jest już zainstalowany, usuwanie."
 
-#: ../yum/depsolve.py:492
+#: ../yum/depsolve.py:494
 #, python-format
 msgid "Potential resolving package %s has newer instance in ts."
 msgstr ""
 "Pakiet %s potencjalnie rozwiÄ…zujÄ…cy ma nowszÄ… wersjÄ™ w zestawie transakcji."
 
-#: ../yum/depsolve.py:503
+#: ../yum/depsolve.py:505
 #, python-format
 msgid "Potential resolving package %s has newer instance installed."
 msgstr "Pakiet %s potencjalnie rozwiÄ…zujÄ…cy ma zainstalowanÄ… nowszÄ… wersjÄ™."
 
-#: ../yum/depsolve.py:511 ../yum/depsolve.py:560
+#: ../yum/depsolve.py:513 ../yum/depsolve.py:562
 #, python-format
 msgid "Missing Dependency: %s is needed by package %s"
 msgstr "Brakująca zależność: %s jest wymagane przez pakiet %s"
 
-#: ../yum/depsolve.py:524
+#: ../yum/depsolve.py:526
 #, python-format
 msgid "%s already in ts, skipping this one"
 msgstr "%s jest już w zestawie transakcji, pomijanie"
 
-#: ../yum/depsolve.py:570
+#: ../yum/depsolve.py:572
 #, python-format
 msgid "TSINFO: Marking %s as update for %s"
 msgstr "TSINFO: oznaczanie %s jako aktualizacji dla %s"
 
-#: ../yum/depsolve.py:578
+#: ../yum/depsolve.py:580
 #, python-format
 msgid "TSINFO: Marking %s as install for %s"
 msgstr "TSINFO: oznaczanie %s jako do zainstalowania dla %s"
 
-#: ../yum/depsolve.py:670 ../yum/depsolve.py:750
+#: ../yum/depsolve.py:672 ../yum/depsolve.py:751
 msgid "Success - empty transaction"
 msgstr "Powodzenie - pusta transakcja"
 
-#: ../yum/depsolve.py:709 ../yum/depsolve.py:722
+#: ../yum/depsolve.py:710 ../yum/depsolve.py:723
 msgid "Restarting Loop"
 msgstr "Ponowne uruchamianie pętli"
 
-#: ../yum/depsolve.py:738
+#: ../yum/depsolve.py:739
 msgid "Dependency Process ending"
 msgstr "Kończenie procesu zależności"
 
-#: ../yum/depsolve.py:744
+#: ../yum/depsolve.py:745
 #, python-format
 msgid "%s from %s has depsolving problems"
 msgstr "%s z %s ma problemy z rozwiązywaniem zależności"
 
-#: ../yum/depsolve.py:751
+#: ../yum/depsolve.py:752
 msgid "Success - deps resolved"
 msgstr "Powodzenie - rozwiązano zależności"
 
-#: ../yum/depsolve.py:765
+#: ../yum/depsolve.py:766
 #, python-format
 msgid "Checking deps for %s"
 msgstr "Sprawdzanie zależności dla %s"
 
-#: ../yum/depsolve.py:848
+#: ../yum/depsolve.py:849
 #, python-format
 msgid "looking for %s as a requirement of %s"
 msgstr "wyszukiwanie %s jako wymagania %s"
 
-#: ../yum/depsolve.py:988
+#: ../yum/depsolve.py:989
 #, python-format
 msgid "Running compare_providers() for %s"
 msgstr "Wykonywanie compare_providers() dla %s"
 
-#: ../yum/depsolve.py:1016 ../yum/depsolve.py:1022
+#: ../yum/depsolve.py:1017 ../yum/depsolve.py:1023
 #, python-format
 msgid "better arch in po %s"
 msgstr "lepsze arch w po %s"
 
-#: ../yum/depsolve.py:1061
+#: ../yum/depsolve.py:1062
 #, python-format
 msgid "%s obsoletes %s"
 msgstr "%s zastępuje %s"
 
-#: ../yum/depsolve.py:1077
+#: ../yum/depsolve.py:1078
 #, python-format
 msgid ""
 "archdist compared %s to %s on %s\n"
@@ -1471,98 +1497,99 @@ msgstr ""
 "archdist porównało %s do %s na %s\n"
 "  Zwycięzca: %s"
 
-#: ../yum/depsolve.py:1084
+#: ../yum/depsolve.py:1085
 #, python-format
 msgid "common sourcerpm %s and %s"
-msgstr "wspólny RPM źródłowy %s i %s"
+msgstr "wspólny źródłowy pakiet RPM %s i %s"
 
-#: ../yum/depsolve.py:1090
+#: ../yum/depsolve.py:1091
 #, python-format
 msgid "common prefix of %s between %s and %s"
 msgstr "wspólny przedrostek %s dla %s i %s"
 
-#: ../yum/depsolve.py:1098
+#: ../yum/depsolve.py:1099
 #, python-format
 msgid "Best Order: %s"
 msgstr "Najlepszy porzÄ…dek: %s"
 
-#: ../yum/__init__.py:134
+#: ../yum/__init__.py:154
 msgid "doConfigSetup() will go away in a future version of Yum.\n"
 msgstr "doConfigSetup() zostanie usunięte w przyszłych wersjach yuma.\n"
 
-#: ../yum/__init__.py:314
+#. FIXME: Use critical? or exception?
+#: ../yum/__init__.py:335
 #, python-format
 msgid "Repository %r is missing name in configuration, using id"
 msgstr "Repozytorium %r nie posiada nazwy w konfiguracji, używanie ID"
 
-#: ../yum/__init__.py:352
+#: ../yum/__init__.py:373
 msgid "plugins already initialised"
 msgstr "wtyczki zostały już zainicjowane"
 
-#: ../yum/__init__.py:359
+#: ../yum/__init__.py:380
 msgid "doRpmDBSetup() will go away in a future version of Yum.\n"
 msgstr "doRpmDBSetup() zostanie usunięte w przyszłych wersjach yuma.\n"
 
-#: ../yum/__init__.py:369
+#: ../yum/__init__.py:390
 msgid "Reading Local RPMDB"
 msgstr "Odczytywanie lokalnej bazy danych RPM"
 
-#: ../yum/__init__.py:387
+#: ../yum/__init__.py:408
 msgid "doRepoSetup() will go away in a future version of Yum.\n"
 msgstr "doRepoSetup() zostanie usunięte w przyszłych wersjach yuma.\n"
 
-#: ../yum/__init__.py:407
+#: ../yum/__init__.py:428
 msgid "doSackSetup() will go away in a future version of Yum.\n"
 msgstr "doSackSetup() zostanie usunięte w przyszłych wersjach yuma.\n"
 
-#: ../yum/__init__.py:424
+#: ../yum/__init__.py:445
 msgid "Setting up Package Sacks"
 msgstr "Ustawianie zestawów pakietów"
 
-#: ../yum/__init__.py:467
+#: ../yum/__init__.py:488
 #, python-format
 msgid "repo object for repo %s lacks a _resetSack method\n"
 msgstr "obiekt repozytorium %s nie posiada metody _resetSack\n"
 
-#: ../yum/__init__.py:468
+#: ../yum/__init__.py:489
 msgid "therefore this repo cannot be reset.\n"
 msgstr "więc to repozytorium nie może zostać przywrócone.\n"
 
-#: ../yum/__init__.py:473
+#: ../yum/__init__.py:494
 msgid "doUpdateSetup() will go away in a future version of Yum.\n"
 msgstr "doUpdateSetup() zostanie usunięte w przyszłych wersjach yuma.\n"
 
-#: ../yum/__init__.py:485
+#: ../yum/__init__.py:506
 msgid "Building updates object"
 msgstr "Budowanie obiektu aktualizacji"
 
-#: ../yum/__init__.py:516
+#: ../yum/__init__.py:537
 msgid "doGroupSetup() will go away in a future version of Yum.\n"
 msgstr "doGroupSetup() zostanie usunięte w przyszłych wersjach yuma.\n"
 
-#: ../yum/__init__.py:540
+#: ../yum/__init__.py:561
 msgid "Getting group metadata"
 msgstr "Pobieranie metadanych grup"
 
-#: ../yum/__init__.py:566
+#: ../yum/__init__.py:586
 #, python-format
 msgid "Adding group file from repository: %s"
 msgstr "Dodawanie pliku grup z repozytorium: %s"
 
-#: ../yum/__init__.py:575
+#: ../yum/__init__.py:591
 #, python-format
 msgid "Failed to add groups file for repository: %s - %s"
 msgstr "Dodanie pliku grup dla repozytorium nie powiodło się: %s - %s"
 
-#: ../yum/__init__.py:581
+#: ../yum/__init__.py:597
 msgid "No Groups Available in any repository"
 msgstr "Brak dostępnych grup we wszystkich repozytoriach"
 
-#: ../yum/__init__.py:631
+#: ../yum/__init__.py:647
 msgid "Importing additional filelist information"
 msgstr "Importowanie dodatkowych informacji o liście plików"
 
-#: ../yum/__init__.py:640
+#: ../yum/__init__.py:655
 msgid ""
 "There are unfinished transactions remaining. You might consider running yum-"
 "complete-transaction first to finish them."
@@ -1570,17 +1597,17 @@ msgstr ""
 "Pozostały niezakończone transakcje. Rozważ wykonanie yum-complete-"
 "transaction, aby najpierw je zakończyć."
 
-#: ../yum/__init__.py:690
+#: ../yum/__init__.py:721
 #, python-format
 msgid "Skip-broken round %i"
 msgstr "Pierwsza runda pomijania uszkodzonych %i"
 
-#: ../yum/__init__.py:713
+#: ../yum/__init__.py:770
 #, python-format
 msgid "Skip-broken took %i rounds "
 msgstr "Pomijanie uszkodzonych zajęło %i rund "
 
-#: ../yum/__init__.py:714
+#: ../yum/__init__.py:771
 msgid ""
 "\n"
 "Packages skipped because of dependency problems:"
@@ -1588,92 +1615,92 @@ msgstr ""
 "\n"
 "Pakiety pominięto z powodu problemów z zależnościami:"
 
-#: ../yum/__init__.py:718
+#: ../yum/__init__.py:775
 #, python-format
 msgid "    %s from %s"
 msgstr "    %s z %s"
 
-#: ../yum/__init__.py:803
+#: ../yum/__init__.py:918
 msgid ""
 "Warning: scriptlet or other non-fatal errors occurred during transaction."
 msgstr ""
 "Ostrzeżenie: podczas transakcji wystąpił skrypt lub inne nie fatalne błędy."
 
-#: ../yum/__init__.py:819
+#: ../yum/__init__.py:934
 #, python-format
 msgid "Failed to remove transaction file %s"
 msgstr "Usunięcie pliku transakcji %s nie powiodło się"
 
-#: ../yum/__init__.py:860
+#: ../yum/__init__.py:975
 #, python-format
 msgid "excluding for cost: %s from %s"
 msgstr "wykluczanie z kosztów: %s z %s"
 
-#: ../yum/__init__.py:891
+#: ../yum/__init__.py:1006
 msgid "Excluding Packages in global exclude list"
 msgstr "Wykluczanie pakietów na globalnej liście wykluczonych pakietów"
 
-#: ../yum/__init__.py:893
+#: ../yum/__init__.py:1008
 #, python-format
 msgid "Excluding Packages from %s"
 msgstr "Wykluczanie pakietów z %s"
 
-#: ../yum/__init__.py:920
+#: ../yum/__init__.py:1033
 #, python-format
 msgid "Reducing %s to included packages only"
 msgstr "Zmniejszanie %s tylko do dołączonych pakietów"
 
-#: ../yum/__init__.py:926
+#: ../yum/__init__.py:1039
 #, python-format
 msgid "Keeping included package %s"
 msgstr "Utrzymywanie dołączonego pakietu %s"
 
-#: ../yum/__init__.py:932
+#: ../yum/__init__.py:1045
 #, python-format
 msgid "Removing unmatched package %s"
 msgstr "Usuwanie niepasujÄ…cego pakietu %s"
 
-#: ../yum/__init__.py:935
+#: ../yum/__init__.py:1048
 msgid "Finished"
 msgstr "Zakończono"
 
 #. Whoa. What the heck happened?
-#: ../yum/__init__.py:965
+#: ../yum/__init__.py:1078
 #, python-format
 msgid "Unable to check if PID %s is active"
 msgstr "Nie można sprawdzić, czy PID %s jest aktywny"
 
 #. Another copy seems to be running.
-#: ../yum/__init__.py:969
+#: ../yum/__init__.py:1082
 #, python-format
 msgid "Existing lock %s: another copy is running as pid %s."
 msgstr "Istnieje blokada %s: inna kopia jest uruchomiona jako PID %s."
 
-#: ../yum/__init__.py:1040
+#: ../yum/__init__.py:1153
 msgid "Package does not match intended download"
 msgstr "Pakiet nie zgadza siÄ™ z zamierzonym pobieraniem"
 
-#: ../yum/__init__.py:1055
+#: ../yum/__init__.py:1168
 msgid "Could not perform checksum"
 msgstr "Nie można wykonać sprawdzenia sum kontrolnych"
 
-#: ../yum/__init__.py:1058
+#: ../yum/__init__.py:1171
 msgid "Package does not match checksum"
 msgstr "Sumy kontrolne pakietu nie zgadzajÄ… siÄ™"
 
-#: ../yum/__init__.py:1101
+#: ../yum/__init__.py:1214
 #, python-format
 msgid "package fails checksum but caching is enabled for %s"
 msgstr ""
 "sprawdzenie sum kontrolnych pakietu nie powiodło się, ale zapisywanie w "
 "pamięci podręcznej dla %s jest włączone"
 
-#: ../yum/__init__.py:1104
+#: ../yum/__init__.py:1217 ../yum/__init__.py:1245
 #, python-format
 msgid "using local copy of %s"
 msgstr "używanie lokalnej kopii %s"
 
-#: ../yum/__init__.py:1131
+#: ../yum/__init__.py:1259
 #, python-format
 msgid ""
 "Insufficient space in download directory %s\n"
@@ -1684,11 +1711,11 @@ msgstr ""
 "    * wolne   %s\n"
 "    * wymagane %s"
 
-#: ../yum/__init__.py:1178
+#: ../yum/__init__.py:1306
 msgid "Header is not complete."
 msgstr "Nagłówek nie jest kompletny."
 
-#: ../yum/__init__.py:1218
+#: ../yum/__init__.py:1346
 #, python-format
 msgid ""
 "Header not in local cache and caching-only mode enabled. Cannot download %s"
@@ -1696,62 +1723,62 @@ msgstr ""
 "Nagłówek nie jest w lokalnej pamięci podręcznej, a tryb używania tylko "
 "pamięci podręcznej jest włączony. Nie można pobrać %s"
 
-#: ../yum/__init__.py:1273
+#: ../yum/__init__.py:1401
 #, python-format
 msgid "Public key for %s is not installed"
 msgstr "Klucz publiczny dla %s nie jest zainstalowany"
 
-#: ../yum/__init__.py:1277
+#: ../yum/__init__.py:1405
 #, python-format
 msgid "Problem opening package %s"
 msgstr "Podczas otwierania pakietu %s wystąpił problem"
 
-#: ../yum/__init__.py:1285
+#: ../yum/__init__.py:1413
 #, python-format
 msgid "Public key for %s is not trusted"
 msgstr "Klucz publiczny dla %s nie jest zaufany"
 
-#: ../yum/__init__.py:1289
+#: ../yum/__init__.py:1417
 #, python-format
 msgid "Package %s is not signed"
 msgstr "Pakiet %s nie jest podpisany"
 
-#: ../yum/__init__.py:1327
+#: ../yum/__init__.py:1455
 #, python-format
 msgid "Cannot remove %s"
 msgstr "Nie można usunąć %s"
 
-#: ../yum/__init__.py:1331
+#: ../yum/__init__.py:1458
 #, python-format
 msgid "%s removed"
 msgstr "Usunięto %s"
 
-#: ../yum/__init__.py:1368
+#: ../yum/__init__.py:1495
 #, python-format
 msgid "Cannot remove %s file %s"
 msgstr "Nie można usunąć %s pliku %s"
 
-#: ../yum/__init__.py:1372
+#: ../yum/__init__.py:1498
 #, python-format
 msgid "%s file %s removed"
 msgstr "Usunięto %s plik %s"
 
-#: ../yum/__init__.py:1374
+#: ../yum/__init__.py:1500
 #, python-format
 msgid "%d %s files removed"
 msgstr "Usunięto %d %s plików"
 
-#: ../yum/__init__.py:1436
+#: ../yum/__init__.py:1568
 #, python-format
 msgid "More than one identical match in sack for %s"
 msgstr "Więcej niż jeden identyczny wynik znajduje się w zestawie dla %s"
 
-#: ../yum/__init__.py:1442
+#: ../yum/__init__.py:1573
 #, python-format
 msgid "Nothing matches %s.%s %s:%s-%s from update"
 msgstr "Nic nie pasuje do %s.%s %s:%s-%s z aktualizacji"
 
-#: ../yum/__init__.py:1650
+#: ../yum/__init__.py:1792
 msgid ""
 "searchPackages() will go away in a future version of "
 "Yum.                      Use searchGenerator() instead. \n"
@@ -1759,175 +1786,175 @@ msgstr ""
 "searchPackages()  zostanie usunięte w przyszłych wersjach "
 "yuma.                      Zamiast tego użyj searchGenerator(). \n"
 
-#: ../yum/__init__.py:1688
+#: ../yum/__init__.py:1829
 #, python-format
 msgid "Searching %d packages"
 msgstr "Wyszukiwanie %d pakietów"
 
-#: ../yum/__init__.py:1692
+#: ../yum/__init__.py:1832
 #, python-format
 msgid "searching package %s"
 msgstr "wyszukiwanie pakietu %s"
 
-#: ../yum/__init__.py:1704
+#: ../yum/__init__.py:1843
 msgid "searching in file entries"
 msgstr "wyszukiwanie we wpisach plików"
 
-#: ../yum/__init__.py:1711
+#: ../yum/__init__.py:1849
 msgid "searching in provides entries"
 msgstr "wyszukiwanie we wpisach dostarczania"
 
-#: ../yum/__init__.py:1744
+#: ../yum/__init__.py:1882
 #, python-format
 msgid "Provides-match: %s"
 msgstr "Wyniki dostarczania: %s"
 
-#: ../yum/__init__.py:1793
+#: ../yum/__init__.py:1931
 msgid "No group data available for configured repositories"
 msgstr "Brak dostępnych danych grup dla skonfigurowanych repozytoriów"
 
-#: ../yum/__init__.py:1819 ../yum/__init__.py:1838 ../yum/__init__.py:1869
-#: ../yum/__init__.py:1875 ../yum/__init__.py:1948 ../yum/__init__.py:1952
+#: ../yum/__init__.py:1962 ../yum/__init__.py:1981 ../yum/__init__.py:2011
+#: ../yum/__init__.py:2017 ../yum/__init__.py:2090 ../yum/__init__.py:2094
 #, python-format
 msgid "No Group named %s exists"
 msgstr "Grupa o nazwie %s nie istnieje"
 
-#: ../yum/__init__.py:1850 ../yum/__init__.py:1965
+#: ../yum/__init__.py:1992 ../yum/__init__.py:2106
 #, python-format
 msgid "package %s was not marked in group %s"
 msgstr "pakiet %s nie został oznaczony w grupie %s"
 
-#: ../yum/__init__.py:1897
+#: ../yum/__init__.py:2038
 #, python-format
 msgid "Adding package %s from group %s"
 msgstr "Dodawanie pakietu %s z grupy %s"
 
-#: ../yum/__init__.py:1901
+#: ../yum/__init__.py:2043
 #, python-format
 msgid "No package named %s available to be installed"
 msgstr "Brak dostępnego pakietu o nazwie %s do zainstalowania"
 
-#: ../yum/__init__.py:1990
+#: ../yum/__init__.py:2131
 #, python-format
 msgid "Package tuple %s could not be found in packagesack"
 msgstr "Nie można znaleźć krotki pakietu %s w zestawie pakietów"
 
-#: ../yum/__init__.py:2005
+#: ../yum/__init__.py:2146
 msgid ""
 "getInstalledPackageObject() will go away, use self.rpmdb.searchPkgTuple().\n"
 msgstr ""
 "getInstalledPackageObject() zostanie usunięte, użyj self.rpmdb.searchPkgTuple"
 "().\n"
 
-#: ../yum/__init__.py:2057 ../yum/__init__.py:2100
+#: ../yum/__init__.py:2198 ../yum/__init__.py:2241
 msgid "Invalid versioned dependency string, try quoting it."
 msgstr "Nieprawidłowy łańcuch tekstowy wersji, spróbuj go zacytować."
 
-#: ../yum/__init__.py:2059 ../yum/__init__.py:2102
+#: ../yum/__init__.py:2200 ../yum/__init__.py:2243
 msgid "Invalid version flag"
 msgstr "Nieprawidłowa flaga wersji"
 
-#: ../yum/__init__.py:2074 ../yum/__init__.py:2078
+#: ../yum/__init__.py:2215 ../yum/__init__.py:2219
 #, python-format
 msgid "No Package found for %s"
 msgstr "Nie znaleziono pakietu %s"
 
-#: ../yum/__init__.py:2277
+#: ../yum/__init__.py:2427
 msgid "Package Object was not a package object instance"
 msgstr "Obiekt pakietu nie był instancją obiektu pakietu"
 
-#: ../yum/__init__.py:2281
+#: ../yum/__init__.py:2431
 msgid "Nothing specified to install"
 msgstr "Nie podano nic do zainstalowania"
 
 #. only one in there
-#: ../yum/__init__.py:2299
+#: ../yum/__init__.py:2449
 #, python-format
 msgid "Checking for virtual provide or file-provide for %s"
 msgstr "Sprawdzanie wirtualnych zależności lub plików dla %s"
 
-#: ../yum/__init__.py:2305 ../yum/__init__.py:2687
+#: ../yum/__init__.py:2455 ../yum/__init__.py:2853
 #, python-format
 msgid "No Match for argument: %s"
 msgstr "Brak wyników dla parametru: %s"
 
-#: ../yum/__init__.py:2371
+#: ../yum/__init__.py:2521
 #, python-format
 msgid "Package %s installed and not available"
 msgstr "Pakiet %s jest zainstalowany, ale nie jest dostępny"
 
-#: ../yum/__init__.py:2374
+#: ../yum/__init__.py:2524
 msgid "No package(s) available to install"
 msgstr "Brak pakietów dostępnych do instalacji"
 
-#: ../yum/__init__.py:2386
+#: ../yum/__init__.py:2537
 #, python-format
 msgid "Package: %s  - already in transaction set"
 msgstr "Pakiet: %s  - jest już w zestawie transakcji"
 
-#: ../yum/__init__.py:2399
+#: ../yum/__init__.py:2551
 #, python-format
 msgid "Package %s already installed and latest version"
 msgstr "Pakiet %s jest już zainstalowany w najnowszej wersji"
 
-#: ../yum/__init__.py:2406
+#: ../yum/__init__.py:2558
 #, python-format
 msgid "Package matching %s already installed. Checking for update."
 msgstr ""
 "Pakiet pasujący do %s jest już zainstalowany. Sprawdzanie aktualizacji."
 
-#: ../yum/__init__.py:2416
+#: ../yum/__init__.py:2568
 #, python-format
 msgid "Package %s is obsoleted by %s, trying to install %s instead"
 msgstr ""
 "Pakiet %s został zastąpiony przez %s, próbowanie instalacji %s zamiast niego"
 
 #. update everything (the easy case)
-#: ../yum/__init__.py:2486
+#: ../yum/__init__.py:2646
 msgid "Updating Everything"
 msgstr "Aktualizowanie wszystkiego"
 
-#: ../yum/__init__.py:2498 ../yum/__init__.py:2603 ../yum/__init__.py:2614
-#: ../yum/__init__.py:2636
+#: ../yum/__init__.py:2658 ../yum/__init__.py:2758 ../yum/__init__.py:2780
+#: ../yum/__init__.py:2802
 #, python-format
 msgid "Not Updating Package that is already obsoleted: %s.%s %s:%s-%s"
 msgstr "Przestarzały pakiet nie zostanie zaktualizowany: %s.%s %s:%s-%s"
 
-#: ../yum/__init__.py:2594
+#: ../yum/__init__.py:2749
 #, python-format
 msgid "Package is already obsoleted: %s.%s %s:%s-%s"
 msgstr "Pakiet został już zastąpiony: %s.%s %s:%s-%s"
 
-#: ../yum/__init__.py:2617 ../yum/__init__.py:2639
+#: ../yum/__init__.py:2783 ../yum/__init__.py:2805
 #, python-format
 msgid "Not Updating Package that is already updated: %s.%s %s:%s-%s"
 msgstr "Już zaktualizowany pakiet nie zostanie zaktualizowany: %s.%s %s:%s-%s"
 
-#: ../yum/__init__.py:2684
+#: ../yum/__init__.py:2850
 #, python-format
 msgid "%s"
 msgstr "%s"
 
-#: ../yum/__init__.py:2700
+#: ../yum/__init__.py:2866
 msgid "No package matched to remove"
 msgstr "Brak pasujących pakietów do usunięcia"
 
-#: ../yum/__init__.py:2734
+#: ../yum/__init__.py:2900
 #, python-format
 msgid "Cannot open file: %s. Skipping."
 msgstr "Nie można otworzyć pliku: %s. Pomijanie."
 
-#: ../yum/__init__.py:2737
+#: ../yum/__init__.py:2902
 #, python-format
 msgid "Examining %s: %s"
 msgstr "Sprawdzanie %s: %s"
 
-#: ../yum/__init__.py:2745
+#: ../yum/__init__.py:2910
 #, python-format
 msgid "Cannot add package %s to transaction. Not a compatible architecture: %s"
 msgstr "Nie można dodać pakietu %s do transakcji. Niezgodna architektura: %s"
 
-#: ../yum/__init__.py:2753
+#: ../yum/__init__.py:2918
 #, python-format
 msgid ""
 "Package %s not installed, cannot update it. Run yum install to install it "
@@ -1936,83 +1963,83 @@ msgstr ""
 "Pakiet %s nie jest zainstalowany, nie można go zaktualizować. Uruchom yum "
 "install, aby go zainstalować."
 
-#: ../yum/__init__.py:2786
+#: ../yum/__init__.py:2951
 #, python-format
 msgid "Excluding %s"
 msgstr "Wykluczanie %s"
 
-#: ../yum/__init__.py:2791
+#: ../yum/__init__.py:2955
 #, python-format
 msgid "Marking %s to be installed"
 msgstr "Oznaczanie %s do zainstalowania"
 
-#: ../yum/__init__.py:2797
+#: ../yum/__init__.py:2960
 #, python-format
 msgid "Marking %s as an update to %s"
 msgstr "Oznaczanie %s jako aktualizacji %s"
 
-#: ../yum/__init__.py:2804
+#: ../yum/__init__.py:2965
 #, python-format
 msgid "%s: does not update installed package."
 msgstr "%s: nie aktualizuj zainstalowanego pakietu."
 
-#: ../yum/__init__.py:2822
+#: ../yum/__init__.py:2982
 msgid "Problem in reinstall: no package matched to remove"
 msgstr ""
 "Podczas ponownego instalowania wystąpił problem: brak pasujących pakietów do "
 "usunięcia"
 
-#: ../yum/__init__.py:2833
+#: ../yum/__init__.py:2993
 #, python-format
 msgid "Package %s is allowed multiple installs, skipping"
 msgstr "Pakiet %s może być wielokrotnie instalowany, pomijanie"
 
-#: ../yum/__init__.py:2840
+#: ../yum/__init__.py:3000
 msgid "Problem in reinstall: no package matched to install"
 msgstr ""
 "Podczas ponownego instalowania wystąpił problem: brak pasujących pakietów do "
 "zainstalowania"
 
-#: ../yum/__init__.py:2875
+#: ../yum/__init__.py:3035
 #, python-format
 msgid "Retrieving GPG key from %s"
 msgstr "Pobieranie klucza GPG z %s"
 
-#: ../yum/__init__.py:2895
+#: ../yum/__init__.py:3055
 msgid "GPG key retrieval failed: "
 msgstr "Pobranie klucza GPG nie powiodło się: "
 
-#: ../yum/__init__.py:2906
+#: ../yum/__init__.py:3066
 #, python-format
 msgid "GPG key parsing failed: key does not have value %s"
 msgstr ""
 "Przeanalizowanie klucza GPG nie powiodło się: klucz nie posiada wartości %s"
 
-#: ../yum/__init__.py:2938
+#: ../yum/__init__.py:3098
 #, python-format
 msgid "GPG key at %s (0x%s) is already installed"
 msgstr "Klucz GPG %s (0x%s) jest już zainstalowany"
 
 #. Try installing/updating GPG key
-#: ../yum/__init__.py:2943 ../yum/__init__.py:3005
+#: ../yum/__init__.py:3103 ../yum/__init__.py:3164
 #, python-format
 msgid "Importing GPG key 0x%s \"%s\" from %s"
 msgstr "Importowanie klucza GPG 0x%s \"%s\" z %s"
 
-#: ../yum/__init__.py:2960
+#: ../yum/__init__.py:3119
 msgid "Not installing key"
 msgstr "Klucz nie zostanie zainstalowany"
 
-#: ../yum/__init__.py:2966
+#: ../yum/__init__.py:3125
 #, python-format
 msgid "Key import failed (code %d)"
 msgstr "Zaimportowanie klucza nie powiodło się (kod %d)"
 
-#: ../yum/__init__.py:2967 ../yum/__init__.py:3026
+#: ../yum/__init__.py:3126 ../yum/__init__.py:3186
 msgid "Key imported successfully"
 msgstr "Klucz został pomyślnie zaimportowany"
 
-#: ../yum/__init__.py:2972 ../yum/__init__.py:3031
+#: ../yum/__init__.py:3131 ../yum/__init__.py:3191
 #, python-format
 msgid ""
 "The GPG keys listed for the \"%s\" repository are already installed but they "
@@ -2024,73 +2051,78 @@ msgstr ""
 "Sprawdź, czy dla tego repozytorium skonfigurowane są poprawne adresy do "
 "kluczy."
 
-#: ../yum/__init__.py:2981
+#: ../yum/__init__.py:3140
 msgid "Import of key(s) didn't help, wrong key(s)?"
 msgstr "Zaimportowanie kluczy nie pomogło, błędne klucze?"
 
-#: ../yum/__init__.py:3000
+#: ../yum/__init__.py:3159
 #, python-format
 msgid "GPG key at %s (0x%s) is already imported"
 msgstr "Klucz GPG %s (0x%s) został już zaimportowany"
 
-#: ../yum/__init__.py:3020
+#: ../yum/__init__.py:3178
 #, python-format
 msgid "Not installing key for repo %s"
 msgstr "Klucz dla repozytorium %s nie zostanie zainstalowany"
 
-#: ../yum/__init__.py:3025
+#: ../yum/__init__.py:3185
 msgid "Key import failed"
 msgstr "Zaimportowanie klucza nie powiodło się"
 
-#: ../yum/__init__.py:3116
+#: ../yum/__init__.py:3275
 msgid "Unable to find a suitable mirror."
 msgstr "Nie można znaleźć odpowiedniego serwera lustrzanego."
 
-#: ../yum/__init__.py:3118
+#: ../yum/__init__.py:3277
 msgid "Errors were encountered while downloading packages."
 msgstr "Podczas pobierania pakietów wystąpiły błędy."
 
-#: ../yum/__init__.py:3182
+#: ../yum/__init__.py:3317
+#, python-format
+msgid "Please report this error at %s"
+msgstr "Zgłoś ten błąd na %s"
+
+#: ../yum/__init__.py:3341
 msgid "Test Transaction Errors: "
 msgstr "Błędy testu transakcji: "
 
 #. Mostly copied from YumOutput._outKeyValFill()
-#: ../yum/plugins.py:199
+#: ../yum/plugins.py:201
 msgid "Loaded plugins: "
 msgstr "Wczytane wtyczki: "
 
-#: ../yum/plugins.py:213 ../yum/plugins.py:219
+#: ../yum/plugins.py:215 ../yum/plugins.py:221
 #, python-format
 msgid "No plugin match for: %s"
 msgstr "Brak wyników dla wtyczki: %s"
 
-#: ../yum/plugins.py:249
+#: ../yum/plugins.py:251
 #, python-format
 msgid "\"%s\" plugin is disabled"
 msgstr "Wtyczka \"%s\" jest wyłączona"
 
 #. Give full backtrace:
-#: ../yum/plugins.py:261
+#: ../yum/plugins.py:263
 #, python-format
 msgid "Plugin \"%s\" can't be imported"
 msgstr "Nie można zaimportować wtyczki \"%s\""
 
-#: ../yum/plugins.py:268
+#: ../yum/plugins.py:270
 #, python-format
 msgid "Plugin \"%s\" doesn't specify required API version"
 msgstr "Wtyczka \"%s\" nie określa wymaganej wersji API"
 
-#: ../yum/plugins.py:273
+#: ../yum/plugins.py:275
 #, python-format
 msgid "Plugin \"%s\" requires API %s. Supported API is %s."
 msgstr "Wtyczka \"%s\" wymaga API %s. Obsługiwane API to %s."
 
-#: ../yum/plugins.py:306
+#: ../yum/plugins.py:308
 #, python-format
 msgid "Loading \"%s\" plugin"
 msgstr "Wczytywanie wtyczki \"%s\""
 
-#: ../yum/plugins.py:313
+#: ../yum/plugins.py:315
 #, python-format
 msgid ""
 "Two or more plugins with the name \"%s\" exist in the plugin search path"
@@ -2098,19 +2130,19 @@ msgstr ""
 "Istnieją dwie lub więcej wtyczek o nazwie \"%s\" w ścieżce wyszukiwania "
 "wtyczek"
 
-#: ../yum/plugins.py:333
+#: ../yum/plugins.py:335
 #, python-format
 msgid "Configuration file %s not found"
 msgstr "Nie znaleziono pliku konfiguracji %s"
 
 #. for
 #. Configuration files for the plugin not found
-#: ../yum/plugins.py:336
+#: ../yum/plugins.py:338
 #, python-format
 msgid "Unable to find configuration file for plugin %s"
 msgstr "Nie można naleźć pliku konfiguracji dla wtyczki %s"
 
-#: ../yum/plugins.py:490
+#: ../yum/plugins.py:492
 msgid "registration of commands not supported"
 msgstr "rejestracja poleceń nie jest obsługiwana"
 
@@ -2146,4 +2178,4 @@ msgstr "Uszkodzony nagłówek %s"
 #: ../rpmUtils/oldUtils.py:272
 #, python-format
 msgid "Error opening rpm %s - error %s"
-msgstr "Błąd podczas otwierania RPM-a %s - błąd %s"
+msgstr "Błąd podczas otwierania pakietu RPM %s - błąd %s"
diff --git a/yum/update_md.py b/yum/update_md.py
index b1d7388..25613e9 100644
--- a/yum/update_md.py
+++ b/yum/update_md.py
@@ -95,7 +95,7 @@ class UpdateNotice(object):
             for bz in bzs:
                 buglist += " %s%s\n\t    :" % (bz['id'], bz.has_key('title')
                                                and ' - %s' % bz['title'] or '')
-            head += buglist[:-1].rstrip() + '\n'
+            head += buglist[: - 1].rstrip() + '\n'
 
         # Add our CVE references
         cves = filter(lambda r: r['type'] == 'cve', self._md['references'])
@@ -103,7 +103,7 @@ class UpdateNotice(object):
             cvelist = "       CVEs :"
             for cve in cves:
                 cvelist += " %s\n\t    :" % cve['id']
-            head += cvelist[:-1].rstrip() + '\n'
+            head += cvelist[: - 1].rstrip() + '\n'
 
         if self._md['description'] is not None:
             desc = wrap(self._md['description'], width=64,
@@ -119,7 +119,7 @@ class UpdateNotice(object):
                 if file['arch'] not in arches:
                     continue
                 filelist += " %s\n\t    :" % file['filename']
-        head += filelist[:-1].rstrip()
+        head += filelist[: - 1].rstrip()
 
         return head
 
@@ -236,17 +236,17 @@ class UpdateNotice(object):
 
     def xml(self):
         """Generate the xml for this update notice object"""
-        msg="""
+        msg = """
 <update from="%s" status="%s" type="%s" version="%s">
   <id>%s</id>
   <title>%s</title>
   <release>%s</release>
   <issued date="%s"/>
   <description>%s</description>\n""" % (to_xml(self._md['from']),
-                to_xml(self._md['status']), to_xml(self._md['type']), 
-                to_xml(self._md['version']),to_xml(self._md['update_id']),
+                to_xml(self._md['status']), to_xml(self._md['type']),
+                to_xml(self._md['version']), to_xml(self._md['update_id']),
                 to_xml(self._md['title']), to_xml(self._md['release']),
-                to_xml(self._md['issued'], attrib=True), 
+                to_xml(self._md['issued'], attrib=True),
                 to_xml(self._md['description']))
         
         if self._md['references']:
@@ -398,7 +398,7 @@ class UpdateMetadata(object):
         if fileobj:
             fileobj.write(end)
         else:
-            msg+= end
+            msg += end
 
         if fileobj:
             return
commit b6b1403e553d435d900781c256f14bb6c8276929
Merge: 00403a9 eac42df
Author: James Antill <james at and.org>
Date:   Fri Nov 21 12:26:19 2008 -0500

    Do a merge from yum-3_2_X onto master, _UNTESTED_ but not that many conflicts

diff --cc yum/__init__.py
index 5786816,1f03840..bacd9ca
--- a/yum/__init__.py
+++ b/yum/__init__.py
@@@ -111,10 -96,10 +113,12 @@@ class YumBase(depsolve.Depsolve)
          self._up = None
          self._comps = None
          self._pkgSack = None
 +        # FIXME: backwards compat. with plugins etc., remove?
 +        self.logger         = log.logger
 +        self.verbose_logger = vlog.logger
 +
+         self._lockfile = None
+         self.skipped_packages = []   # packages skip by the skip-broken code
 -        self.logger = logging.getLogger("yum.YumBase")
 -        self.verbose_logger = logging.getLogger("yum.verbose.YumBase")
          self._repos = RepoStorage(self)
  
          # Start with plugins disabled
@@@ -319,9 -312,9 +331,10 @@@
          # Ensure that the repo name is set
          if not repo.name:
              repo.name = section
 -            self.logger.error(_('Repository %r is missing name in configuration, '
 -                    'using id') % section)
 +            # FIXME: Use critical? or exception?
 +            log.error(_('Repository %r is missing name in configuration, '
 +                        'using id'), section)
+         repo.name = to_unicode(repo.name)
  
          # Set attributes not from the config file
          repo.basecachedir = self.conf.cachedir
@@@ -630,12 -629,20 +644,19 @@@
                      necessary = True
  
          if necessary:
 -            msg = _('Importing additional filelist information')
 -            self.verbose_logger.log(logginglevels.INFO_2, msg)
 +            vinfo2(_('Importing additional filelist information'))
              self.repos.populateSack(mdtype='filelists')
             
-     def buildTransaction(self):
+     def buildTransaction(self, unfinished_transactions_check=True):
          """go through the packages in the transaction set, find them in the
             packageSack or rpmdb, and pack up the ts accordingly"""
+         if (unfinished_transactions_check and
+             misc.find_unfinished_transactions(yumlibpath=self.conf.persistdir)):
+             msg = _('There are unfinished transactions remaining. You might ' \
+                     'consider running yum-complete-transaction first to finish them.' )
+             self.logger.critical(msg)
+             time.sleep(3)
+ 
          self.plugins.run('preresolve')
          ds_st = time.time()
  
@@@ -657,9 -664,13 +678,13 @@@
          # The remove the broken packages from the transactions and
          # Try another depsolve
          if self.conf.skip_broken and rescode==1:
+             self.skipped_packages = []    # reset the public list of skipped packages.
+             sb_st = time.time()
              rescode, restring = self._skipPackagesWithProblems(rescode, restring)
+             self._printTransaction()        
+             self.verbose_logger.debug('Skip-Broken time: %0.3f' % (time.time() - sb_st))
  
 -        self.verbose_logger.debug('Depsolve time: %0.3f' % (time.time() - ds_st))
 +        vdebug_tm(ds_st, 'Depsolve time')
          return rescode, restring
  
      def _skipPackagesWithProblems(self, rescode, restring):
@@@ -678,10 -699,13 +713,13 @@@
          # or the transaction is empty
          count = 0
          skipped_po = set()
-         orig_restring = restring    # Keep the old error messages
-         while len(self.po_with_problems) > 0 and rescode == 1:
+         removed_from_sack = set()
+         orig_restring = restring    # Keep the old error messages 
+         hard_restart = False
+         while (len(self.po_with_problems) > 0 and rescode == 1):
              count += 1
 -            self.verbose_logger.debug(_("Skip-broken round %i"), count)
 +            vdebug(_("Skip-broken round %i"), count)
+             self._printTransaction()        
              depTree = self._buildDepTree()
              startTs = set(self.tsInfo)
              toRemove = set()
@@@ -701,22 -735,76 +749,75 @@@
              endTs = set(self.tsInfo)
               # Check if tsInfo has changes since we started to skip packages
               # if there is no changes then we got a loop.
+              # the first time we get here we reset the resolved members of
+              # tsInfo and takes a new run all members in the current transaction
              if startTs-endTs == set():
-                 break    # bail out
+                 if hard_restart:
+                     break # Bail out
+                 else:
+                     self.verbose_logger.debug('SKIPBROKEN: resetting already resovled packages (transaction not changed)' )
+                     self.tsInfo.resetResolved(hard=True)
+             # if we are all clear, then we have to check that the whole current transaction 
+             # can complete the depsolve without error, because the packages skipped
+             # can have broken something that passed the tests earliere.
+             # FIXME: We need do this in a better way.
+             if rescode != 1:
+                 self.verbose_logger.debug('SKIPBROKEN: sanity check the current transaction' )
+                 self.tsInfo.resetResolved(hard=True)
+                 self._checkMissingObsoleted() # This is totally insane, but needed :(
+                 rescode, restring = self.resolveDeps()
          if rescode != 1:
 -            self.verbose_logger.debug(_("Skip-broken took %i rounds "), count)
 -            self.verbose_logger.info(_('\nPackages skipped because of dependency problems:'))
 +            vdebug(_("Skip-broken took %i rounds "), count)
 +            vinfo(_('\nPackages skipped because of dependency problems:'))
              skipped_list = [p for p in skipped_po]
              skipped_list.sort()
              for po in skipped_list:
 -                msg = _("    %s from %s") % (str(po),po.repo.id)
 -                self.verbose_logger.info(msg)
 +                vinfo(_("    %s from %s"), str(po),po.repo.id)
+             self.skipped_packages = skipped_list    # make the skipped packages public
          else:
              # If we cant solve the problems the show the original error messages.
 -            self.verbose_logger.info("Skip-broken could not solve problems")
 +            vinfo("Skip-broken could not solve problems")
              return 1, orig_restring
-         
          return rescode, restring
  
+     def _checkMissingObsoleted(self):
+         """ 
+         If multiple packages is obsoleting the same package
+         then the TS_OBSOLETED can get removed from the transaction
+         so we must make sure that they, exist and else create them
+         """
+         for txmbr in self.tsInfo:
+             for pkg in txmbr.obsoletes:
+                 if not self.tsInfo.exists(pkg.pkgtup):
+                     obs = self.tsInfo.addObsoleted(pkg,txmbr.po)
+                     self.verbose_logger.debug('SKIPBROKEN: Added missing obsoleted %s (%s)' % (pkg,txmbr.po) )
+             for pkg in txmbr.obsoleted_by:
+                 # check if the obsoleting txmbr is in the transaction
+                 # else remove the obsoleted txmbr
+                 # it clean out some really wierd cases
+                 if not self.tsInfo.exists(pkg.pkgtup):
+                     self.verbose_logger.debug('SKIPBROKEN: Remove extra obsoleted %s (%s)' % (txmbr.po,pkg) )
+                     self.tsInfo.remove(txmbr.po.pkgtup)
+ 
+     def _getPackagesToRemoveAllArch(self,po):
+         ''' get all compatible arch packages in pkgSack'''
+         pkgs = []
+         if rpmUtils.arch.isMultiLibArch():
+             archs = rpmUtils.arch.getArchList() 
+             n,a,e,v,r = po.pkgtup
+             # skip for all compat archs
+             for a in archs:
+                 pkgtup = (n,a,e,v,r)
+                 matched = self.pkgSack.searchNevra(n,e,v,r,a) 
+                 pkgs.extend(matched)
+         else:
+             pkgs.append(po)
+         return pkgs   
+         
+                 
+                 
+         
+ 
      def _skipFromTransaction(self,po):
          skipped =  []
          if rpmUtils.arch.isMultiLibArch():
@@@ -790,7 -903,8 +916,8 @@@
              pass
          elif len(errors) == 0:
              errstring = _('Warning: scriptlet or other non-fatal errors occurred during transaction.')
 -            self.verbose_logger.debug(errstring)
 +            vdebug(errstring)
+             resultobject.return_code = 1
          else:
              raise Errors.YumBaseError, errors
                            
@@@ -804,10 -918,11 +931,11 @@@
                      try:
                          os.unlink(fn)
                      except (IOError, OSError), e:
 -                        self.logger.critical(_('Failed to remove transaction file %s') % fn)
 +                        critical(_('Failed to remove transaction file %s'), fn)
  
          self.plugins.run('posttrans')
-     
+         return resultobject
+ 
      def costExcludePackages(self):
          """exclude packages if they have an identical package in another repo
          and their repo.cost value is the greater one"""
@@@ -875,16 -990,16 +1003,15 @@@
              return
  
          if not repo:
 -            self.verbose_logger.log(logginglevels.INFO_2, _('Excluding Packages in global exclude list'))
 +            vinfo2(_('Excluding Packages in global exclude list'))
          else:
 -            self.verbose_logger.log(logginglevels.INFO_2, _('Excluding Packages from %s'),
 -                repo.name)
 +            vinfo2(_('Excluding Packages from %s'), repo.name)
  
-         pkgs = self._pkgSack.returnPackages(repoid, patterns=excludelist)
-         exactmatch, matched, unmatched = \
-            parsePackages(pkgs, excludelist, casematch=1, unique='repo-pkgkey')
+         pkgs = self._pkgSack.returnPackages(repoid, patterns=excludelist,
+                                             ignore_case=False)
  
-         for po in exactmatch + matched:
+         for po in pkgs:
 -            self.verbose_logger.debug('Excluding %s', po)
 +            vdebug('Excluding %s', po)
              po.repo.sack.delPackage(po)
              
          
@@@ -903,12 -1018,14 +1030,13 @@@
          exactmatch, matched, unmatched = \
             parsePackages(pkglist, includelist, casematch=1)
          
 -        self.verbose_logger.log(logginglevels.INFO_2,
 -            _('Reducing %s to included packages only'), repo.name)
 +        vinfo2(_('Reducing %s to included packages only'), repo.name)
          rmlist = []
+         keeplist = set(exactmatch + matched)
          
          for po in pkglist:
-             if po in exactmatch + matched:
+             if po in keeplist:
 -                self.verbose_logger.debug(_('Keeping included package %s'), po)
 +                vdebug(_('Keeping included package %s'), po)
                  continue
              else:
                  rmlist.append(po)
@@@ -2127,10 -2450,14 +2452,14 @@@
                      try:
                          mypkgs = self.returnPackagesByDep(arg)
                      except yum.Errors.YumBaseError, e:
 -                        self.logger.critical(_('No Match for argument: %s') % arg)
 +                        critical(_('No Match for argument: %s'), arg)
                      else:
                          if mypkgs:
-                             pkgs.extend(self.bestPackagesFromList(mypkgs))
+                             #  Dep. installs don't do wildcards, so we
+                             # just want a single named package.
+                             mypkgs = self.bestPackagesFromList(mypkgs,
+                                                                single_name=True)
+                             pkgs.extend(mypkgs)
                          
              else:
                  nevra_dict = self._nevra_kwarg_parse(kwargs)
@@@ -2216,28 -2551,72 +2555,72 @@@
              # if so pass it to update b/c it should be able to figure it out
              if self.rpmdb.contains(name=po.name, arch=po.arch) and not self.allowedMultipleInstalls(po):
                  if not self.tsInfo.getMembersWithState(po.pkgtup, TS_REMOVE_STATES):
 -                    self.verbose_logger.warning(_('Package matching %s already installed. Checking for update.'), po)            
 -                    txmbrs = self.update(po=po)
 -                    tx_return.extend(txmbrs)
 +                    vwarning(_('Package matching %s already installed. Checking for update.'), po)            
 +                    res = self.update(po=po)
 +                    result.add(res)
                      continue
  
-             # make sure we're not installing a package which is obsoleted by something
-             # else in the repo
-             thispkgobsdict = self.up.checkForObsolete([po.pkgtup])
-             if thispkgobsdict.has_key(po.pkgtup):
-                 obsoleting = thispkgobsdict[po.pkgtup][0]
-                 obsoleting_pkg = self.getPackageObject(obsoleting)
+             #  Make sure we're not installing a package which is obsoleted by
+             # something else in the repo. Unless there is a obsoletion loop,
+             # at which point ignore everything.
+             obsoleting_pkg = self._test_loop(po, self._pkg2obspkg)
+             if obsoleting_pkg is not None:
 -                self.verbose_logger.warning(_('Package %s is obsoleted by %s, trying to install %s instead'),
 +                vwarning(_('Package %s is obsoleted by %s, trying to install %s instead'),
                      po.name, obsoleting_pkg.name, obsoleting_pkg)               
 -                self.install(po=obsoleting_pkg)
 +                self.install(po=obsoleting_pkg) # XXX result???
                  continue
                  
-             res = self.tsInfo.addInstall(po)
-             result.add(res)
+             # at this point we are going to mark the pkg to be installed, make sure
+             # it doesn't obsolete anything. If it does, mark that in the tsInfo, too
+             if po.pkgtup in self.up.getObsoletesList(name=po.name, arch=po.arch):
+                 for obsoletee in self._find_obsoletees(po):
+                     txmbr = self.tsInfo.addObsoleting(po, obsoletee)
+                     self.tsInfo.addObsoleted(obsoletee, po)
+                     tx_return.append(txmbr)
+             else:
+                 txmbr = self.tsInfo.addInstall(po)
+                 tx_return.append(txmbr)
          
 -        return tx_return
 +        return result
  
-     
+     def _check_new_update_provides(self, opkg, npkg):
+         """ Check for any difference in the provides of the old and new update
+             that is needed by the transaction. If so we "update" those pkgs
+             too, to the latest version. """
+         oprovs = set(opkg.returnPrco('provides'))
+         nprovs = set(npkg.returnPrco('provides'))
+         for prov in oprovs.difference(nprovs):
+             reqs = self.tsInfo.getRequires(*prov)
+             for pkg in reqs:
+                 for req in reqs[pkg]:
+                     if not npkg.inPrcoRange('provides', req):
+                         naTup = (pkg.name, pkg.arch)
+                         for pkg in self.pkgSack.returnNewestByNameArch(naTup):
+                             self.update(po=pkg)
+                         break
+ 
+     def _newer_update_in_trans(self, pkgtup, available_pkg):
+         """ We return True if there is a newer package already in the
+             transaction. If there is an older one, we remove it (and update any
+             deps. that aren't satisfied by the newer pkg) and return False so
+             we'll update to this newer pkg. """
+         found = False
+         for txmbr in self.tsInfo.getMembersWithState(pkgtup, [TS_UPDATED]):
+             count = 0
+             for po in txmbr.updated_by:
+                 if available_pkg.verLE(po):
+                     count += 1
+                 else:
+                     for ntxmbr in self.tsInfo.getMembers(po.pkgtup):
+                         self.tsInfo.remove(ntxmbr.po.pkgtup)
+                         self._check_new_update_provides(ntxmbr.po,
+                                                         available_pkg)
+             if count:
+                 found = True
+             else:
+                 self.tsInfo.remove(txmbr.po.pkgtup)
+         return found
+ 
      def update(self, po=None, requiringPo=None, **kwargs):
          """try to mark for update the item(s) specified. 
              po is a package object - if that is there, mark it for update,
@@@ -2370,25 -2749,35 +2753,35 @@@
  
          for installed_pkg in instpkgs:
              for updating in self.up.updatesdict.get(installed_pkg.pkgtup, []):
-                 updating_pkg = self.getPackageObject(updating)
+                 po = self.getPackageObject(updating)
                  if self.tsInfo.isObsoleted(installed_pkg.pkgtup):
 -                    self.verbose_logger.log(logginglevels.DEBUG_2, _('Not Updating Package that is already obsoleted: %s.%s %s:%s-%s'), 
 -                                            installed_pkg.pkgtup)                                               
 +                    vdebug2(_('Not Updating Package that is already obsoleted: %s.%s %s:%s-%s'), 
 +                            installed_pkg.pkgtup)
+                 # at this point we are going to mark the pkg to be installed, make sure
+                 # it doesn't obsolete anything. If it does, mark that in the tsInfo, too
+                 elif po.pkgtup in self.up.getObsoletesList(name=po.name,
+                                                            arch=po.arch):
+                     for obsoletee in self._find_obsoletees(po):
+                         txmbr = self.tsInfo.addUpdate(po, installed_pkg)
+                         if requiringPo:
+                             txmbr.setAsDep(requiringPo)
+                         self.tsInfo.addObsoleting(po, obsoletee)
+                         self.tsInfo.addObsoleted(obsoletee, po)
+                         tx_return.append(txmbr)
                  else:
-                     res = self.tsInfo.addUpdate(updating_pkg, installed_pkg)
+                     txmbr = self.tsInfo.addUpdate(po, installed_pkg)
                      if requiringPo:
 -                        txmbr.setAsDep(requiringPo)
 -                    tx_return.append(txmbr)
 +                        res.primary.setAsDep(requiringPo)
 +                    result.add(res)
                          
          for available_pkg in availpkgs:
              for updated in self.up.updating_dict.get(available_pkg.pkgtup, []):
                  if self.tsInfo.isObsoleted(updated):
 -                    self.verbose_logger.log(logginglevels.DEBUG_2, _('Not Updating Package that is already obsoleted: %s.%s %s:%s-%s'), 
 -                                            updated)
 +                    vdebug2(_('Not Updating Package that is already obsoleted: %s.%s %s:%s-%s'), 
 +                            updated)
-                 elif self.tsInfo.getMembersWithState(updated, [TS_UPDATED]):
+                 elif self._newer_update_in_trans(updated, available_pkg):
 -                    self.verbose_logger.log(logginglevels.DEBUG_2, _('Not Updating Package that is already updated: %s.%s %s:%s-%s'), 
 -                                            updated)
 +                    vdebug2(_('Not Updating Package that is already updated: %s.%s %s:%s-%s'), 
 +                            updated)
                  
                  else:
                      updated_pkg =  self.rpmdb.searchPkgTuple(updated)[0]
@@@ -2405,15 -2794,26 +2798,26 @@@
              #        most likely correct
              pot_updated = self.rpmdb.searchNevra(name=available_pkg.name, arch=available_pkg.arch)
              for ipkg in pot_updated:
-                 if ipkg.EVR < available_pkg.EVR:
-                     res = self.tsInfo.addUpdate(available_pkg, ipkg)
+                 if self.tsInfo.isObsoleted(ipkg.pkgtup):
 -                    self.verbose_logger.log(logginglevels.DEBUG_2, _('Not Updating Package that is already obsoleted: %s.%s %s:%s-%s'), 
 -                                            ipkg.pkgtup)
++                    vdebug2(_('Not Updating Package that is already obsoleted: %s.%s %s:%s-%s'), 
++                            ipkg.pkgtup)
+                 elif self._newer_update_in_trans(ipkg.pkgtup, available_pkg):
 -                    self.verbose_logger.log(logginglevels.DEBUG_2, _('Not Updating Package that is already updated: %s.%s %s:%s-%s'), 
 -                                            ipkg.pkgtup)
++                    vdebug2(_('Not Updating Package that is already updated: %s.%s %s:%s-%s'), 
++                            ipkg.pkgtup)
+                 elif ipkg.verLT(available_pkg):
+                     txmbr = self.tsInfo.addUpdate(available_pkg, ipkg)
                      if requiringPo:
-                         res.primary.setAsDep(requiringPo)
-                     result.add(res)
+                         txmbr.setAsDep(requiringPo)
+                     tx_return.append(txmbr)
+                 
+                 #else:
+                     #magically make allowdowngrade work here
+                     # yum --allow-downgrade update something-specific here
+                     # could work but we will need to be careful with it
+                     # maybe a downgrade command is necessary
  
 -        return tx_return
 +        return result
          
-         
      def remove(self, po=None, **kwargs):
          """try to find and mark for remove the specified package(s) -
              if po is specified then that package object (if it is installed) 
@@@ -2455,17 -2858,14 +2862,14 @@@
                              ver=nevra_dict['version'], rel=nevra_dict['release'])
  
                  if len(pkgs) == 0:
-                     # FIXME we should give the caller some nice way to hush this warning
-                     # probably just a kwarg of 'silence_warnings' or something
-                     # b/c when this is called from groupRemove() it makes a lot of
-                     # garbage noise
-                     warning(_("No package matched to remove"))
+                     if not kwargs.get('silence_warnings', False):
 -                        self.logger.warning(_("No package matched to remove"))
++                        warning(_("No package matched to remove"))
  
          for po in pkgs:
 -            txmbr = self.tsInfo.addErase(po)
 -            tx_return.append(txmbr)
 +            res = self.tsInfo.addErase(po)
 +            result.add(res)
          
 -        return tx_return
 +        return result
  
      def installLocal(self, pkg, po=None, updateonly=False):
          """
@@@ -2500,9 -2901,11 +2904,11 @@@
          # if by any chance we're a noncompat arch rpm - bail and throw out an error
          # FIXME -our archlist should be stored somewhere so we don't have to
          # do this: but it's not a config file sort of thing
+         # FIXME: Should add noarch, yum localinstall works ...
+         # just rm this method?
          if po.arch not in rpmUtils.arch.getArchList():
 -            self.logger.critical(_('Cannot add package %s to transaction. Not a compatible architecture: %s'), pkg, po.arch)
 +            critical(_('Cannot add package %s to transaction. Not a compatible architecture: %s'), pkg, po.arch)
-             return result
+             return tx_return
          
          # everything installed that matches the name
          installedByKey = self.rpmdb.searchNevra(name=po.name)
@@@ -2635,42 -3089,23 +3087,22 @@@
          keyurls = repo.gpgkey
          key_installed = False
  
-         ts = rpmUtils.transaction.TransactionWrapper(self.conf.installroot)
+         ts = self.rpmdb.readOnlyTS()
  
          for keyurl in keyurls:
-             info(_('Retrieving GPG key from %s') % keyurl)
- 
-             # Go get the GPG key from the given URL
-             try:
-                 rawkey = urlgrabber.urlread(keyurl, limit=9999)
-             except urlgrabber.grabber.URLGrabError, e:
-                 raise Errors.YumBaseError(_('GPG key retrieval failed: ') +
-                                           unicode(str(e), 'UTF-8', 'replace'))
- 
-             # Parse the key
-             keys_info = misc.getgpgkeyinfo(rawkey)
-             
-             for keyinfo in keys_info:
-                 try: 
-                     keyid = keyinfo['keyid']
-                     hexkeyid = misc.keyIdToRPMVer(keyid).upper()
-                     timestamp = keyinfo['timestamp']
-                     userid = keyinfo['userid']
-                     fingerprint = keyinfo['fingerprint']
-                     raw_key = keyinfo['raw_key']
-                 except ValueError, e:
-                     raise Errors.YumBaseError, \
-                           _('GPG key parsing failed: ') + str(e)
+             keys = self._retrievePublicKey(keyurl, repo)
  
+             for info in keys:
                  # Check if key is already installed
-                 if misc.keyInstalled(ts, keyid, timestamp) >= 0:
-                     info(_('GPG key at %s (0x%s) is already installed'),
-                          keyurl, hexkeyid)
+                 if misc.keyInstalled(ts, info['keyid'], info['timestamp']) >= 0:
 -                    self.logger.info(_('GPG key at %s (0x%s) is already installed') % (
 -                        keyurl, info['hexkeyid']))
++                    info(_('GPG key at %s (0x%s) is already installed') %
++                         (keyurl, info['hexkeyid']))
                      continue
  
                  # Try installing/updating GPG key
-                 critical(_('Importing GPG key 0x%s "%s" from %s'),
-                          hexkeyid, userid, keyurl.replace("file://",""))
 -                self.logger.critical(_('Importing GPG key 0x%s "%s" from %s') %
 -                                     (info['hexkeyid'], 
 -                                      to_unicode(info['userid']),
 -                                      keyurl.replace("file://","")))
++                critical(_('Importing GPG key 0x%s "%s" from %s') %
++                         (info['hexkeyid'], to_unicode(info['userid']),
++                          keyurl.replace("file://","")))
                  rc = False
                  if self.conf.assumeyes:
                      rc = True
@@@ -2689,9 -3126,7 +3123,7 @@@
                  if result != 0:
                      raise Errors.YumBaseError, \
                            _('Key import failed (code %d)') % result
-                 misc.import_key_to_pubring(rawkey, po.repo.cachedir)
-                 
 -                self.logger.info(_('Key imported successfully'))
 +                info(_('Key imported successfully'))
                  key_installed = True
  
                  if not key_installed:
@@@ -2705,9 -3140,63 +3137,63 @@@
          # Check if the newly installed keys helped
          result, errmsg = self.sigCheckPkg(po)
          if result != 0:
 -            self.logger.info(_("Import of key(s) didn't help, wrong key(s)?"))
 +            info(_("Import of key(s) didn't help, wrong key(s)?"))
              raise Errors.YumBaseError, errmsg
+     
+     def getKeyForRepo(self, repo, callback=None):
+         """
+         Retrieve a key for a repository If needed, prompt for if the key should
+         be imported using callback
+         
+         @param repo: Repository object to retrieve the key of.
+         @param callback: Callback function to use for asking for verification
+                           of a key. Takes a dictionary of key info.
+         """
+         keyurls = repo.gpgkey
+         key_installed = False
+         for keyurl in keyurls:
+             keys = self._retrievePublicKey(keyurl, repo)
+             for info in keys:
+                 # Check if key is already installed
+                 if info['keyid'] in misc.return_keyids_from_pubring(repo.gpgdir):
 -                    self.logger.info(_('GPG key at %s (0x%s) is already imported') % (
 -                        keyurl, info['hexkeyid']))
++                    info(_('GPG key at %s (0x%s) is already imported') %
++                         (keyurl, info['hexkeyid']))
+                     continue
+ 
+                 # Try installing/updating GPG key
 -                self.logger.critical(_('Importing GPG key 0x%s "%s" from %s') %
 -                                     (info['hexkeyid'], 
 -                                     to_unicode(info['userid']),
 -                                     keyurl.replace("file://","")))
++                critical(_('Importing GPG key 0x%s "%s" from %s') %
++                         (info['hexkeyid'], to_unicode(info['userid']),
++                          keyurl.replace("file://","")))
+                 rc = False
+                 if self.conf.assumeyes:
+                     rc = True
+                 elif callback:
+                     rc = callback({"repo": repo, "userid": info['userid'],
+                                     "hexkeyid": info['hexkeyid'], "keyurl": keyurl,
+                                     "fingerprint": info['fingerprint'],
+                                     "timestamp": info['timestamp']})
+ 
+ 
+                 if not rc:
+                     raise Errors.YumBaseError, _("Not installing key for repo %s") % repo
+                 
+                 # Import the key
 -                result = misc.import_key_to_pubring(info['raw_key'], info['hexkeyid'], gpgdir=repo.gpgdir)
++                result = misc.import_key_to_pubring(info['raw_key'],
++                                                    info['hexkeyid'],
++                                                    gpgdir=repo.gpgdir)
+                 if not result:
+                     raise Errors.YumBaseError, _('Key import failed')
 -                self.logger.info(_('Key imported successfully'))
++                info(_('Key imported successfully'))
+                 key_installed = True
+ 
+                 if not key_installed:
+                     raise Errors.YumBaseError, \
+                           _('The GPG keys listed for the "%s" repository are ' \
+                           'already installed but they are not correct for this ' \
+                           'package.\n' \
+                           'Check that the correct key URLs are configured for ' \
+                           'this repository.') % (repo.name)
  
 -
      def _limit_installonly_pkgs(self):
          if self.conf.installonly_limit < 1 :
              return 
diff --cc yum/config.py
index 01604a3,ffd70b3..98ad3d6
--- a/yum/config.py
+++ b/yum/config.py
@@@ -31,8 -31,11 +31,12 @@@ from iniparse.compat import ParsingErro
  import rpmUtils.transaction
  import rpmUtils.arch
  import Errors
 +import logginglevels
  
+ # Alter/patch these to change the default checking...
+ __pkgs_gpgcheck_default__ = False
+ __repo_gpgcheck_default__ = False
+ 
  class Option(object):
      '''
      This class handles a single Yum configuration file option. Create
@@@ -559,12 -576,9 +577,13 @@@ class StartupConf(BaseConfig)
      required early in the initialisation process or before the other [main]
      options can be parsed. 
      '''
+     # xemacs highlighting hack: '
 -    debuglevel = IntOption(2, 0, 10)
 -    errorlevel = IntOption(2, 0, 10)
 +    debuglevel = IntOption(logginglevels.DEBUG_NORMAL_LEVEL,
 +                           logginglevels.DEBUG_MIN_LEVEL,
 +                           logginglevels.DEBUG_MAX_LEVEL)
 +    errorlevel = IntOption(logginglevels.ERROR_NORMAL_LEVEL,
 +                           logginglevels.ERROR_MIN_LEVEL,
 +                           logginglevels.ERROR_MAX_LEVEL)
  
      distroverpkg = Option('redhat-release')
      installroot = Option('/')
diff --cc yum/logginglevels.py
index 8b1d233,756e47a..d87ee48
--- a/yum/logginglevels.py
+++ b/yum/logginglevels.py
@@@ -53,31 -45,42 +53,61 @@@ logging.addLevelName(DEBUG_4, "DEBUG_4"
  __NO_LOGGING = 100
  logging.raiseExceptions = False
  
+ import syslog as syslog_module
+ 
  syslog = None
  
 +DEBUG_QUIET_LEVEL   = 0
 +DEBUG_NORMAL_LEVEL  = 2
 +DEBUG_VERBOSE_LEVEL = 3
 +DEBUG_DEBUG0_LEVEL  = 4
 +DEBUG_DEBUG1_LEVEL  = 5
 +DEBUG_DEBUG2_LEVEL  = 6
 +DEBUG_DEBUG3_LEVEL  = 7
 +DEBUG_DEBUG4_LEVEL  = 8
 +DEBUG_UPDATES_LEVEL = DEBUG_DEBUG3_LEVEL
 +
 +DEBUG_MIN_LEVEL     = 0
 +DEBUG_MAX_LEVEL     = DEBUG_DEBUG4_LEVEL
 +
 +ERROR_NORMAL_LEVEL  = 1
 +ERROR_VERBOSE_LEVEL = 2
 +
 +ERROR_MIN_LEVEL     = 0
 +ERROR_MAX_LEVEL     = ERROR_VERBOSE_LEVEL
 +
+ # Mostly borrowed from original yum-updated.py
+ _syslog_facility_map = { "KERN"   : syslog_module.LOG_KERN,
+                          "USER"   : syslog_module.LOG_USER,
+                          "MAIL"   : syslog_module.LOG_MAIL,
+                          "DAEMON" : syslog_module.LOG_DAEMON,
+                          "AUTH"   : syslog_module.LOG_AUTH,
+                          "LPR"    : syslog_module.LOG_LPR,
+                          "NEWS"   : syslog_module.LOG_NEWS,
+                          "UUCP"   : syslog_module.LOG_UUCP,
+                          "CRON"   : syslog_module.LOG_CRON,
+                          "LOCAL0" : syslog_module.LOG_LOCAL0,
+                          "LOCAL1" : syslog_module.LOG_LOCAL1,
+                          "LOCAL2" : syslog_module.LOG_LOCAL2,
+                          "LOCAL3" : syslog_module.LOG_LOCAL3,
+                          "LOCAL4" : syslog_module.LOG_LOCAL4,
+                          "LOCAL5" : syslog_module.LOG_LOCAL5,
+                          "LOCAL6" : syslog_module.LOG_LOCAL6,
+                          "LOCAL7" : syslog_module.LOG_LOCAL7,}
+ def syslogFacilityMap(facility):
+     if type(facility) == int:
+         return facility
+     elif facility.upper() in _syslog_facility_map:
+         return _syslog_facility_map[facility.upper()]
+     elif (facility.upper().startswith("LOG_") and
+           facility[4:].upper() in _syslog_facility_map):
+         return _syslog_facility_map[facility[4:].upper()]
+     return syslog.LOG_USER
+ 
  def logLevelFromErrorLevel(error_level):
      """ Convert an old-style error logging level to the new style. """
 -    error_table = { -1 : __NO_LOGGING, 0 : logging.CRITICAL, 1 : logging.ERROR,
 -        2 : logging.WARNING}
 +    error_table = { -1 : __NO_LOGGING,
 +                    0 : logging.CRITICAL, 1 : logging.ERROR, 2 :logging.WARNING}
      
      return __convertLevel(error_level, error_table)
  
diff --cc yum/misc.py
index e6c22c2,801fc0f..30887b9
--- a/yum/misc.py
+++ b/yum/misc.py
@@@ -233,10 -326,10 +326,10 @@@ def procgpgkey(rawkey)
      # Decode and return
      return base64.decodestring(block.getvalue())
  
- def getgpgkeyinfo(rawkey):
-     '''Return a list of dicts of info for the given ASCII armoured key text
+ def getgpgkeyinfo(rawkey, multiple=False):
+     '''Return a dict of info for the given ASCII armoured key text
  
 -    Returned dict will have the following keys: 'userid', 'keyid', 'timestamp'
 +    Returned dicts will have the following keys: 'userid', 'keyid', 'timestamp'
  
      Will raise ValueError if there was a problem decoding the key.
      '''
@@@ -275,8 -368,11 +368,10 @@@
                          info['timestamp'] = int(tspkt[1])
                          break
          key_info_objs.append(info)
+     if multiple:      
          return key_info_objs
-         
+     else:
+         return key_info_objs[0]
 -        
  
  def keyIdToRPMVer(keyid):
      '''Convert an integer representing a GPG key ID to the hex version string
diff --cc yum/transactioninfo.py
index a6336c7,5a843fd..f0044f1
--- a/yum/transactioninfo.py
+++ b/yum/transactioninfo.py
@@@ -199,15 -193,13 +199,14 @@@ class TransactionData
              self.pkgSackPackages += 1
  
          if self.conditionals.has_key(txmember.name):
-             for po in self.conditionals[txmember.name]:
-                 if self.rpmdb.contains(po=po):
+             for pkg in self.conditionals[txmember.name]:
+                 if self.rpmdb.contains(po=pkg):
                      continue
-                 res = self.addInstall(po, True)
-                 result.addConditionals(res)
-                 res.primary.setAsDep(po=txmember.po)
+                 for condtxmbr in self.install_method(po=pkg):
+                     condtxmbr.setAsDep(po=txmember.po)
  
          self._unresolvedMembers.add(txmember)
 +        return result
  
      def remove(self, pkgtup):
          """remove a package from the transaction"""
commit 00403a9aadd3537799b8d46d9e6f84100b2bba83
Author: James Antill <james at and.org>
Date:   Fri Nov 21 12:04:56 2008 -0500

    Revert "updated de translation by Jochen Schmitt"
    
    This reverts commit 0801c7cf79c95df649bfc005062799f3786d74f8.
    
     Trying to merge with yum-3_2_X

diff --git a/po/de.po b/po/de.po
index ae1fa57..e766d20 100644
--- a/po/de.po
+++ b/po/de.po
@@ -713,9 +713,9 @@ msgstr ""
 "\n"
 "Transaktionszusammenfassung\n"
 "=============================================================================\n"
-"Installieren      %5.5s Paket(e)         \n"
-"Aktualisieren     %5.5s Paket(e)         \n"
-"Enfernen          %5.5s Paket(e)         \n"
+"Installieren      %5.5s Pakete(e)         \n"
+"Aktualisieren   %5.5s Pakete(e)         \n"
+"Enfernen           %5.5s Paket(e)         \n"
 
 #: ../output.py:558
 msgid "Removed"
commit c1c433fd923dd272c87e19c5c2ad33071cdd79c0
Author: James Antill <james at and.org>
Date:   Fri Nov 21 12:03:53 2008 -0500

    Revert "Added Catalan translation by Xavier Conde"
    
    This reverts commit c0775d5862db6cf5a2db38e5816d205a10a9f0ea.
    
     Trying to merge with yum-3_2_X

diff --git a/po/ca.po b/po/ca.po
deleted file mode 100644
index 0e21ad5..0000000
--- a/po/ca.po
+++ /dev/null
@@ -1,1933 +0,0 @@
-# Catalan translations for yum package.
-# Copyright (C) 2008 Red Hat, Inc.
-# This file is distributed under the same license as the
-#  yum package.
-#
-# Josep Maria Brunetti Fernández <josepb at gmail.com>, 2008
-#
-# This file is translated according to the glossary and style guide of
-#   Softcatalà. If you plan to modify this file, please read first the page
-#   of the Catalan translation team for the Fedora project at:
-#   http://www.softcatala.org/projectes/fedora/
-#   and contact the previous translator
-#
-# Aquest fitxer s'ha de traduir d'acord amb el recull de termes i la guia
-#   d'estil de Softcatalà. Si voleu modificar aquest fitxer, llegiu si
-#   us plau la pàgina de catalanització del projecte Fedora a:
-#   http://www.softcatala.org/projectes/fedora/
-#   i contacteu l'anterior traductor/a.
-msgid ""
-msgstr ""
-"Project-Id-Version: yum\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-03-25 11:29+0100\n"
-"PO-Revision-Date: 2008-06-26 19:39+0200\n"
-"Last-Translator: Josep Maria Brunetti Fernández <josepb at gmail.com>\n"
-"Language-Team: Language-Team: Catalan <fedora at softcatala.net>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=n != 1;"
-
-#: ../callback.py:48 ../output.py:512
-msgid "Updating"
-msgstr "S'està actualitzant"
-
-#: ../callback.py:49
-msgid "Erasing"
-msgstr "S'està esborrant"
-
-#: ../callback.py:50 ../callback.py:51 ../callback.py:53 ../output.py:511
-msgid "Installing"
-msgstr "S'està instal·lant"
-
-#: ../callback.py:52 ../callback.py:58
-msgid "Obsoleted"
-msgstr "Obsolet"
-
-#: ../callback.py:54 ../output.py:558
-msgid "Updated"
-msgstr "Actualitzat"
-
-#: ../callback.py:55
-msgid "Erased"
-msgstr "Esborrat"
-
-#: ../callback.py:56 ../callback.py:57 ../callback.py:59 ../output.py:556
-msgid "Installed"
-msgstr "Instal·lat"
-
-#: ../callback.py:130
-msgid "No header - huh?"
-msgstr "No hi ha capçalera"
-
-#: ../callback.py:168
-msgid "Repackage"
-msgstr "Reempaqueta"
-
-#: ../callback.py:189
-#, python-format
-msgid "Error: invalid output state: %s for %s"
-msgstr "Error: estat de sortida invàlid: %s per a %s"
-
-#: ../callback.py:212
-#, python-format
-msgid "Erased: %s"
-msgstr "Esborrat: %s"
-
-#: ../callback.py:217 ../output.py:513
-msgid "Removing"
-msgstr "S'està esborrant"
-
-#: ../callback.py:219
-msgid "Cleanup"
-msgstr "Neteja"
-
-#: ../cli.py:103
-#, python-format
-msgid "Command \"%s\" already defined"
-msgstr "L'ordre «%s» ja està definida"
-
-#: ../cli.py:115
-msgid "Setting up repositories"
-msgstr "Configurant repositoris"
-
-#: ../cli.py:126
-msgid "Reading repository metadata in from local files"
-msgstr "S'estan llegint les metadades de repositoris des de fitxers locals"
-
-#: ../cli.py:183 ../utils.py:72
-#, python-format
-msgid "Config Error: %s"
-msgstr "Error de configuració: %s"
-
-#: ../cli.py:186 ../cli.py:1068 ../utils.py:75
-#, python-format
-msgid "Options Error: %s"
-msgstr "Error d'opcions: %s"
-
-#: ../cli.py:229
-msgid "You need to give some command"
-msgstr "Cal que doneu alguna ordre"
-
-#: ../cli.py:271
-msgid "Disk Requirements:\n"
-msgstr "Requeriments de disc:\n"
-
-#: ../cli.py:273
-#, python-format
-msgid "  At least %dMB needed on the %s filesystem.\n"
-msgstr "  Es necessiten almenys %dMB al sistema de fitxers %s.\n"
-
-#. TODO: simplify the dependency errors?
-#. Fixup the summary
-#: ../cli.py:278
-msgid ""
-"Error Summary\n"
-"-------------\n"
-msgstr "Resum d'errors\n"
-"-------------\n"
-
-#: ../cli.py:317
-msgid "Trying to run the transaction but nothing to do. Exiting."
-msgstr "S'ha intentat executar la transacció però no hi ha res a fer. S'està sortint."
-
-#: ../cli.py:347
-msgid "Exiting on user Command"
-msgstr "S'està sortint de l'ordre de l'usuari"
-
-#: ../cli.py:351
-msgid "Downloading Packages:"
-msgstr "S'estan descarregant els següents paquets:"
-
-#: ../cli.py:356
-msgid "Error Downloading Packages:\n"
-msgstr "S'ha produït un error descarregant els següents paquets:\n"
-
-#: ../cli.py:370 ../yum/__init__.py:2746
-msgid "Running rpm_check_debug"
-msgstr "S'està executant rpm_check_debug"
-
-#: ../cli.py:373 ../yum/__init__.py:2749
-msgid "ERROR with rpm_check_debug vs depsolve:"
-msgstr "ERROR amb rpm_check_debug vs depsolve:"
-
-#: ../cli.py:377 ../yum/__init__.py:2751
-msgid "Please report this error in bugzilla"
-msgstr "Siusplau, informeu d'aquest error al bugzilla"
-
-#: ../cli.py:383
-msgid "Running Transaction Test"
-msgstr "S'està executant la transacció de prova"
-
-#: ../cli.py:399
-msgid "Finished Transaction Test"
-msgstr "Ha acabat la transacció de prova"
-
-#: ../cli.py:401
-msgid "Transaction Check Error:\n"
-msgstr "S'ha produït un error en la transacció de prova:\n"
-
-#: ../cli.py:408
-msgid "Transaction Test Succeeded"
-msgstr "La transacció de prova ha acabat amb èxit"
-
-#: ../cli.py:429
-msgid "Running Transaction"
-msgstr "S'està executant la transacció"
-
-#: ../cli.py:459
-msgid ""
-"Refusing to automatically import keys when running unattended.\n"
-"Use \"-y\" to override."
-msgstr "No s'importaran automàticament les claus en una execució desatesa.\n"
-"Feu servir \"-y\" per a importar les claus."
-
-#: ../cli.py:491
-msgid "Parsing package install arguments"
-msgstr "S'estan analitzant els arguments del paquet a instal·lar"
-
-#: ../cli.py:501
-#, python-format
-msgid "No package %s available."
-msgstr "El paquet %s no està disponible"
-
-#: ../cli.py:505 ../cli.py:623 ../yumcommands.py:748
-msgid "Package(s) to install"
-msgstr "Paquets a instal·lar"
-
-#: ../cli.py:506 ../cli.py:624 ../yumcommands.py:146 ../yumcommands.py:749
-msgid "Nothing to do"
-msgstr "Res a fer"
-
-#: ../cli.py:536 ../yum/__init__.py:2232 ../yum/__init__.py:2311
-#: ../yum/__init__.py:2340
-#, python-format
-msgid "Not Updating Package that is already obsoleted: %s.%s %s:%s-%s"
-msgstr "No s'actualitzarà el paquet obsolet: %s.%s %s:%s-%s"
-
-#: ../cli.py:568
-#, python-format
-msgid "Could not find update match for %s"
-msgstr "No s'ha pogut trobar cap actualització per a %s"
-
-#: ../cli.py:580
-#, python-format
-msgid "%d packages marked for Update"
-msgstr "%d paquets marcats per a actualitzar"
-
-#: ../cli.py:583
-msgid "No Packages marked for Update"
-msgstr "No hi ha cap paquet marcat per a actualitzar"
-
-#: ../cli.py:599
-#, python-format
-msgid "%d packages marked for removal"
-msgstr "%d paquets marcats per a esborrar"
-
-#: ../cli.py:602
-msgid "No Packages marked for removal"
-msgstr "No hi ha cap paquet marcat per a esborrar"
-
-#: ../cli.py:614
-msgid "No Packages Provided"
-msgstr "No s'ha proporcionat cap paquet"
-
-#: ../cli.py:654
-msgid "Matching packages for package list to user args"
-msgstr "S'està comparant els paquets per a la llista de paquets amb els arguments de l'usuari"
-
-#: ../cli.py:701
-#, python-format
-msgid "Warning: No matches found for: %s"
-msgstr "Avís: no s'ha trobat cap coincidència per a: %s"
-
-#: ../cli.py:704
-msgid "No Matches found"
-msgstr "No s'ha trobat cap coincidència"
-
-#: ../cli.py:745
-#, python-format
-msgid "No Package Found for %s"
-msgstr "No s'ha trobat cap paquet per a %s"
-
-#: ../cli.py:757
-msgid "Cleaning up Everything"
-msgstr "S'està netejant tot"
-
-#: ../cli.py:771
-msgid "Cleaning up Headers"
-msgstr "S'estan netejant les capçaleres"
-
-#: ../cli.py:774
-msgid "Cleaning up Packages"
-msgstr "S'estan netejant els paquets"
-
-#: ../cli.py:777
-msgid "Cleaning up xml metadata"
-msgstr "S'estan netejant les metadades xml"
-
-#: ../cli.py:780
-msgid "Cleaning up database cache"
-msgstr "S'està netejant la memòria cau de la base de dades"
-
-#: ../cli.py:783
-msgid "Cleaning up expire-cache metadata"
-msgstr "S'està netejant la memòria cau de metadades que han vençut"
-
-#: ../cli.py:786
-msgid "Cleaning up plugins"
-msgstr "S'estan netejant les extensions"
-
-#: ../cli.py:807
-msgid "Installed Groups:"
-msgstr "Grups instal·lats:"
-
-#: ../cli.py:814
-msgid "Available Groups:"
-msgstr "Grups disponibles:"
-
-#: ../cli.py:820
-msgid "Done"
-msgstr "Fet"
-
-#: ../cli.py:829 ../cli.py:841 ../cli.py:847
-#, python-format
-msgid "Warning: Group %s does not exist."
-msgstr "Avís: El grup %s no existeix"
-
-#: ../cli.py:853
-msgid "No packages in any requested group available to install or update"
-msgstr "No hi ha cap paquet disponible per a instal·lar o actualitzar en els grups sol·licitats"
-
-#: ../cli.py:855
-#, python-format
-msgid "%d Package(s) to Install"
-msgstr "%d paquets a instal·lar"
-
-#: ../cli.py:865
-#, python-format
-msgid "No group named %s exists"
-msgstr "No existeix cap grup anomenat %s"
-
-#: ../cli.py:871
-msgid "No packages to remove from groups"
-msgstr "No hi ha cap paquet a esborrar dels grups"
-
-#: ../cli.py:873
-#, python-format
-msgid "%d Package(s) to remove"
-msgstr "%d paquets a esborrar"
-
-#: ../cli.py:915
-#, python-format
-msgid "Package %s is already installed, skipping"
-msgstr "El paquet %s ja està instal·lat, s'ometrà"
-
-#: ../cli.py:926
-#, python-format
-msgid "Discarding non-comparable pkg %s.%s"
-msgstr "S'està descartant el paquet no comparable %s.%s"
-
-#. we've not got any installed that match n or n+a
-#: ../cli.py:952
-#, python-format
-msgid "No other %s installed, adding to list for potential install"
-msgstr "No hi ha cap altre %s instal·lat, s'afegeix a la llista per a una possible instal·lació"
-
-#: ../cli.py:971
-#, python-format
-msgid "Command line error: %s"
-msgstr "Error en la línia d'ordres: %s"
-
-#: ../cli.py:1101
-msgid "be tolerant of errors"
-msgstr "sigues tolerant a errors"
-
-#: ../cli.py:1103
-msgid "run entirely from cache, don't update cache"
-msgstr "executa totalment des de la memòria cau, no actualitzis la memòria cau"
-
-#: ../cli.py:1105
-msgid "config file location"
-msgstr "ubicació del fitxer de configuració"
-
-#: ../cli.py:1107
-msgid "maximum command wait time"
-msgstr "temps màxim d'espera d'ordres"
-
-#: ../cli.py:1109
-msgid "debugging output level"
-msgstr "nivell de sortida de depuració"
-
-#: ../cli.py:1113
-msgid "show duplicates, in repos, in list/search commands"
-msgstr "mostra duplicats, en repositoris, en les ordres llista i cerca"
-
-#: ../cli.py:1115
-msgid "error output level"
-msgstr "error en el nivell de sortida"
-
-#: ../cli.py:1118
-msgid "quiet operation"
-msgstr "operació silenciosa"
-
-#: ../cli.py:1122
-msgid "answer yes for all questions"
-msgstr "respon sí a totes les preguntes"
-
-#: ../cli.py:1124
-msgid "show Yum version and exit"
-msgstr "mostra la versió de Yum i surt"
-
-#: ../cli.py:1125
-msgid "set install root"
-msgstr "estableix l'arrel de la instal·lació"
-
-#: ../cli.py:1129
-msgid "enable one or more repositories (wildcards allowed)"
-msgstr "habilita un o més repositoris (es permeten caràcters de reemplaçament)"
-
-#: ../cli.py:1133
-msgid "disable one or more repositories (wildcards allowed)"
-msgstr "deshabilita un o més repositoris (es permeten caràcters de reemplaçament)"
-
-#: ../cli.py:1136
-msgid "exclude package(s) by name or glob"
-msgstr "exclou els paquets per nom o expressió regular del glob"
-
-#: ../cli.py:1138
-msgid "disable exclude from main, for a repo or for everything"
-msgstr "deshabilita l'exclusió des de l'inici, per a un repositori o per a tot"
-
-#: ../cli.py:1141
-msgid "enable obsoletes processing during updates"
-msgstr "habilita el processament d'obsolets durant les actualitzacions"
-
-#: ../cli.py:1143
-msgid "disable Yum plugins"
-msgstr "deshabilita les extensions de Yum"
-
-#: ../cli.py:1145
-msgid "disable gpg signature checking"
-msgstr "deshabilita la comprobació de signatures gpg"
-
-#: ../cli.py:1147
-msgid "disable plugins by name"
-msgstr "deshabilita extensions per nom"
-
-#: ../cli.py:1150
-msgid "skip packages with depsolving problems"
-msgstr "omet paquets amb problemes de resolució de dependències"
-
-#: ../output.py:229
-msgid "Jan"
-msgstr "Gen"
-
-#: ../output.py:229
-msgid "Feb"
-msgstr "Feb"
-
-#: ../output.py:229
-msgid "Mar"
-msgstr "Mar"
-
-#: ../output.py:229
-msgid "Apr"
-msgstr "Abr"
-
-#: ../output.py:229
-msgid "May"
-msgstr "Mai"
-
-#: ../output.py:229
-msgid "Jun"
-msgstr "Jun"
-
-#: ../output.py:230
-msgid "Jul"
-msgstr "Jul"
-
-#: ../output.py:230
-msgid "Aug"
-msgstr "Ago"
-
-#: ../output.py:230
-msgid "Sep"
-msgstr "Set"
-
-#: ../output.py:230
-msgid "Oct"
-msgstr "Oct"
-
-#: ../output.py:230
-msgid "Nov"
-msgstr "Nov"
-
-#: ../output.py:230
-msgid "Dec"
-msgstr "Des"
-
-#: ../output.py:240
-msgid "Trying other mirror."
-msgstr "S'està intentant un altre servidor rèplica"
-
-#: ../output.py:293
-#, python-format
-msgid "Name       : %s"
-msgstr "Nom       : %s"
-
-#: ../output.py:294
-#, python-format
-msgid "Arch       : %s"
-msgstr "Arq       : %s"
-
-#: ../output.py:296
-#, python-format
-msgid "Epoch      : %s"
-msgstr "Època      : %s"
-
-#: ../output.py:297
-#, python-format
-msgid "Version    : %s"
-msgstr "Versió    : %s"
-
-#: ../output.py:298
-#, python-format
-msgid "Release    : %s"
-msgstr "Release    : %s"
-
-#: ../output.py:299
-#, python-format
-msgid "Size       : %s"
-msgstr "Mida       : %s"
-
-#: ../output.py:300
-#, python-format
-msgid "Repo       : %s"
-msgstr "Repo       : %s"
-
-#: ../output.py:302
-#, python-format
-msgid "Committer  : %s"
-msgstr "Desenvolupador  : %s"
-
-#: ../output.py:303
-msgid "Summary    : "
-msgstr "Resum    : "
-
-#: ../output.py:305
-#, python-format
-msgid "URL        : %s"
-msgstr "URL        : %s"
-
-#: ../output.py:306
-#, python-format
-msgid "License    : %s"
-msgstr "Llicència    : %s"
-
-#: ../output.py:307
-msgid "Description: "
-msgstr "Descripció: "
-
-#: ../output.py:351
-# REMEMBER to Translate [Y/N] to the current locale
-msgid "Is this ok [y/N]: "
-msgstr "És correcte [s/N]: "
-
-#: ../output.py:357 ../output.py:360
-msgid "y"
-msgstr "s"
-
-#: ../output.py:357
-msgid "n"
-msgstr "n"
-
-#: ../output.py:357 ../output.py:360
-msgid "yes"
-msgstr "sí"
-
-#: ../output.py:357
-msgid "no"
-msgstr "no"
-
-#: ../output.py:367
-#, python-format
-msgid ""
-"\n"
-"Group: %s"
-msgstr ""
-"\n"
-"Grup: %s"
-
-#: ../output.py:369
-#, python-format
-msgid " Description: %s"
-msgstr " Descripció: %s"
-
-#: ../output.py:371
-msgid " Mandatory Packages:"
-msgstr " Paquets obligatoris:"
-
-#: ../output.py:376
-msgid " Default Packages:"
-msgstr " Paquets per defecte:"
-
-#: ../output.py:381
-msgid " Optional Packages:"
-msgstr " Paquets opcionals:"
-
-#: ../output.py:386
-msgid " Conditional Packages:"
-msgstr " Paquets condicionals:"
-
-#: ../output.py:394
-#, python-format
-msgid "package: %s"
-msgstr "paquet: %s"
-
-#: ../output.py:396
-msgid "  No dependencies for this package"
-msgstr "  No hi ha dependències per a aquest paquet"
-
-#: ../output.py:401
-#, python-format
-msgid "  dependency: %s"
-msgstr "  dependència: %s"
-
-#: ../output.py:403
-msgid "   Unsatisfied dependency"
-msgstr "   Dependència insatisfeta"
-
-#: ../output.py:461
-msgid "Matched from:"
-msgstr "Coincidències amb:"
-
-#: ../output.py:487
-msgid "There was an error calculating total download size"
-msgstr "S'ha produït un error en calcular la mida total de la descàrrega"
-
-#: ../output.py:492
-#, python-format
-msgid "Total size: %s"
-msgstr "Mida total: %s"
-
-#: ../output.py:495
-#, python-format
-msgid "Total download size: %s"
-msgstr "Mida total de la descàrrega: %s"
-
-#: ../output.py:507
-msgid "Package"
-msgstr "Paquet"
-
-#: ../output.py:507
-msgid "Arch"
-msgstr "Arq"
-
-#: ../output.py:507
-msgid "Version"
-msgstr "Versió"
-
-#: ../output.py:507
-msgid "Repository"
-msgstr "Repositori"
-
-#: ../output.py:507
-msgid "Size"
-msgstr "Mida"
-
-#: ../output.py:514
-msgid "Installing for dependencies"
-msgstr "S'està instal·lant per dependències"
-
-#: ../output.py:515
-msgid "Updating for dependencies"
-msgstr "S'està actualitzant per dependències"
-
-#: ../output.py:516
-msgid "Removing for dependencies"
-msgstr "S'està esborrant per dependències"
-
-#: ../output.py:528
-#, python-format
-msgid ""
-"     replacing  %s.%s %s\n"
-"\n"
-msgstr ""
-"     s'està reemplaçant  %s.%s %s\n"
-"\n"
-
-#: ../output.py:536
-#, python-format
-msgid ""
-"\n"
-"Transaction Summary\n"
-"=============================================================================\n"
-"Install  %5.5s Package(s)         \n"
-"Update   %5.5s Package(s)         \n"
-"Remove   %5.5s Package(s)         \n"
-msgstr ""
-"\n"
-"Resum de transaccions\n"
-"=============================================================================\n"
-"Instal·la  %5.5s paquets\n"
-"Actualitza %5.5s paquets\n"
-"Esborra    %5.5s paquets\n"
-""
-
-#: ../output.py:554
-msgid "Removed"
-msgstr "Esborrat"
-
-#: ../output.py:555
-msgid "Dependency Removed"
-msgstr "Dependència esborrada"
-
-#: ../output.py:557
-msgid "Dependency Installed"
-msgstr "Dependència instal·lada"
-
-#: ../output.py:559
-msgid "Dependency Updated"
-msgstr "Dependència actualitzada"
-
-#: ../output.py:560
-msgid "Replaced"
-msgstr "Reemplaçat"
-
-#: ../output.py:618
-#, python-format
-msgid ""
-"\n"
-" Current download cancelled, %sinterrupt (ctrl-c) again%s within %s%s%s "
-"seconds to exit.\n"
-msgstr ""
-"\n"
-"S'ha cancel·lat la descàrrega actual, %sinterromp (crtl-c) de nou%s en %s%s%s "
-"segons per a sortir.\n"
-
-#: ../output.py:628
-msgid "user interrupt"
-msgstr "interrupció de l'usuari"
-
-#: ../output.py:639
-msgid "installed"
-msgstr "instal·lat"
-
-#: ../output.py:640
-msgid "updated"
-msgstr "actualitzat"
-
-#: ../output.py:641
-msgid "obsoleted"
-msgstr "obsolet"
-
-#: ../output.py:642
-msgid "erased"
-msgstr "esborrat"
-
-#: ../output.py:646
-#, python-format
-msgid "---> Package %s.%s %s:%s-%s set to be %s"
-msgstr "---> Paquet %s.%s %s:%s-%s passarà a ser %s"
-
-#: ../output.py:653
-msgid "--> Running transaction check"
-msgstr "--> S'està executant la transacció de prova"
-
-#: ../output.py:658
-msgid "--> Restarting Dependency Resolution with new changes."
-msgstr "--> Tornant a calcular la resolució de dependències amb els nous canvis."
-
-#: ../output.py:663
-msgid "--> Finished Dependency Resolution"
-msgstr "--> Ha finalitzat la resolució de dependències"
-
-#: ../output.py:668
-#, python-format
-msgid "--> Processing Dependency: %s for package: %s"
-msgstr "--> S'està processant la dependència %s per al paquet: %s"
-
-#: ../output.py:673
-#, python-format
-msgid "--> Unresolved Dependency: %s"
-msgstr "--> Dependència no resolta: %s"
-
-#: ../output.py:679
-#, python-format
-msgid "--> Processing Conflict: %s conflicts %s"
-msgstr "--> S'està processant el conflicte: %s té un conflicte amb %s"
-
-#: ../output.py:682
-msgid "--> Populating transaction set with selected packages. Please wait."
-msgstr "--> S'està poblant la transacció amb els paquets sel·leccionats. Si us plau, espereu."
-
-#: ../output.py:686
-#, python-format
-msgid "---> Downloading header for %s to pack into transaction set."
-msgstr "---> S'està descarregant la capçalera per a %s per a empaquetar dins de la transacció de prova."
-
-#: ../yumcommands.py:36
-msgid "You need to be root to perform this command."
-msgstr "Heu de ser root per a executar aquesta ordre."
-
-#: ../yumcommands.py:43
-msgid ""
-"\n"
-"You have enabled checking of packages via GPG keys. This is a good thing. \n"
-"However, you do not have any GPG public keys installed. You need to "
-"download\n"
-"the keys for packages you wish to install and install them.\n"
-"You can do that by running the command:\n"
-"    rpm --import public.gpg.key\n"
-"\n"
-"\n"
-"Alternatively you can specify the url to the key you would like to use\n"
-"for a repository in the 'gpgkey' option in a repository section and yum \n"
-"will install it for you.\n"
-"\n"
-"For more information contact your distribution or package provider.\n"
-msgstr ""
-"\n"
-"Heu habilitat la comprovació de paquets utilitzant claus GPG. És una bona opció. \n"
-"No obstant, no teniu cap clau pública GPG instal·lada. Necessiteu "
-"descarregar\n"
-"les claus per als paquets paquets que desitdeu instal·lar i instal·lar-les.\n"
-"Podeu fer-ho executant l'ordre:\n"
-"    rpm --import clau.pública.gpg\n"
-"\n"
-"\n"
-"També podeu especificar la url de la clau que voleu utilitzar\n"
-"per a un repositori en l'opció 'gpgkey' en la secció d'un repositori i yum \n"
-"la instal·larà per vosaltres.\n"
-"\n"
-"Per a més informació contacteu el vostre distribuidor o proveïdor de paquets.\n"
-
-#: ../yumcommands.py:63
-#, python-format
-msgid "Error: Need to pass a list of pkgs to %s"
-msgstr "Error: es necessita passar una llista de paquets a %s"
-
-#: ../yumcommands.py:69
-msgid "Error: Need an item to match"
-msgstr "Error: es necessita algun element per comparar"
-
-#: ../yumcommands.py:75
-msgid "Error: Need a group or list of groups"
-msgstr "Error: es necessita un grup o una llista de grups"
-
-#: ../yumcommands.py:84
-#, python-format
-msgid "Error: clean requires an option: %s"
-msgstr "Error: la neteja requereix una opció: %s"
-
-#: ../yumcommands.py:89
-#, python-format
-msgid "Error: invalid clean argument: %r"
-msgstr "Error: argument invàlid per a la neteja: %r"
-
-#: ../yumcommands.py:102
-msgid "No argument to shell"
-msgstr "No hi ha arguments per a l'intèrpret d'ordres"
-
-#: ../yumcommands.py:105
-#, python-format
-msgid "Filename passed to shell: %s"
-msgstr "Nom del fitxer passat a l'intèrpret d'ordres: %s"
-
-#: ../yumcommands.py:109
-#, python-format
-msgid "File %s given as argument to shell does not exist."
-msgstr "El fitxer %s donat com a argument a l'intèrpret d'ordres no existeix."
-
-#: ../yumcommands.py:115
-msgid "Error: more than one file given as argument to shell."
-msgstr "Error: s'ha donat més d'un fitxer com a arguments per a l'intèrpret d'ordres."
-
-#: ../yumcommands.py:156
-msgid "PACKAGE..."
-msgstr "PAQUET..."
-
-#: ../yumcommands.py:159
-msgid "Install a package or packages on your system"
-msgstr "Instal·la un o més paquets al vostre sistema"
-
-#: ../yumcommands.py:168
-msgid "Setting up Install Process"
-msgstr "S'està preparant el procés d'instal·lació"
-
-#: ../yumcommands.py:179
-msgid "[PACKAGE...]"
-msgstr "[PAQUET...]"
-
-#: ../yumcommands.py:182
-msgid "Update a package or packages on your system"
-msgstr "S'ha actualitzat un o més paquets al vostre sistema"
-
-#: ../yumcommands.py:190
-msgid "Setting up Update Process"
-msgstr "S'està preparant el procés d'actualització"
-
-#: ../yumcommands.py:204
-msgid "Display details about a package or group of packages"
-msgstr "Mostra detalls sobre un paquet o un grup de paquets"
-
-#: ../yumcommands.py:212
-msgid "Installed Packages"
-msgstr "Paquets instal·lats"
-
-#: ../yumcommands.py:213
-msgid "Available Packages"
-msgstr "Paquets disponibles"
-
-#: ../yumcommands.py:214
-msgid "Extra Packages"
-msgstr "Paquets extra"
-
-#: ../yumcommands.py:215
-msgid "Updated Packages"
-msgstr "Paquets actualitzats"
-
-#: ../yumcommands.py:221 ../yumcommands.py:225
-msgid "Obsoleting Packages"
-msgstr "Paquets fets obsolets"
-
-#: ../yumcommands.py:226
-msgid "Recently Added Packages"
-msgstr "Paquets recentment afegits"
-
-#: ../yumcommands.py:232
-msgid "No matching Packages to list"
-msgstr "No hi ha paquets coincidents per llistar"
-
-#: ../yumcommands.py:246
-msgid "List a package or groups of packages"
-msgstr "Llista un paquet o un grup de paquets"
-
-#: ../yumcommands.py:258
-msgid "Remove a package or packages from your system"
-msgstr "Esborra un o més paquets del vostre sistema"
-
-#: ../yumcommands.py:266
-msgid "Setting up Remove Process"
-msgstr "S'està preparant el procés d'esborrat"
-
-#: ../yumcommands.py:278
-msgid "Setting up Group Process"
-msgstr "S'està preparant el procés de grup"
-
-#: ../yumcommands.py:284
-msgid "No Groups on which to run command"
-msgstr "No hi ha cap grup on executar l'ordre"
-
-#: ../yumcommands.py:297
-msgid "List available package groups"
-msgstr "Llista els grups de paquets disponibles"
-
-#: ../yumcommands.py:314
-msgid "Install the packages in a group on your system"
-msgstr "Instal·la els paquets en un grup en el vostre sistema"
-
-#: ../yumcommands.py:336
-msgid "Remove the packages in a group from your system"
-msgstr "Esborra els paquets en un grup en el vostre sistema"
-
-#: ../yumcommands.py:360
-msgid "Display details about a package group"
-msgstr "Mostra detalls sobre un grup de paquets"
-
-#: ../yumcommands.py:384
-msgid "Generate the metadata cache"
-msgstr "Genera les metadades de la memòria cau"
-
-#: ../yumcommands.py:390
-msgid "Making cache files for all metadata files."
-msgstr "S'estan fent els fitxers de memòria cau per a tots els fitxers de metadades."
-
-#: ../yumcommands.py:391
-msgid "This may take a while depending on the speed of this computer"
-msgstr "Això pot trigar una estona depenent de la velocitat d'aquest ordinador"
-
-#: ../yumcommands.py:412
-msgid "Metadata Cache Created"
-msgstr "S'han creat les metadades per a la memòria cau"
-
-#: ../yumcommands.py:426
-msgid "Remove cached data"
-msgstr "S'han esborrat les dades de la memòria cau"
-
-#: ../yumcommands.py:447
-msgid "Find what package provides the given value"
-msgstr "Troba quin paquet proporciona el valor donat"
-
-#: ../yumcommands.py:467
-msgid "Check for available package updates"
-msgstr "Comprova si hi ha actualitzacions de paquets disponibles"
-
-#: ../yumcommands.py:490
-msgid "Search package details for the given string"
-msgstr "Busca detalls del paquet per la cadena donada"
-
-#: ../yumcommands.py:496
-msgid "Searching Packages: "
-msgstr "S'estan buscant paquets: "
-
-#: ../yumcommands.py:513
-msgid "Update packages taking obsoletes into account"
-msgstr "Actualitza paquets tenint en compte els obsolets"
-
-#: ../yumcommands.py:522
-msgid "Setting up Upgrade Process"
-msgstr "S'està preparant el procés d'actualització"
-
-#: ../yumcommands.py:536
-msgid "Install a local RPM"
-msgstr "Instal·la un RPM local"
-
-#: ../yumcommands.py:545
-msgid "Setting up Local Package Process"
-msgstr "S'està configurant el procés local de paquets"
-
-#: ../yumcommands.py:564
-msgid "Determine which package provides the given dependency"
-msgstr "Determina quin paquet satisfà la dependència donada"
-
-#: ../yumcommands.py:567
-msgid "Searching Packages for Dependency:"
-msgstr "S'estan buscant paquets per a la dependència:"
-
-#: ../yumcommands.py:581
-msgid "Run an interactive yum shell"
-msgstr "Executa un intèrpret d'ordres interactiu de yum"
-
-#: ../yumcommands.py:587
-msgid "Setting up Yum Shell"
-msgstr "S'està preparant l'intèrpret d'ordres de yum"
-
-#: ../yumcommands.py:605
-msgid "List a package's dependencies"
-msgstr "Llista les dependències d'un paquet"
-
-#: ../yumcommands.py:611
-msgid "Finding dependencies: "
-msgstr "S'estan trobant dependències: "
-
-#: ../yumcommands.py:627
-msgid "Display the configured software repositories"
-msgstr "Mostra els repositoris de programari configurats"
-
-#: ../yumcommands.py:645
-msgid "repo id"
-msgstr "id repo"
-
-#: ../yumcommands.py:645
-msgid "repo name"
-msgstr "nom repo"
-
-#: ../yumcommands.py:645
-msgid "status"
-msgstr "estat"
-
-#: ../yumcommands.py:651
-msgid "enabled"
-msgstr "habilitat"
-
-#: ../yumcommands.py:654
-msgid "disabled"
-msgstr "deshabilitat"
-
-#: ../yumcommands.py:671
-msgid "Display a helpful usage message"
-msgstr "Mostra un missatge d'ajuda d'ús"
-
-#: ../yumcommands.py:705
-#, python-format
-msgid "No help available for %s"
-msgstr "No hi ha ajuda disponible per a %s"
-
-#: ../yumcommands.py:710
-msgid ""
-"\n"
-"\n"
-"aliases: "
-msgstr ""
-"\n"
-"\n"
-"àlies: "
-
-#: ../yumcommands.py:712
-msgid ""
-"\n"
-"\n"
-"alias: "
-msgstr ""
-"\n"
-"\n"
-"àlies: "
-
-#: ../yumcommands.py:741
-msgid "Setting up Reinstall Process"
-msgstr "S'està preparant el procés de reinstal·lació"
-
-#: ../yumcommands.py:755
-msgid "reinstall a package"
-msgstr "reinstal·la un paquet"
-
-#: ../yummain.py:41
-msgid ""
-"\n"
-"\n"
-"Exiting on user cancel"
-msgstr ""
-"\n"
-"\n"
-"S'està sortint per la cancel·lació de l'usuari"
-
-#: ../yummain.py:47
-msgid ""
-"\n"
-"\n"
-"Exiting on Broken Pipe"
-msgstr ""
-"\n"
-"\n"
-"S'està sortint en trobar la canonada trencada"
-
-#: ../yummain.py:105
-msgid ""
-"Another app is currently holding the yum lock; waiting for it to exit..."
-msgstr ""
-"Alguna altra aplicació té el bloqueig del yum; s'està esperant a que surti..."
-
-#: ../yummain.py:132 ../yummain.py:171
-#, python-format
-msgid "Error: %s"
-msgstr "Error: %s"
-
-#: ../yummain.py:142 ../yummain.py:178
-#, python-format
-msgid "Unknown Error(s): Exit Code: %d:"
-msgstr "Errors desconeguts: Codi de sortida: %d:"
-
-#. Depsolve stage
-#: ../yummain.py:149
-msgid "Resolving Dependencies"
-msgstr "S'estan resolent dependències"
-
-#: ../yummain.py:184
-msgid ""
-"\n"
-"Dependencies Resolved"
-msgstr ""
-"\n"
-"Dependències resoltes"
-
-#: ../yummain.py:198
-msgid "Complete!"
-msgstr "Completat!"
-
-#: ../yummain.py:245
-msgid ""
-"\n"
-"\n"
-"Exiting on user cancel."
-msgstr ""
-"\n"
-"\n"
-"S'està sortint de l'ordre de l'usuari."
-
-#: ../yum/depsolve.py:82
-msgid "doTsSetup() will go away in a future version of Yum.\n"
-msgstr "doTsSetup() desapareixerà en una futura versió de Yum.\n"
-
-#: ../yum/depsolve.py:95
-msgid "Setting up TransactionSets before config class is up"
-msgstr "S'està configurant TransactionSets abans que la classe de configuració "
-"estigui iniciada"
-
-#: ../yum/depsolve.py:136
-#, python-format
-msgid "Invalid tsflag in config file: %s"
-msgstr "Tsflag invàlid en el fitxer de configuració: %s"
-
-#: ../yum/depsolve.py:147
-#, python-format
-msgid "Searching pkgSack for dep: %s"
-msgstr "S'està buscant pkgSack per a la dependència: %s"
-
-#: ../yum/depsolve.py:170
-#, python-format
-msgid "Potential match for %s from %s"
-msgstr "Coincidència potencial per a %s de %s"
-
-#: ../yum/depsolve.py:178
-#, python-format
-msgid "Matched %s to require for %s"
-msgstr "La coincidència %s es requereix per a %s"
-
-#: ../yum/depsolve.py:219
-#, python-format
-msgid "Member: %s"
-msgstr "Membre: %s"
-
-#: ../yum/depsolve.py:233 ../yum/depsolve.py:696
-#, python-format
-msgid "%s converted to install"
-msgstr "%s convertits per a instal·lar"
-
-#: ../yum/depsolve.py:240
-#, python-format
-msgid "Adding Package %s in mode %s"
-msgstr "S'està afegint el paquet %s en mode %s"
-
-#: ../yum/depsolve.py:250
-#, python-format
-msgid "Removing Package %s"
-msgstr "S'està esborrant el paquet %s"
-
-#: ../yum/depsolve.py:261
-#, python-format
-msgid "%s requires: %s"
-msgstr "%s requereix: %s"
-
-#: ../yum/depsolve.py:312
-msgid "Needed Require has already been looked up, cheating"
-msgstr "El requeriment necessari ja s'ha buscat anteriorment, s'estan fent trampes"
-
-#: ../yum/depsolve.py:322
-#, python-format
-msgid "Needed Require is not a package name. Looking up: %s"
-msgstr "El requeriment necessari no és un nom de paquet. S'està buscant: %s"
-
-#: ../yum/depsolve.py:329
-#, python-format
-msgid "Potential Provider: %s"
-msgstr "Proveïdor potencial: %s"
-
-#: ../yum/depsolve.py:352
-#, python-format
-msgid "Mode is %s for provider of %s: %s"
-msgstr "El mode és %s per al proveïdor de %s: %s"
-
-#: ../yum/depsolve.py:356
-#, python-format
-msgid "Mode for pkg providing %s: %s"
-msgstr "Mode per al paquet que proporciona %s: %s"
-
-#: ../yum/depsolve.py:360
-#, python-format
-msgid "TSINFO: %s package requiring %s marked as erase"
-msgstr "TSINFO: el paquet %s requereix %s marcat per a esborrar"
-
-#: ../yum/depsolve.py:372
-#, python-format
-msgid "TSINFO: Obsoleting %s with %s to resolve dep."
-msgstr "TSINFO: S'està marcant com a obsolet %s amb %s per resoldre dependències."
-
-#: ../yum/depsolve.py:375
-#, python-format
-msgid "TSINFO: Updating %s to resolve dep."
-msgstr "TSINFO: S'està actualitzant %s per a resoldre dependències."
-
-#: ../yum/depsolve.py:378
-#, python-format
-msgid "Cannot find an update path for dep for: %s"
-msgstr "No es pot trobar un camí d'actualització de dependències per a: %s"
-
-#: ../yum/depsolve.py:388
-#, python-format
-msgid "Unresolvable requirement %s for %s"
-msgstr "No es pot resoldre el requeriment %s per a %s"
-
-#. is it already installed?
-#: ../yum/depsolve.py:434
-#, python-format
-msgid "%s is in providing packages but it is already installed, removing."
-msgstr "%s es troba en els paquets proporcionats però ja es troba instal·lat, s'està esborrant."
-
-#: ../yum/depsolve.py:449
-#, python-format
-msgid "Potential resolving package %s has newer instance in ts."
-msgstr "El paquet potencial que resol dependències %s té una instància nova a ts"
-
-#: ../yum/depsolve.py:460
-#, python-format
-msgid "Potential resolving package %s has newer instance installed."
-msgstr "El paquet potencial que resol dependències %s té una nova instància insta·lada."
-
-#: ../yum/depsolve.py:468 ../yum/depsolve.py:527
-#, python-format
-msgid "Missing Dependency: %s is needed by package %s"
-msgstr "La dependència que falta: %s es necessita per al paquet %s"
-
-#: ../yum/depsolve.py:481
-#, python-format
-msgid "%s already in ts, skipping this one"
-msgstr "%s ja es troba en ts, s'està ometent"
-
-#: ../yum/depsolve.py:510
-#, python-format
-msgid ""
-"Failure finding best provider of %s for %s, exceeded maximum loop length"
-msgstr ""
-"S'ha produït un error trobant el millor proveïdor de %s per a %s, el bucle ha excedit la longitud màxima"
-
-#: ../yum/depsolve.py:537
-#, python-format
-msgid "TSINFO: Marking %s as update for %s"
-msgstr "TSINFO: S'està marcant %s com a actualització per a %s"
-
-#: ../yum/depsolve.py:544
-#, python-format
-msgid "TSINFO: Marking %s as install for %s"
-msgstr "TSINFO: S'està marcant %s com a instal·lació per a %s"
-
-#: ../yum/depsolve.py:635 ../yum/depsolve.py:714
-msgid "Success - empty transaction"
-msgstr "Èxit - transacció buida"
-
-#: ../yum/depsolve.py:673 ../yum/depsolve.py:686
-msgid "Restarting Loop"
-msgstr "S'està recomençant el bucle"
-
-#: ../yum/depsolve.py:702
-msgid "Dependency Process ending"
-msgstr "Està acabant el procés de dependències"
-
-#: ../yum/depsolve.py:708
-#, python-format
-msgid "%s from %s has depsolving problems"
-msgstr "%s de %s té problemes resolent dependències"
-
-#: ../yum/depsolve.py:715
-msgid "Success - deps resolved"
-msgstr "Èxit - dependències resoltes"
-
-#: ../yum/depsolve.py:729
-#, python-format
-msgid "Checking deps for %s"
-msgstr "S'estan comprobant les dependències per a %s"
-
-#: ../yum/depsolve.py:782
-#, python-format
-msgid "looking for %s as a requirement of %s"
-msgstr "s'està buscant %s com a requeriment de %s"
-
-#: ../yum/depsolve.py:933
-#, python-format
-msgid "Comparing best: %s to po: %s"
-msgstr "S'està comparant el millor: %s amb po: %s"
-
-#: ../yum/depsolve.py:937
-#, python-format
-msgid "Same: best %s == po: %s"
-msgstr "Igual: el millor %s == po: %s"
-
-#: ../yum/depsolve.py:952 ../yum/depsolve.py:963
-#, python-format
-msgid "best %s obsoletes po: %s"
-msgstr "el millor %s deixa com a obsolet el po: %s"
-
-#: ../yum/depsolve.py:955
-#, python-format
-msgid "po %s obsoletes best: %s"
-msgstr "el po %s deixa com a obsolet el millor: %s"
-
-#: ../yum/depsolve.py:972 ../yum/depsolve.py:979 ../yum/depsolve.py:1036
-#, python-format
-msgid "better arch in po %s"
-msgstr "millor arq en el po %s"
-
-#: ../yum/depsolve.py:988 ../yum/depsolve.py:1010
-#, python-format
-msgid "po %s shares a sourcerpm with %s"
-msgstr "el po %s comparteix un rpm origen amb %s"
-
-#: ../yum/depsolve.py:992 ../yum/depsolve.py:1015
-#, python-format
-msgid "best %s shares a sourcerpm with %s"
-msgstr "el millor %s comparteix un rpm origen amb %s"
-
-#: ../yum/depsolve.py:999 ../yum/depsolve.py:1020
-#, python-format
-msgid "po %s shares more of the name prefix with %s"
-msgstr "el po %s comparteix més que el prefix del nom amb %s"
-
-#: ../yum/depsolve.py:1003 ../yum/depsolve.py:1029
-#, python-format
-msgid "po %s has a shorter name than best %s"
-msgstr "el po %s té un nom més curt que el millor %s"
-
-#: ../yum/depsolve.py:1025
-#, python-format
-msgid "bestpkg %s shares more of the name prefix with %s"
-msgstr "el millor paquet %s comparteix més el prefix del nom amb %s"
-
-#: ../yum/__init__.py:119
-msgid "doConfigSetup() will go away in a future version of Yum.\n"
-msgstr "doConfigsetup() desapareixerà en una futura versió de Yum.\n"
-
-#: ../yum/__init__.py:296
-#, python-format
-msgid "Repository %r is missing name in configuration, using id"
-msgstr "Falta el nom del repositori %r en la configuració, s'utilitzarà l'id"
-
-#: ../yum/__init__.py:332
-msgid "plugins already initialised"
-msgstr "els connectors ja estan inicialitzats"
-
-#: ../yum/__init__.py:339
-msgid "doRpmDBSetup() will go away in a future version of Yum.\n"
-msgstr "doRpmDBSetup() desapareixerà en una futura versió de Yum.\n"
-
-#: ../yum/__init__.py:349
-msgid "Reading Local RPMDB"
-msgstr "S'està llegint un RPMDB local"
-
-#: ../yum/__init__.py:367
-msgid "doRepoSetup() will go away in a future version of Yum.\n"
-msgstr "doRepoSetup() desapareixerà en una futura versió de Yum.\n"
-
-#: ../yum/__init__.py:387
-msgid "doSackSetup() will go away in a future version of Yum.\n"
-msgstr "doSackSetup() desapareixerà en una versió futura de Yum.\n"
-
-#: ../yum/__init__.py:404
-msgid "Setting up Package Sacks"
-msgstr "S'estan configurant els sacs de paquets"
-
-#: ../yum/__init__.py:447
-#, python-format
-msgid "repo object for repo %s lacks a _resetSack method\n"
-msgstr "l'objecte repositori per al repositori %s no té un mètode _resetSack\n"
-
-#: ../yum/__init__.py:448
-msgid "therefore this repo cannot be reset.\n"
-msgstr "Aquest repositori no es pot reiniciar.\n"
-
-#: ../yum/__init__.py:453
-msgid "doUpdateSetup() will go away in a future version of Yum.\n"
-msgstr "doUpdateSetup() desapareixerà en una futura versió de Yum.\n"
-
-#: ../yum/__init__.py:465
-msgid "Building updates object"
-msgstr "S'està construint l'objecte d'actualitzacions"
-
-#: ../yum/__init__.py:496
-msgid "doGroupSetup() will go away in a future version of Yum.\n"
-msgstr "doGroupSetup() desapareixerà en una futura versió de Yum.\n"
-
-#: ../yum/__init__.py:520
-msgid "Getting group metadata"
-msgstr "S'estan obtenint les metadades del grup"
-
-#: ../yum/__init__.py:546
-#, python-format
-msgid "Adding group file from repository: %s"
-msgstr "S'està afegint el fitxer del grup des del repositori: %s"
-
-#: ../yum/__init__.py:555
-#, python-format
-msgid "Failed to add groups file for repository: %s - %s"
-msgstr "No s'ha pogut afegir el fitxer dels grups des del repositori: %s - %s"
-
-#: ../yum/__init__.py:561
-msgid "No Groups Available in any repository"
-msgstr "No hi ha cap grup disponible en cap repositori"
-
-#: ../yum/__init__.py:611
-msgid "Importing additional filelist information"
-msgstr "S'està important informació adicional de la llista de fitxers"
-
-#: ../yum/__init__.py:657
-#, python-format
-msgid "Skip-broken round %i"
-msgstr "Intent %i d'omissió dels trencats"
-
-#: ../yum/__init__.py:680
-#, python-format
-msgid "Skip-broken took %i rounds "
-msgstr "L'omisió dels trencats ha necessitat %i intents"
-
-#: ../yum/__init__.py:681
-msgid ""
-"\n"
-"Packages skipped because of dependency problems:"
-msgstr ""
-"\n"
-"Paquets omesos degut a problemes de dependències:"
-
-#: ../yum/__init__.py:685
-#, python-format
-msgid "    %s from %s"
-msgstr "    %s des de %s"
-
-#: ../yum/__init__.py:774
-#, python-format
-msgid "Failed to remove transaction file %s"
-msgstr "No s'ha pogut esborrar el fitxer de transaccions %s"
-
-#: ../yum/__init__.py:814
-#, python-format
-msgid "excluding for cost: %s from %s"
-msgstr "s'està excloent per cost: %s de %s"
-
-#: ../yum/__init__.py:845
-msgid "Excluding Packages in global exclude list"
-msgstr "S'estan excloent paquets en la llista global d'exclusió"
-
-#: ../yum/__init__.py:847
-#, python-format
-msgid "Excluding Packages from %s"
-msgstr "S'estan excloent paquets de %s"
-
-#: ../yum/__init__.py:875
-#, python-format
-msgid "Reducing %s to included packages only"
-msgstr "S'està reduint %s únicament a paquets inclosos."
-
-#: ../yum/__init__.py:880
-#, python-format
-msgid "Keeping included package %s"
-msgstr "S'està mantenint el paquet inclòs %s"
-
-#: ../yum/__init__.py:886
-#, python-format
-msgid "Removing unmatched package %s"
-msgstr "S'està esborrant el paquet sense coincidències %s"
-
-#: ../yum/__init__.py:889
-msgid "Finished"
-msgstr "Finalitzat"
-
-#. Whoa. What the heck happened?
-#: ../yum/__init__.py:919
-#, python-format
-msgid "Unable to check if PID %s is active"
-msgstr "No s'ha pogut comprovar si el PID %s es troba actiu"
-
-#. Another copy seems to be running.
-#: ../yum/__init__.py:923
-#, python-format
-msgid "Existing lock %s: another copy is running as pid %s."
-msgstr "Bloqueig existent %s: una altra còpia s'està executant amb pid %s."
-
-#: ../yum/__init__.py:970 ../yum/__init__.py:977
-msgid "Package does not match intended download"
-msgstr "El paquet no coincideix amb la descàrrega intentada"
-
-#: ../yum/__init__.py:991
-msgid "Could not perform checksum"
-msgstr "No s'ha pogut realitzar la suma de verificació"
-
-#: ../yum/__init__.py:994
-msgid "Package does not match checksum"
-msgstr "No coincideix la suma de verificació del paquet"
-
-#: ../yum/__init__.py:1036
-#, python-format
-msgid "package fails checksum but caching is enabled for %s"
-msgstr "la suma de verificació del paquet falla però l'ús de memòria cau està habilitat per a %s"
-
-#: ../yum/__init__.py:1042
-#, python-format
-msgid "using local copy of %s"
-msgstr "s'està utilitzant la còpia local de %s"
-
-#: ../yum/__init__.py:1061
-#, python-format
-msgid "Insufficient space in download directory %s to download"
-msgstr "No hi ha espai suficient al directori de descàrregues %s per a descarregar"
-
-#: ../yum/__init__.py:1094
-msgid "Header is not complete."
-msgstr "La capçalera no està completa."
-
-#: ../yum/__init__.py:1134
-#, python-format
-msgid ""
-"Header not in local cache and caching-only mode enabled. Cannot download %s"
-msgstr ""
-"La capçalera no es troba en la memòria cau local i està habilitat el mode de només memòria cau. No es pot descarregar %s"
-
-#: ../yum/__init__.py:1189
-#, python-format
-msgid "Public key for %s is not installed"
-msgstr "La clau pública per a %s no està instal·lada"
-
-#: ../yum/__init__.py:1193
-#, python-format
-msgid "Problem opening package %s"
-msgstr "Hi ha hagut un problema obrint el paquet %s"
-
-#: ../yum/__init__.py:1201
-#, python-format
-msgid "Public key for %s is not trusted"
-msgstr "La clau pública per a %s no és de confiança"
-
-#: ../yum/__init__.py:1205
-#, python-format
-msgid "Package %s is not signed"
-msgstr "El paquet %s no està signat"
-
-#: ../yum/__init__.py:1243
-#, python-format
-msgid "Cannot remove %s"
-msgstr "No es pot esborrar %s"
-
-#: ../yum/__init__.py:1247
-#, python-format
-msgid "%s removed"
-msgstr "S'ha esborrat %s"
-
-#: ../yum/__init__.py:1283
-#, python-format
-msgid "Cannot remove %s file %s"
-msgstr "No es pot esborrar %s fitxer %s"
-
-#: ../yum/__init__.py:1287
-#, python-format
-msgid "%s file %s removed"
-msgstr "%s fitxer %s esborrat"
-
-#: ../yum/__init__.py:1289
-#, python-format
-msgid "%d %s files removed"
-msgstr "%d %s fitxers esborrats"
-
-#: ../yum/__init__.py:1329
-#, python-format
-msgid "More than one identical match in sack for %s"
-msgstr "Hi ha més d'una coincidència idèntica en el sac per a %s"
-
-#: ../yum/__init__.py:1335
-#, python-format
-msgid "Nothing matches %s.%s %s:%s-%s from update"
-msgstr "No hi ha coincidències %s.%s-%s:%s-%s de l'actualització"
-
-#: ../yum/__init__.py:1543
-msgid ""
-"searchPackages() will go away in a future version of "
-"Yum.                      Use searchGenerator() instead. \n"
-msgstr ""
-"searchPackages() desapareixerà en una futura versió de "
-"Yum.                      Useu searchGenerator(). \n"
-
-#: ../yum/__init__.py:1580
-#, python-format
-msgid "Searching %d packages"
-msgstr "S'estan buscant %d paquets"
-
-#: ../yum/__init__.py:1584
-#, python-format
-msgid "searching package %s"
-msgstr "s'està buscant el paquet %s"
-
-#: ../yum/__init__.py:1596
-msgid "searching in file entries"
-msgstr "s'està buscant en les entrades de fitxers"
-
-#: ../yum/__init__.py:1603
-msgid "searching in provides entries"
-msgstr "s'està buscant en les entrades proporcionades"
-
-#: ../yum/__init__.py:1633
-#, python-format
-msgid "Provides-match: %s"
-msgstr "Proporciona-coincideix: %s"
-
-#: ../yum/__init__.py:1702 ../yum/__init__.py:1720 ../yum/__init__.py:1748
-#: ../yum/__init__.py:1753 ../yum/__init__.py:1808 ../yum/__init__.py:1812
-#, python-format
-msgid "No Group named %s exists"
-msgstr "No existeix cap grup anomenat %s"
-
-#: ../yum/__init__.py:1731 ../yum/__init__.py:1824
-#, python-format
-msgid "package %s was not marked in group %s"
-msgstr "el paquet %s no estava marcat en el grup %s"
-
-#: ../yum/__init__.py:1770
-#, python-format
-msgid "Adding package %s from group %s"
-msgstr "S'està afegint el paquet %s del grup %s"
-
-#: ../yum/__init__.py:1774
-#, python-format
-msgid "No package named %s available to be installed"
-msgstr "No hi ha cap paquet anomenat %s disponible per a ser instal·lat"
-
-#: ../yum/__init__.py:1849
-#, python-format
-msgid "Package tuple %s could not be found in packagesack"
-msgstr "No s'ha pogut trobar la tupla de paquets %s al sac de paquets"
-
-#: ../yum/__init__.py:1917 ../yum/__init__.py:1960
-msgid "Invalid versioned dependency string, try quoting it."
-msgstr "La cadena de versió de dependència és invàlida, proveu-ho entre cometes."
-
-#: ../yum/__init__.py:1919 ../yum/__init__.py:1962
-msgid "Invalid version flag"
-msgstr "Versió de flag invàlida"
-
-#: ../yum/__init__.py:1934 ../yum/__init__.py:1938
-#, python-format
-msgid "No Package found for %s"
-msgstr "No s'ha trobat cap paquet per a %s"
-
-#: ../yum/__init__.py:2066
-msgid "Package Object was not a package object instance"
-msgstr "L'objecte paquet no era una instància d'objecte paquet"
-
-#: ../yum/__init__.py:2070
-msgid "Nothing specified to install"
-msgstr "No hi ha res especificat per a instal·lar"
-
-#. only one in there
-#: ../yum/__init__.py:2085
-#, python-format
-msgid "Checking for virtual provide or file-provide for %s"
-msgstr "S'està verificant si hi ha un proveïdor virtual o un fitxer proveïdor per a %s"
-
-#: ../yum/__init__.py:2091 ../yum/__init__.py:2380
-#, python-format
-msgid "No Match for argument: %s"
-msgstr "No hi ha cap coincidència per a l'argument: %s"
-
-#. FIXME - this is where we could check to see if it already installed
-#. for returning better errors
-#: ../yum/__init__.py:2146
-msgid "No package(s) available to install"
-msgstr "No hi ha cap paquet disponible per a instal·lar"
-
-#: ../yum/__init__.py:2158
-#, python-format
-msgid "Package: %s  - already in transaction set"
-msgstr "El paquet: %s  - ja està en la transacció"
-
-#: ../yum/__init__.py:2171
-#, python-format
-msgid "Package %s already installed and latest version"
-msgstr "El paquet %s ja es troba instal·lat i en l'última versió."
-
-#: ../yum/__init__.py:2178
-#, python-format
-msgid "Package matching %s already installed. Checking for update."
-msgstr "El paquet coincident %s ja es troba instal·lat. S'està buscant una actualització."
-
-#. update everything (the easy case)
-#: ../yum/__init__.py:2220
-msgid "Updating Everything"
-msgstr "S'està actualitzant tot"
-
-#: ../yum/__init__.py:2304
-#, python-format
-msgid "Package is already obsoleted: %s.%s %s:%s-%s"
-msgstr "El paquet és obsolet: %s.%s. %s:%s-%s"
-
-#: ../yum/__init__.py:2377
-#, python-format
-msgid "%s"
-msgstr "%s"
-
-#: ../yum/__init__.py:2392
-msgid "No package matched to remove"
-msgstr "No hi ha cap paquet coincident per a esborrar"
-
-#: ../yum/__init__.py:2426
-#, python-format
-msgid "Cannot open file: %s. Skipping."
-msgstr "No es pot obrir el fitxer %s. S'ometrà."
-
-#: ../yum/__init__.py:2429
-#, python-format
-msgid "Examining %s: %s"
-msgstr "S'està examinant %s: %s"
-
-#: ../yum/__init__.py:2436
-#, python-format
-msgid ""
-"Package %s not installed, cannot update it. Run yum install to install it "
-"instead."
-msgstr "El paquet %s no està instal·lat; no es pot actualitzar. Executa yum install per a instal·lar-lo."
-
-#: ../yum/__init__.py:2468
-#, python-format
-msgid "Excluding %s"
-msgstr "S'està excloent %s"
-
-#: ../yum/__init__.py:2473
-#, python-format
-msgid "Marking %s to be installed"
-msgstr "S'està marcant %s per a ser instal·lat"
-
-#: ../yum/__init__.py:2479
-#, python-format
-msgid "Marking %s as an update to %s"
-msgstr "S'està marcant %s com a actualització de %s"
-
-#: ../yum/__init__.py:2486
-#, python-format
-msgid "%s: does not update installed package."
-msgstr "%s no actualitza el paquet instal·lat."
-
-#: ../yum/__init__.py:2504
-msgid "Problem in reinstall: no package matched to remove"
-msgstr "Hi ha un problema en reinstal·lar: no hi ha cap paquet marcat per a esborrar"
-
-#: ../yum/__init__.py:2515
-#, python-format
-msgid "Package %s is allowed multiple installs, skipping"
-msgstr "El paquet %s permet múltiples instal·lacions, s'està ometent"
-
-#: ../yum/__init__.py:2522
-msgid "Problem in reinstall: no package matched to install"
-msgstr "Hi ha un problema en reinstal·lar: no hi ha cap paquet marcat per a instal·lar"
-
-#: ../yum/__init__.py:2570
-#, python-format
-msgid "Retrieving GPG key from %s"
-msgstr "S'està recuperant la clau GPG des de %s"
-
-#: ../yum/__init__.py:2576
-msgid "GPG key retrieval failed: "
-msgstr "La recuperació de la clau GPG ha fallat: "
-
-#: ../yum/__init__.py:2589
-msgid "GPG key parsing failed: "
-msgstr "L'ànalisi de la clau GPG ha fallat: "
-
-#: ../yum/__init__.py:2593
-#, python-format
-msgid "GPG key at %s (0x%s) is already installed"
-msgstr "La clau GPG de %s (0x%s) ja està instal·lada"
-
-#. Try installing/updating GPG key
-#: ../yum/__init__.py:2598
-#, python-format
-msgid "Importing GPG key 0x%s \"%s\" from %s"
-msgstr "S'està important la clau GPG 0x%s \"%s\" des de %s"
-
-#: ../yum/__init__.py:2610
-msgid "Not installing key"
-msgstr "No s'està instal·lant la clau"
-
-#: ../yum/__init__.py:2616
-#, python-format
-msgid "Key import failed (code %d)"
-msgstr "L'importació de la clau ha fallat (codi %d)"
-
-#: ../yum/__init__.py:2619
-msgid "Key imported successfully"
-msgstr "La clau s'ha importat amb èxit"
-
-#: ../yum/__init__.py:2624
-#, python-format
-msgid ""
-"The GPG keys listed for the \"%s\" repository are already installed but they "
-"are not correct for this package.\n"
-"Check that the correct key URLs are configured for this repository."
-msgstr ""
-"Les claus GPG llistades pel repositori \"%s\" ja estan instal·lades però "
-"no són correctes per a aquest paquet.\n"
-"Comproveu que les URL de clau correctes estan configurades per a aquest repositori."
-
-#: ../yum/__init__.py:2633
-msgid "Import of key(s) didn't help, wrong key(s)?"
-msgstr "La importació de claus no ha ajudat, eren claus incorrectes?"
-
-#: ../yum/__init__.py:2707
-msgid "Unable to find a suitable mirror."
-msgstr "No s'ha pogut trobar un servidor rèplica vàlid."
-
-#: ../yum/__init__.py:2709
-msgid "Errors were encountered while downloading packages."
-msgstr "S'han trobat errors descarregant paquets."
-
-#: ../yum/__init__.py:2774
-msgid "Test Transaction Errors: "
-msgstr "Errors en la transacció de prova: "
-
-#. Mostly copied from YumOutput._outKeyValFill()
-#: ../yum/plugins.py:195
-msgid "Loaded plugins: "
-msgstr "Connectors carregats: "
-
-#: ../yum/plugins.py:206
-#, python-format
-msgid "No plugin match for: %s"
-msgstr "No hi ha cap connector que coincideixi amb: %s"
-
-#: ../yum/plugins.py:219
-#, python-format
-msgid "\"%s\" plugin is disabled"
-msgstr "El connector \"%s\" està deshabilitat"
-
-#: ../yum/plugins.py:231
-#, python-format
-msgid "Plugin \"%s\" doesn't specify required API version"
-msgstr "El connector \"%s\" no especifica la versió de l'API requerida."
-
-#: ../yum/plugins.py:235
-#, python-format
-msgid "Plugin \"%s\" requires API %s. Supported API is %s."
-msgstr "El connector \"%s\" requereix l'API %s. L'API disponible és %s"
-
-#: ../yum/plugins.py:264
-#, python-format
-msgid "Loading \"%s\" plugin"
-msgstr "S'està carregant el connector \"%s\""
-
-#: ../yum/plugins.py:271
-#, python-format
-msgid ""
-"Two or more plugins with the name \"%s\" exist in the plugin search path"
-msgstr ""
-"Existeixen dos o més connectors amb el mateix nom \"%s\" en el camí de cerca de connectors"
-
-#: ../yum/plugins.py:291
-#, python-format
-msgid "Configuration file %s not found"
-msgstr "No s'ha trobat el fitxer de configuració %s"
-
-#. for
-#. Configuration files for the plugin not found
-#: ../yum/plugins.py:294
-#, python-format
-msgid "Unable to find configuration file for plugin %s"
-msgstr "No s'ha pogut trobar un fitxer de configuració per al connector %s"
-
-#: ../yum/plugins.py:448
-msgid "registration of commands not supported"
-msgstr "l'enregistrament d'ordres no està suportat"
-
-#: ../rpmUtils/oldUtils.py:26
-#, python-format
-msgid "Header cannot be opened or does not match %s, %s."
-msgstr "La capçalera no es pot obrir o no coincideix amb %s, %s"
-
-#: ../rpmUtils/oldUtils.py:46
-#, python-format
-msgid "RPM %s fails md5 check"
-msgstr "falla la comprobació md5 per al RPM %s"
-
-#: ../rpmUtils/oldUtils.py:144
-msgid "Could not open RPM database for reading. Perhaps it is already in use?"
-msgstr "No s'ha pogut obrir la base de dades RPM per a llegir-la. Potser ja està en ús?"
-
-#: ../rpmUtils/oldUtils.py:174
-msgid "Got an empty Header, something has gone wrong"
-msgstr "S'ha obtingut una capçalera buida, alguna cosa ha anat malament"
-
-#: ../rpmUtils/oldUtils.py:244 ../rpmUtils/oldUtils.py:251
-#: ../rpmUtils/oldUtils.py:254 ../rpmUtils/oldUtils.py:257
-#, python-format
-msgid "Damaged Header %s"
-msgstr "Capçalera danyada %s"
-
-#: ../rpmUtils/oldUtils.py:272
-#, python-format
-msgid "Error opening rpm %s - error %s"
-msgstr "Error en obrir rpm %s - error %s"
-
commit 7247e4744cb34503a0be6f671cec8b37845c03c4
Author: James Antill <james at and.org>
Date:   Fri Nov 21 12:03:42 2008 -0500

    Revert "Added chinese translation by lijiansheng"
    
    This reverts commit 388ea0b4b2a526955beab9ab6fa6004b1e4de2f7.
    
     Trying to merge with yum-3_2_X

diff --git a/po/zh_CN.po b/po/zh_CN.po
deleted file mode 100644
index 3b30c2f..0000000
--- a/po/zh_CN.po
+++ /dev/null
@@ -1,1311 +0,0 @@
-msgid ""
-msgstr ""
-"Project-Id-Version: yum\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-03-20 10:00+0000\n"
-"PO-Revision-Date: 2008-07-24 19:43+0800\n"
-"Last-Translator: lijiansheng <lijiangsheng1 at gmail.com>\n"
-"Language-Team: zh_CN <lijiangsheng1 at gmail.com>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Poedit-Language: Chinese\n"
-"X-Poedit-Country: CHINA\n"
-
-msgid ""
-"\n"
-"\n"
-"Exiting on Broken Pipe"
-msgstr ""
-"\n"
-"\n"
-"管道损坏而退出"
-
-msgid ""
-"\n"
-"\n"
-"Exiting on user cancel"
-msgstr ""
-"\n"
-"\n"
-"用户取消而退出"
-
-msgid ""
-"\n"
-"\n"
-"Exiting on user cancel."
-msgstr ""
-"\n"
-"\n"
-"用户取消而退出"
-
-msgid ""
-"\n"
-"\n"
-"alias: "
-msgstr ""
-"\n"
-"\n"
-"别名: "
-
-msgid ""
-"\n"
-"\n"
-"aliases: "
-msgstr ""
-"\n"
-"\n"
-"多重别名: "
-
-msgid ""
-"\n"
-" Current download cancelled, %sinterrupt (ctrl-c) again%s within %s%s%s seconds to exit.\n"
-msgstr ""
-"\n"
-" 当前下载取消, %s 中断 (ctrl-c) 再次 %s 将在%s%s%s 秒内退出.\n"
-
-msgid ""
-"\n"
-"Dependencies Resolved"
-msgstr ""
-"\n"
-"依赖性解决"
-
-msgid ""
-"\n"
-"Group: %s"
-msgstr ""
-"\n"
-"组: %s"
-
-msgid ""
-"\n"
-"Packages skipped because of dependency problems:"
-msgstr ""
-"\n"
-"因为依赖性问题而忽略的包:"
-
-msgid ""
-"\n"
-"Transaction Summary\n"
-"=============================================================================\n"
-"Install  %5.5s Package(s)         \n"
-"Update   %5.5s Package(s)         \n"
-"Remove   %5.5s Package(s)         \n"
-msgstr ""
-"\n"
-"处理信息摘要\n"
-"=============================================================================\n"
-"安装    %5.5s 个包        \n"
-"升级   %5.5s 个包         \n"
-"删除      %5.5s 个包         \n"
-
-msgid ""
-"\n"
-"You have enabled checking of packages via GPG keys. This is a good thing. \n"
-"However, you do not have any GPG public keys installed. You need to download\n"
-"the keys for packages you wish to install and install them.\n"
-"You can do that by running the command:\n"
-"    rpm --import public.gpg.key\n"
-"\n"
-"\n"
-"Alternatively you can specify the url to the key you would like to use\n"
-"for a repository in the 'gpgkey' option in a repository section and yum \n"
-"will install it for you.\n"
-"\n"
-"For more information contact your distribution or package provider.\n"
-msgstr ""
-"\n"
-"你已经激活通过GPG密钥验证包,这是个好东西。 \n"
-"然而,你没有安装任何的GPG公钥,你需要下载:\n"
-"如果你要安装包的密钥\n"
-"你可以执行下面的命令:\n"
-"    rpm --import public.gpg.key\n"
-"\n"
-"\n"
-"Alternatively you can specify the url to the key you would like to use\n"
-"for a repository in the 'gpgkey' option in a repository section and yum \n"
-"will install it for you.\n"
-"\n"
-"For more information contact your distribution or package provider.\n"
-
-msgid ""
-"     replacing  %s.%s %s\n"
-"\n"
-msgstr ""
-"     替代中 %s.%s %s\n"
-"\n"
-
-msgid "    %s from %s"
-msgstr "    %s 从 %s"
-
-msgid "   Unsatisfied dependency"
-msgstr "  不能满意的依赖性"
-
-msgid "  At least %dMB needed on the %s filesystem.\n"
-msgstr " 至少 需要%d MB ,但前的 %s 文件系统.\n"
-
-msgid "  No dependencies for this package"
-msgstr "此包无任何的依赖"
-
-msgid "  dependency: %s"
-msgstr "   依赖: %s"
-
-msgid " Conditional Packages:"
-msgstr " 包条件:"
-
-msgid " Default Packages:"
-msgstr " 默认的包:"
-
-msgid " Description: %s"
-msgstr " 描述: %s"
-
-msgid " Mandatory Packages:"
-msgstr " 托管的包是:"
-
-msgid " Optional Packages:"
-msgstr "  包的属性:"
-
-msgid "\"%s\" plugin is disabled"
-msgstr "\"%s\" 此插件已被禁掉"
-
-msgid "%d %s files removed"
-msgstr "%d %s 文件已移除"
-
-msgid "%d Package(s) to Install"
-msgstr "%d 个包将安装"
-
-msgid "%d Package(s) to remove"
-msgstr "%d 个包将删除"
-
-msgid "%d packages marked for Update"
-msgstr "%d 个包已标志为升级"
-
-msgid "%d packages marked for removal"
-msgstr "%d 个包已标志为删除"
-
-msgid "%s"
-msgstr "%s"
-
-msgid "%s already in ts, skipping this one"
-msgstr "%s 已在处理中, 忽略此项"
-
-msgid "%s converted to install"
-msgstr "%s 已转换的将安装"
-
-msgid "%s file %s removed"
-msgstr "%s 文件 %s 已移除"
-
-msgid "%s from %s has depsolving problems"
-msgstr "%s 已从%s  解决了问题"
-
-msgid "%s is in providing packages but it is already installed, removing."
-msgstr "%s 在假设的包中,但是已经安装,删除中...."
-
-msgid "%s removed"
-msgstr "%s 已删除"
-
-msgid "%s requires: %s"
-msgstr "%s 需要: %s"
-
-msgid "%s: does not update installed package."
-msgstr "%s: 没有可供升级的包."
-
-msgid "---> Downloading header for %s to pack into transaction set."
-msgstr "--->为 %s下载头文件以便于设置处理."
-
-msgid "---> Package %s.%s %s:%s-%s set to be %s"
-msgstr "---> 包 %s.%s %s:%s-%s 设置为 %s "
-
-msgid "--> Finished Dependency Resolution"
-msgstr "--> 完成依赖性检查"
-
-msgid "--> Populating transaction set with selected packages. Please wait."
-msgstr "--> 正在处理已选择的包,请稍候。"
-
-msgid "--> Processing Conflict: %s conflicts %s"
-msgstr "--> 过程冲突: %s 冲突于 %s"
-
-msgid "--> Processing Dependency: %s for package: %s"
-msgstr "--> 过程依赖: %s 依赖于包: %s"
-
-msgid "--> Restarting Dependency Resolution with new changes."
-msgstr "--> 为新包重新启动解决依赖问题"
-
-msgid "--> Running transaction check"
-msgstr "-->运行处理检查"
-
-msgid "--> Unresolved Dependency: %s"
-msgstr "--> 没有解决的依赖: %s"
-
-msgid "Adding Package %s in mode %s"
-msgstr "添加包 %s 在 %s 的模式下"
-
-msgid "Adding group file from repository: %s"
-msgstr "从仓库: %s 中添加组文件"
-
-msgid "Adding package %s from group %s"
-msgstr "添加包 %s 从组 %s 中"
-
-msgid "Another app is currently holding the yum lock; waiting for it to exit..."
-msgstr "另外一个应用程序正在适用yum锁;等待其退出 ... ..."
-
-msgid "Apr"
-msgstr "Apr"
-
-msgid "Arch"
-msgstr "架构"
-
-msgid "Arch       : %s"
-msgstr "架构 : %s"
-
-msgid "Aug"
-msgstr "Aug"
-
-msgid "Available Groups:"
-msgstr "有效的组:"
-
-msgid "Available Packages"
-msgstr "已经提供的包"
-
-msgid "Building updates object"
-msgstr "建立升级对象"
-
-msgid "Cannot find an update path for dep for: %s"
-msgstr "Cannot find an update path for dep for: %s"
-
-msgid "Cannot open file: %s. Skipping."
-msgstr "不能打开文件: %s. 跳过."
-
-msgid "Cannot remove %s"
-msgstr "无法删除 %s "
-
-msgid "Cannot remove %s file %s"
-msgstr "无法删除 %s 文件 %s"
-
-msgid "Check for available package updates"
-msgstr "检查可提供的包升级"
-
-msgid "Checking deps for %s"
-msgstr "为 %s 检查依赖性"
-
-msgid "Checking for virtual provide or file-provide for %s"
-msgstr "Checking for virtual provide or file-provide for %s"
-
-msgid "Cleaning up Everything"
-msgstr "清理一切"
-
-msgid "Cleaning up Headers"
-msgstr "Räume Header auf"
-
-msgid "Cleaning up Packages"
-msgstr "清理包"
-
-msgid "Cleaning up database cache"
-msgstr "清理数据库缓存"
-
-msgid "Cleaning up plugins"
-msgstr "清理插件"
-
-msgid "Cleaning up xml metadata"
-msgstr "清理XML元数据"
-
-msgid "Cleanup"
-msgstr "清理"
-
-msgid "Command \"%s\" already defined"
-msgstr "命令 \"%s\" 早已经被定义"
-
-msgid "Command line error: %s"
-msgstr "命令行错误: %s"
-
-msgid "Committer  : %s"
-msgstr "Ãœbermittler  : %s"
-
-msgid "Comparing best: %s to po: %s"
-msgstr "Vergleiche besseres: %s zu po: %s"
-
-msgid "Complete!"
-msgstr "恭喜你!成功完成!"
-
-msgid "Config Error: %s"
-msgstr "配置错误: %s"
-
-msgid "Configuration file %s not found"
-msgstr "配置文件 %s 不能被找到"
-
-msgid "Could not find update match for %s"
-msgstr "不能找到和 %s 匹配的升级"
-
-msgid "Could not open RPM database for reading. Perhaps it is already in use?"
-msgstr "不能以读的方式打开RPM数据库,或许是它已经在被用?"
-
-msgid "Could not perform checksum"
-msgstr "无法执行校验和"
-
-msgid "Damaged Header %s"
-msgstr "损坏的头文件 %s"
-
-msgid "Dec"
-msgstr "Dec"
-
-msgid "Dependency Installed"
-msgstr "依赖安装"
-
-msgid "Dependency Process ending"
-msgstr "依赖进程完成中"
-
-msgid "Dependency Removed"
-msgstr "依赖删除"
-
-msgid "Dependency Updated"
-msgstr "依赖升级"
-
-msgid "Description: "
-msgstr "升级:"
-
-msgid "Determine which package provides the given dependency"
-msgstr "决定哪个包提供了给定的依赖"
-
-msgid "Discarding non-comparable pkg %s.%s"
-msgstr " 丢弃无对照的包%s.%s"
-
-msgid "Disk Requirements:\n"
-msgstr "磁盘要求:\n"
-
-msgid "Display a helpful usage message"
-msgstr "显示帮助用法信息"
-
-msgid "Display details about a package group"
-msgstr "显示关于包组的细节"
-
-msgid "Display details about a package or group of packages"
-msgstr "显示关于包或一组包的细节信息"
-
-msgid "Display the configured software repositories"
-msgstr "显示软件仓库的配置"
-
-msgid "Done"
-msgstr "完成"
-
-msgid "Downloading Packages:"
-msgstr "下载软件包:"
-
-msgid "ERROR with rpm_check_debug vs depsolve:"
-msgstr "错误 rpm_check_debug 和 depsolve:"
-
-msgid "Epoch      : %s"
-msgstr "Epoch      : %s"
-
-msgid "Erased"
-msgstr "已删除"
-
-msgid "Erased: %s"
-msgstr "已删除: %s"
-
-msgid "Erasing"
-msgstr "正在删除"
-
-msgid "Error Downloading Packages:\n"
-msgstr "下载包错误:\n"
-
-msgid ""
-"Error Summary\n"
-"-------------\n"
-msgstr ""
-"错误的语法\n"
-"-------------\n"
-
-msgid "Error opening rpm %s - error %s"
-msgstr "打开 RPM %s 错误 - 错误 %s"
-
-msgid "Error: %s"
-msgstr "错误: %s"
-
-msgid "Error: Need a group or list of groups"
-msgstr "错误:需要组或组的列表"
-
-msgid "Error: Need an item to match"
-msgstr "错误:需要细微的匹配"
-
-msgid "Error: Need to pass a list of pkgs to %s"
-msgstr "错误: 需要传输在列表的包到%s"
-
-msgid "Error: clean requires an option: %s"
-msgstr "Error: clean requires an option: %s"
-
-msgid "Error: invalid clean argument: %r"
-msgstr "Error: invalid clean argument: %r"
-
-msgid "Error: invalid output state: %s for %s"
-msgstr "Error: invalid output state: %s for %s"
-
-msgid "Error: more than one file given as argument to shell."
-msgstr "Error: more than one file given as argument to shell."
-
-msgid "Errors were encountered while downloading packages."
-msgstr "Errors were encountered while downloading packages."
-
-msgid "Examining %s: %s"
-msgstr " 诊断 %s: %s"
-
-msgid "Excluding %s"
-msgstr "不包括 %s"
-
-msgid "Excluding Packages from %s"
-msgstr "在 %s 中排除的包"
-
-msgid "Excluding Packages in global exclude list"
-msgstr "不包适包在全局的排除的列表中"
-
-msgid "Existing lock %s: another copy is running as pid %s."
-msgstr "锁已被用 %s:  另外的一个复制正在运行在 PID为 %s."
-
-msgid "Exiting on user Command"
-msgstr "在用户的命令下退出"
-
-msgid "Extra Packages"
-msgstr "扩展的包"
-
-msgid "Failed to add groups file for repository: %s - %s"
-msgstr "为仓库添加组失败: %s - %s"
-
-msgid "Failed to remove transaction file %s"
-msgstr "移除处理文件%s 失败"
-
-msgid "Failure finding best provider of %s for %s, exceeded maximum loop length"
-msgstr "Failure finding best provider of %s for %s, exceeded maximum loop length"
-
-msgid "Feb"
-msgstr "二月"
-
-msgid "File %s given as argument to shell does not exist."
-msgstr "File %s given as argument to shell does not exist."
-
-msgid "Filename passed to shell: %s"
-msgstr "Filename passed to shell: %s"
-
-msgid "Find what package provides the given value"
-msgstr "Find what package provides the given value"
-
-msgid "Finding dependencies: "
-msgstr "找到依赖:"
-
-msgid "Finished"
-msgstr "完成"
-
-msgid "Finished Transaction Test"
-msgstr "传输测试完成"
-
-msgid "GPG key at %s (0x%s) is already installed"
-msgstr "GPG密钥在 %s (0x%s) 已经安装"
-
-msgid "GPG key parsing failed: "
-msgstr "分析GPG密钥失败: "
-
-msgid "GPG key retrieval failed: "
-msgstr "GPG密钥修复失败:"
-
-msgid "Generate the metadata cache"
-msgstr "生成原数据缓存"
-
-msgid "Getting group metadata"
-msgstr "获得组元数据"
-
-msgid "Got an empty Header, something has gone wrong"
-msgstr "得到空的头文件,有错误发生"
-
-msgid "Header cannot be opened or does not match %s, %s."
-msgstr "Header 不能打开或对 %s, %s不匹配."
-
-msgid "Header is not complete."
-msgstr "Header 不是完整的."
-
-msgid "Header not in local cache and caching-only mode enabled. Cannot download %s"
-msgstr "Header并不在本地缓存而且caching-only 模式被激活。不能下载 %s"
-
-msgid "Import of key(s) didn't help, wrong key(s)?"
-msgstr "导入密钥时没有求助,错误的密钥?"
-
-msgid "Importing GPG key 0x%s \"%s\" from %s"
-msgstr "导入GPG密钥 0x%s \"%s\" ,来自 %s"
-
-msgid "Importing additional filelist information"
-msgstr "正在导入额外的文件列表信息"
-
-msgid "Install a local RPM"
-msgstr "安装本地 RPM"
-
-msgid "Install a package or packages on your system"
-msgstr "安装一个或多个软件包在你的系统"
-
-msgid "Install the packages in a group on your system"
-msgstr "从组里安装软件包到你的系统"
-
-msgid "Installed"
-msgstr "已安装"
-
-msgid "Installed Groups:"
-msgstr "已安装组:"
-
-msgid "Installed Packages"
-msgstr "已经安装的包"
-
-msgid "Installing"
-msgstr "正在安装"
-
-msgid "Installing for dependencies"
-msgstr "为依赖而安装"
-
-msgid "Insufficient space in download directory %s to download"
-msgstr "目录 %s没有足够的空间下载文件"
-
-msgid "Invalid tsflag in config file: %s"
-msgstr "配置文件: %s中的tsflag是无效的"
-
-msgid "Invalid version flag"
-msgstr "无效的版本标志"
-
-msgid "Invalid versioned dependency string, try quoting it."
-msgstr "无效的依赖字符串,尝试重新引用."
-
-msgid "Is this ok [y/N]: "
-msgstr "确定是这样吗? [y/N]: "
-
-msgid "Jan"
-msgstr "一月"
-
-msgid "Jul"
-msgstr "Jul"
-
-msgid "Jun"
-msgstr "Jun"
-
-msgid "Keeping included package %s"
-msgstr "保持已包含的包 %s"
-
-msgid "Key import failed (code %d)"
-msgstr "导入密钥失败 (代号 %d)"
-
-msgid "Key imported successfully"
-msgstr "导入密钥成功"
-
-msgid "License    : %s"
-msgstr "许可证    : %s"
-
-msgid "List a package or groups of packages"
-msgstr "列出一个包或某组的包"
-
-msgid "List a package's dependencies"
-msgstr "列出包依赖相关"
-
-msgid "List available package groups"
-msgstr "列出当前的组"
-
-msgid "Loaded plugins: "
-msgstr "载入插件: "
-
-msgid "Loading \"%s\" plugin"
-msgstr "载入 \"%s\" 插件"
-
-msgid "Making cache files for all metadata files."
-msgstr "将所有的元数据文件生成缓存文件."
-
-msgid "Mar"
-msgstr "Mar"
-
-msgid "Marking %s as an update to %s"
-msgstr "标志 %s 将被更新为 %s"
-
-msgid "Marking %s to be installed"
-msgstr "标志 %s 将被安装"
-
-msgid "Matched %s to require for %s"
-msgstr "标志%s 要求 %s"
-
-msgid "Matched from:"
-msgstr "匹配来自于:"
-
-msgid "Matching packages for package list to user args"
-msgstr "从用户的包列表中匹配包"
-
-msgid "May"
-msgstr "Mai"
-
-msgid "Member: %s"
-msgstr "成员: %s"
-
-msgid "Metadata Cache Created"
-msgstr "原数据缓存已建立"
-
-msgid "Missing Dependency: %s is needed by package %s"
-msgstr "丢失的依赖相关: %s 被包 %s 所需要"
-
-msgid "Mode for pkg providing %s: %s"
-msgstr "Mode for pkg providing %s: %s"
-
-msgid "Mode is %s for provider of %s: %s"
-msgstr "Mode is %s for provider of %s: %s"
-
-msgid "More than one identical match in sack for %s"
-msgstr "More than one identical match in sack for %s"
-
-msgid "Name       : %s"
-msgstr "名称       : %s"
-
-msgid "Needed Require has already been looked up, cheating"
-msgstr "Needed Require has already been looked up, cheating"
-
-msgid "Needed Require is not a package name. Looking up: %s"
-msgstr "Needed Require is not a package name. Looking up: %s"
-
-msgid "No Group named %s exists"
-msgstr "没有发现组 %s "
-
-msgid "No Groups Available in any repository"
-msgstr "在现有的仓库中没有组可被提供"
-
-msgid "No Groups on which to run command"
-msgstr "没有组可以运行的命令"
-
-msgid "No Match for argument: %s"
-msgstr "没有匹配的参数: %s"
-
-msgid "No Matches found"
-msgstr "没有匹配发现"
-
-msgid "No Package Found for %s"
-msgstr "没有发现包 %s"
-
-msgid "No Package found for %s"
-msgstr "没有发现包 %s"
-
-msgid "No Packages Provided"
-msgstr "没有可提供的包"
-
-msgid "No Packages marked for Update"
-msgstr "没有包标志为升级"
-
-msgid "No Packages marked for removal"
-msgstr "没有包标志为删除"
-
-msgid "No argument to shell"
-msgstr "没有参数提供给shell"
-
-msgid "No group named %s exists"
-msgstr "没有组名为 %s "
-
-msgid "No header - huh?"
-msgstr "没有头文件--:)?"
-
-msgid "No help available for %s"
-msgstr "没有关于 %s 的帮助"
-
-msgid "No matching Packages to list"
-msgstr "列表中没有匹配的包"
-
-msgid "No other %s installed, adding to list for potential install"
-msgstr "No other %s installed, adding to list for 潜在的install"
-
-msgid "No package %s available."
-msgstr "包 %s 不可提供."
-
-msgid "No package matched to remove"
-msgstr "没有匹配的包删除"
-
-msgid "No package named %s available to be installed"
-msgstr "没有名称为 %s 包可供安装"
-
-msgid "No package(s) available to install"
-msgstr "没有包可供安装."
-
-msgid "No packages in any requested group available to install or update"
-msgstr "没有包在所要求的组中可提供安装或升级"
-
-msgid "No packages to remove from groups"
-msgstr "No packages to remove from groups"
-
-msgid "No plugin match for: %s"
-msgstr "没有插件可匹配: %s"
-
-msgid "Not Updating Package that is already obsoleted: %s.%s %s:%s-%s"
-msgstr "不可更新早已被废弃的包: %s.%s %s:%s-%s"
-
-msgid "Not installing key"
-msgstr "没有安装密钥"
-
-msgid "Nothing matches %s.%s %s:%s-%s from update"
-msgstr "无法匹配  %s.%s %s:%s-%s 从更新中"
-
-msgid "Nothing specified to install"
-msgstr "没有指定安装"
-
-msgid "Nothing to do"
-msgstr "无事可做"
-
-msgid "Nov"
-msgstr "Nov"
-
-msgid "Obsoleted"
-msgstr "已废弃"
-
-msgid "Obsoleting Packages"
-msgstr "废弃中的包"
-
-msgid "Oct"
-msgstr "十月"
-
-msgid "Options Error: %s"
-msgstr "属性错误: %s"
-
-msgid "PACKAGE..."
-msgstr "包..."
-
-msgid "Package"
-msgstr "包"
-
-msgid "Package %s already installed and latest version"
-msgstr "包 %s 已安装并且是最新版本"
-
-msgid "Package %s is allowed multiple installs, skipping"
-msgstr "包 %s 被允许多方式安装,忽略"
-
-msgid "Package %s is already installed, skipping"
-msgstr "包 %s 早已安装,忽略"
-
-msgid "Package %s is not signed"
-msgstr "包 %s 无签名认证"
-
-msgid "Package %s not installed, cannot update it. Run yum install to install it instead."
-msgstr "包 %s 没有安装, 不能安装。请适用yum install 安装它。"
-
-msgid "Package Object was not a package object instance"
-msgstr "Package Object was not a package object instance"
-
-msgid "Package does not match checksum"
-msgstr "包不匹配校验结果"
-
-msgid "Package does not match intended download"
-msgstr "Package does not match intended download."
-
-msgid "Package is already obsoleted: %s.%s %s:%s-%s"
-msgstr "包已经废弃: %s.%s %s:%s-%s"
-
-msgid "Package matching %s already installed. Checking for update."
-msgstr "匹配包 %s 已经安装. 检查更新."
-
-msgid "Package tuple %s could not be found in packagesack"
-msgstr "包元组 %s 不能在packagesack中发现"
-
-msgid "Package(s) to install"
-msgstr "包将安装"
-
-msgid "Package: %s  - already in transaction set"
-msgstr "安装包: %s - 事务处理已设置"
-
-msgid "Parsing package install arguments"
-msgstr "分析安装参数的语法"
-
-msgid "Please report this error in bugzilla"
-msgstr "请报告这个错误给 Bugzilla"
-
-msgid "Plugin \"%s\" doesn't specify required API version"
-msgstr "Plugin \"%s\" 没有指定必要的API版本"
-
-msgid "Plugin \"%s\" requires API %s. Supported API is %s."
-msgstr "Plugin \"%s\" 需要 API %s. 支持的 API 为 %s."
-
-msgid "Potential Provider: %s"
-msgstr " 潜在的提供者: %s"
-
-msgid "Potential match for %s from %s"
-msgstr "Potential match for %s from %s"
-
-msgid "Potential resolving package %s has newer instance in ts."
-msgstr "Potential resolving package %s has newer instance in ts."
-
-msgid "Potential resolving package %s has newer instance installed."
-msgstr "Potential resolving package %s has newer instance installed."
-
-msgid "Problem in reinstall: no package matched to install"
-msgstr "Problem in reinstall: no package matched to install"
-
-msgid "Problem in reinstall: no package matched to remove"
-msgstr "Problem in reinstall: no package matched to remove"
-
-msgid "Problem opening package %s"
-msgstr "打开包 %s 出现问题"
-
-msgid "Provides-match: %s"
-msgstr "Provides-match: %s"
-
-msgid "Public key for %s is not installed"
-msgstr "给 %s 的公钥没有安装"
-
-msgid "Public key for %s is not trusted"
-msgstr "给 %s 的公钥不可信任"
-
-msgid "RPM %s fails md5 check"
-msgstr "RPM %s md5码校验失败"
-
-msgid "Reading Local RPMDB"
-msgstr "读入本地RPMDB"
-
-msgid "Reading repository metadata in from local files"
-msgstr "从本地文件读入仓库元数据"
-
-msgid "Recently Added Packages"
-msgstr "近期添加的包"
-
-msgid "Reducing %s to included packages only"
-msgstr "减少 %s 所仅包含的包"
-
-msgid ""
-"Refusing to automatically import keys when running unattended.\n"
-"Use \"-y\" to override."
-msgstr ""
-"当运行unattended时拒绝自动导入密钥.\n"
-"用 \"-y\" 来覆盖"
-
-msgid "Release    : %s"
-msgstr "发行    : %s"
-
-msgid "Remove a package or packages from your system"
-msgstr "移除一个或多个包从你的系统"
-
-msgid "Remove cached data"
-msgstr "删除缓存数据"
-
-msgid "Remove the packages in a group from your system"
-msgstr "在一个组中移除包从您的系统"
-
-msgid "Removed"
-msgstr "已删除"
-
-msgid "Removing"
-msgstr "正在删除"
-
-msgid "Removing Package %s"
-msgstr "正在删除包 %s"
-
-msgid "Removing for dependencies"
-msgstr "为依赖移除"
-
-msgid "Removing unmatched package %s"
-msgstr "移除不匹配的包: %s"
-
-msgid "Repackage"
-msgstr "重新打包"
-
-msgid "Replaced"
-msgstr "替代"
-
-msgid "Repo       : %s"
-msgstr "Repo       : %s"
-
-msgid "Repository"
-msgstr "仓库"
-
-msgid "Repository %r is missing name in configuration, using id"
-msgstr "仓库 %r 丢失了名字在配置文件中,用id代替"
-
-msgid "Resolving Dependencies"
-msgstr "解决依赖相关"
-
-msgid "Restarting Loop"
-msgstr "重新启动环回"
-
-msgid "Retrieving GPG key from %s"
-msgstr "从 %s 中恢复GPG密钥"
-
-msgid "Run an interactive yum shell"
-msgstr "运行交互式的yum shell"
-
-msgid "Running Transaction"
-msgstr "运行事务处理"
-
-msgid "Running Transaction Test"
-msgstr "运行测试事务处理"
-
-msgid "Running rpm_check_debug"
-msgstr "运行 rpm_check_debug "
-
-msgid "Same: best %s == po: %s"
-msgstr "Same: best %s == po: %s"
-
-msgid "Search package details for the given string"
-msgstr "查找包细节居给定的字符串"
-
-msgid "Searching %d packages"
-msgstr "查询 %d 个包"
-
-msgid "Searching Packages for Dependency:"
-msgstr "为依赖相关查找包:"
-
-msgid "Searching Packages: "
-msgstr "查询包:"
-
-msgid "Searching pkgSack for dep: %s"
-msgstr "查找pkgSack 为依赖: %s"
-
-msgid "Sep"
-msgstr "Sep"
-
-msgid "Setting up Group Process"
-msgstr "设置组进程"
-
-msgid "Setting up Install Process"
-msgstr "设置安装进程"
-
-msgid "Setting up Local Package Process"
-msgstr "设置本地包进程"
-
-msgid "Setting up Package Sacks"
-msgstr "设置包麻袋"
-
-msgid "Setting up Reinstall Process"
-msgstr "设置重新安装进程"
-
-msgid "Setting up Remove Process"
-msgstr "设置删除进程"
-
-msgid "Setting up TransactionSets before config class is up"
-msgstr "在config类启用之前设置事务处理"
-
-msgid "Setting up Update Process"
-msgstr "设置更新进程"
-
-msgid "Setting up Upgrade Process"
-msgstr "设置升级进程"
-
-msgid "Setting up Yum Shell"
-msgstr "设置Yum-Shell yum交互式环境"
-
-msgid "Setting up repositories"
-msgstr "设置仓库"
-
-msgid "Size"
-msgstr "大小"
-
-msgid "Size       : %s"
-msgstr "大小    : %s"
-
-msgid "Skip-broken round %i"
-msgstr "Skip-broken round %i"
-
-msgid "Skip-broken took %i rounds "
-msgstr "Skip-broken took %i rounds"
-
-msgid "Success - deps resolved"
-msgstr "成功 --依赖性解决"
-
-msgid "Success - empty transaction"
-msgstr "成功 --空的事务处理"
-
-msgid "Summary    : "
-msgstr "语法    : "
-
-msgid "TSINFO: %s package requiring %s marked as erase"
-msgstr "TSINFO: %s package requiring %s marked as erase"
-
-msgid "TSINFO: Marking %s as install for %s"
-msgstr "TSINFO: Marking %s as install for %s"
-
-msgid "TSINFO: Marking %s as update for %s"
-msgstr "TSINFO: Marking %s as update for %s"
-
-msgid "TSINFO: Obsoleting %s with %s to resolve dep."
-msgstr "TSINFO: Obsoleting %s with %s to resolve dep."
-
-msgid "TSINFO: Updating %s to resolve dep."
-msgstr "TSINFO: Updating %s to resolve dep."
-
-msgid "Test Transaction Errors: "
-msgstr "测试事务处理错误"
-
-msgid ""
-"The GPG keys listed for the \"%s\" repository are already installed but they are not correct for this package.\n"
-"Check that the correct key URLs are configured for this repository."
-msgstr ""
-"The GPG keys listed for the \"%s\" repository are already installed but they are not correct for this package.\n"
-"Check that the correct key URLs are configured for this repository."
-
-msgid "There was an error calculating total download size"
-msgstr "There was an error calculating total download size"
-
-msgid "This may take a while depending on the speed of this computer"
-msgstr "这会占用一段时间,具体将取决于这台计算机的速度"
-
-msgid "Total download size: %s"
-msgstr "总共下载大小: %s"
-
-msgid "Total size: %s"
-msgstr "总大小: %s"
-
-msgid "Transaction Check Error:\n"
-msgstr "处理检查错误:\n"
-
-msgid "Transaction Test Succeeded"
-msgstr "事务处理测试成功"
-
-msgid "Trying other mirror."
-msgstr "尝试其他镜像."
-
-msgid "Trying to run the transaction but nothing to do. Exiting."
-msgstr "尝试运行事务处理但是什么也做不成,退出."
-
-msgid "Two or more plugins with the name \"%s\" exist in the plugin search path"
-msgstr "Two or more plugins with the name \"%s\" exist in the plugin search path"
-
-msgid "URL        : %s"
-msgstr "统一资源定位符       : %s"
-
-msgid "Unable to check if PID %s is active"
-msgstr "不能检查到PID %s是否激活"
-
-msgid "Unable to find a suitable mirror."
-msgstr "不能发现合适的镜像."
-
-msgid "Unable to find configuration file for plugin %s"
-msgstr "不能找到插件 %s 的配置文件 "
-
-msgid "Unknown Error(s): Exit Code: %d:"
-msgstr "莫名的错误:  退出代码为: %d:"
-
-msgid "Unresolvable requirement %s for %s"
-msgstr "没有解决的需求 %s 为 %s"
-
-msgid "Update a package or packages on your system"
-msgstr "更新一个或多个包在你的系统"
-
-msgid "Update packages taking obsoletes into account"
-msgstr "Update packages taking obsoletes into account"
-
-msgid "Updated"
-msgstr "更新完毕"
-
-msgid "Updated Packages"
-msgstr "更新过的包"
-
-msgid "Updating"
-msgstr "正在升级"
-
-msgid "Updating Everything"
-msgstr "全部升级"
-
-msgid "Updating for dependencies"
-msgstr "更新依赖性"
-
-msgid "Version"
-msgstr "版本"
-
-msgid "Version    : %s"
-msgstr "版本    : %s"
-
-msgid "Warning: Group %s does not exist."
-msgstr "提示: 组 %s 不存在."
-
-msgid "Warning: No matches found for: %s"
-msgstr "提示 : 没有发现和: %s 匹配"
-
-msgid "You need to be root to perform this command."
-msgstr "你需要root身份执行此命令."
-
-msgid "You need to give some command"
-msgstr "你需要给出命令"
-
-msgid "[PACKAGE...]"
-msgstr "[包 ...]"
-
-msgid "answer yes for all questions"
-msgstr "回答所有的问题为是"
-
-msgid "be tolerant of errors"
-msgstr "be tolerant of errors"
-
-msgid "best %s obsoletes po: %s"
-msgstr "best %s obsoletes po: %s"
-
-msgid "best %s shares a sourcerpm with %s"
-msgstr "best %s shares a sourcerpm with %s"
-
-msgid "bestpkg %s shares more of the name prefix with %s"
-msgstr "bestpkg %s shares more of the name prefix with %s"
-
-msgid "better arch in po %s"
-msgstr "better arch in po %s"
-
-msgid "config file location"
-msgstr "config file location"
-
-msgid "debugging output level"
-msgstr "调试输出级别"
-
-msgid "disable Yum plugins"
-msgstr "禁掉yum插件"
-
-msgid "disable exclude from main, for a repo or for everything"
-msgstr "disable exclude from main, for a repo or for everything"
-
-msgid "disable gpg signature checking"
-msgstr "禁掉GPG验证检查"
-
-msgid "disable one or more repositories (wildcards allowed)"
-msgstr "禁掉一个或多个仓库(支持通配符)"
-
-msgid "disable plugins by name"
-msgstr "用名称禁掉插件"
-
-msgid "disabled"
-msgstr "禁掉"
-
-msgid "doConfigSetup() will go away in a future version of Yum.\n"
-msgstr "doConfigSetup() 将在未来的YUM版本中消失.\n"
-
-msgid "doGroupSetup() will go away in a future version of Yum.\n"
-msgstr "doGroupSetup()将在未来的YUM版本中消失.\n"
-
-msgid "doRepoSetup() will go away in a future version of Yum.\n"
-msgstr "doRepoSetup() 将在未来的YUM版本中消失.\n"
-
-msgid "doRpmDBSetup() will go away in a future version of Yum.\n"
-msgstr "doRpmDBSetup() 将在未来的YUM版本中消失.\n"
-
-msgid "doSackSetup() will go away in a future version of Yum.\n"
-msgstr "doSackSetup() 将在未来的YUM版本中消失.\n"
-
-msgid "doTsSetup() will go away in a future version of Yum.\n"
-msgstr "doTsSetup() 将在未来的YUM版本中消失.\n"
-
-msgid "doUpdateSetup() will go away in a future version of Yum.\n"
-msgstr "doUpdateSetup() wird verschwinden in zukünfigen Version von Yum.\n"
-
-msgid "enable obsoletes processing during updates"
-msgstr "enable obsoletes processing during updates"
-
-msgid "enable one or more repositories (wildcards allowed)"
-msgstr "激活一个或多个仓库(支持通配符)"
-
-msgid "enabled"
-msgstr "激活"
-
-msgid "erased"
-msgstr "删除"
-
-msgid "error output level"
-msgstr "错误输出级别"
-
-msgid "exclude package(s) by name or glob"
-msgstr "在名称或glob不包含包。"
-
-msgid "excluding for cost: %s from %s"
-msgstr "excluding for cost: %s from %s"
-
-msgid "installed"
-msgstr "已安装"
-
-msgid "looking for %s as a requirement of %s"
-msgstr "查找 %s 在要求的 %s 下"
-
-msgid "maximum command wait time"
-msgstr "最大化的命令等待时间"
-
-msgid "n"
-msgstr "n"
-
-msgid "no"
-msgstr "否"
-
-msgid "obsoleted"
-msgstr "已废弃"
-
-msgid "package %s was not marked in group %s"
-msgstr "包 %s 在组 %s中没有被标志"
-
-msgid "package fails checksum but caching is enabled for %s"
-msgstr "包校验失败但是缓存已为 %s激活"
-
-msgid "package: %s"
-msgstr "包: %s"
-
-msgid "plugins already initialised"
-msgstr "插件已经initialised"
-
-msgid "po %s has a shorter name than best %s"
-msgstr "po %s has a shorter name than best %s"
-
-msgid "po %s obsoletes best: %s"
-msgstr "po %s obsoletes best: %s"
-
-msgid "po %s shares a sourcerpm with %s"
-msgstr "po %s shares a sourcerpm with %s"
-
-msgid "po %s shares more of the name prefix with %s"
-msgstr "po %s shares more of the name prefix with %s"
-
-msgid "quiet operation"
-msgstr "安静的操作"
-
-msgid "registration of commands not supported"
-msgstr "注册命令不支持"
-
-msgid "reinstall a package"
-msgstr "重新安装一个包"
-
-msgid "repo id"
-msgstr "Repo-号"
-
-msgid "repo name"
-msgstr "Repo-名称:"
-
-msgid "repo object for repo %s lacks a _resetSack method\n"
-msgstr "repo对象for repo  %s 缺少 a _resetSack 方法\n"
-
-msgid "run entirely from cache, don't update cache"
-msgstr "从缓冲中运行,而不是升级缓存"
-
-msgid "searchPackages() will go away in a future version of Yum.                      Use searchGenerator() instead. \n"
-msgstr "searchPackages() 将在YUM未来的版本中消失.                     用 searchGenerator()替代. \n"
-
-msgid "searching in file entries"
-msgstr "searching in file entries"
-
-msgid "searching in provides entries"
-msgstr "在可提供的入口查询"
-
-msgid "searching package %s"
-msgstr "查询包: %s"
-
-msgid "set install root"
-msgstr "设置为root安装"
-
-msgid "show Yum version and exit"
-msgstr "显示 YUM版本信息并退出"
-
-msgid "show duplicates, in repos, in list/search commands"
-msgstr "显示复制, 在repo,list/search命令下"
-
-msgid "skip packages with depsolving problems"
-msgstr "忽略包的依赖问题"
-
-msgid "status"
-msgstr "状态"
-
-msgid "therefore this repo cannot be reset.\n"
-msgstr "因此此repo不能复位.\n"
-
-msgid "updated"
-msgstr "升级"
-
-msgid "user interrupt"
-msgstr "用户中断"
-
-msgid "using local copy of %s"
-msgstr "在本地复制 %s"
-
-msgid "y"
-msgstr "Y"
-
-msgid "yes"
-msgstr "是"
-
commit a1e3e80591f6763c007ff650b5342a1969e2abe7
Author: James Antill <james at and.org>
Date:   Fri Nov 21 12:03:10 2008 -0500

    Revert "added updated Norsk translation by Kjartan Maraas"
    
    This reverts commit 51229db7af0db6148fe8ceacbd01a7a526c18da6.
    
     Trying to merge with yum-3_2_X

diff --git a/po/nb.po b/po/nb.po
index 512a227..a4214b1 100644
--- a/po/nb.po
+++ b/po/nb.po
@@ -3,39 +3,36 @@
 # Copyright (C) 2008 Terje Røsten
 # This file is distributed under the same license as the yum package.
 # Terje Røsten <terje.rosten at ntnu.no>, 2008.
-# Kjartan Maraas <kmaraas at broadpark.no>, 2008.
-#
-
+#, fuzzy
 msgid ""
 msgstr ""
 "Project-Id-Version: yum 3.2.10\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-10-31 13:29+0000\n"
-"PO-Revision-Date: 2008-10-31 20:25+0100\n"
-"Last-Translator: Kjartan Maraas <kmaraas at broadpark.no>\n"
-"Language-Team: Norwegian bokmål <i18n-nb at lister.ping.uio.no>\n"
+"POT-Creation-Date: 2008-03-25 11:29+0100\n"
+"PO-Revision-Date: 2008-02-12 11:16+0100\n"
+"Last-Translator: Terje Røsten <terje.rosten at ntnu.no>\n"
+"Language-Team: Norwegian (bokmål) <i18n-no at lister.ping.uio.no>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: ../callback.py:48 ../output.py:516 ../yum/rpmtrans.py:71
+#: ../callback.py:48 ../output.py:512
 msgid "Updating"
 msgstr "Oppdaterer"
 
-#: ../callback.py:49 ../yum/rpmtrans.py:72
+#: ../callback.py:49
 msgid "Erasing"
 msgstr "Fjerner"
 
-#: ../callback.py:50 ../callback.py:51 ../callback.py:53 ../output.py:515
-#: ../yum/rpmtrans.py:73 ../yum/rpmtrans.py:74 ../yum/rpmtrans.py:76
+#: ../callback.py:50 ../callback.py:51 ../callback.py:53 ../output.py:511
 msgid "Installing"
 msgstr "Legger inn"
 
-#: ../callback.py:52 ../callback.py:58 ../yum/rpmtrans.py:75
+#: ../callback.py:52 ../callback.py:58
 msgid "Obsoleted"
 msgstr "Er utgått"
 
-#: ../callback.py:54 ../output.py:562
+#: ../callback.py:54 ../output.py:558
 msgid "Updated"
 msgstr "Oppdatert"
 
@@ -43,7 +40,7 @@ msgstr "Oppdatert"
 msgid "Erased"
 msgstr "Fjernet"
 
-#: ../callback.py:56 ../callback.py:57 ../callback.py:59 ../output.py:560
+#: ../callback.py:56 ../callback.py:57 ../callback.py:59 ../output.py:556
 msgid "Installed"
 msgstr "Lagt inn"
 
@@ -53,7 +50,7 @@ msgstr "Intet hode - merksnodig?!"
 
 #: ../callback.py:168
 msgid "Repackage"
-msgstr "Pakk på nytt"
+msgstr "Pakker på nytt"
 
 #: ../callback.py:189
 #, python-format
@@ -65,425 +62,405 @@ msgstr "Feil: ugyldig tilstand ut: %s for %s"
 msgid "Erased: %s"
 msgstr "Fjernet: %s"
 
-#: ../callback.py:217 ../output.py:517
+#: ../callback.py:217 ../output.py:513
 msgid "Removing"
 msgstr "Fjerner"
 
-#: ../callback.py:219 ../yum/rpmtrans.py:77
+#: ../callback.py:219
 msgid "Cleanup"
 msgstr "Rydder opp"
 
-#: ../cli.py:105
+#: ../cli.py:103
 #, python-format
 msgid "Command \"%s\" already defined"
-msgstr "Kommando «%s» er allerede definert"
+msgstr "Kommando \"%s\" er allerede definert"
 
-#: ../cli.py:117
+#: ../cli.py:115
 msgid "Setting up repositories"
-msgstr "Konfigurerer lagre"
+msgstr "Lager pakkeoversikt"
 
-#: ../cli.py:128
+#: ../cli.py:126
 msgid "Reading repository metadata in from local files"
-msgstr "Leser inn data om lager fra lokale filer"
+msgstr "Leser inn data om pakker fra lokale filer"
 
-#: ../cli.py:186 ../utils.py:71
+#: ../cli.py:183 ../utils.py:72
 #, python-format
 msgid "Config Error: %s"
-msgstr "Feil i konfigurasjon: %s"
+msgstr "Feil ved konfigurasjon: %s"
 
-#: ../cli.py:189 ../cli.py:1081 ../utils.py:74
+#: ../cli.py:186 ../cli.py:1068 ../utils.py:75
 #, python-format
 msgid "Options Error: %s"
-msgstr "Feil i flagg: %s"
+msgstr "Feil med opsjoner: %s"
 
-#: ../cli.py:232
+#: ../cli.py:229
 msgid "You need to give some command"
-msgstr "Du må oppgi en kommando"
+msgstr "Vennligst oppgi minst en kommando"
 
-#: ../cli.py:274
+#: ../cli.py:271
 msgid "Disk Requirements:\n"
-msgstr "Krav til ledig diskplass:\n"
+msgstr "Krav til ledig diskplass\n"
 
-#: ../cli.py:276
+#: ../cli.py:273
 #, python-format
 msgid "  At least %dMB needed on the %s filesystem.\n"
-msgstr "Minst %dMB kreves på filsystem %s.\n"
+msgstr "Minst %dMB er nødvendig i filsystemet %s.\n"
 
 #. TODO: simplify the dependency errors?
 #. Fixup the summary
-#: ../cli.py:281
+#: ../cli.py:278
 msgid ""
 "Error Summary\n"
 "-------------\n"
 msgstr ""
-"Sammendrag for feil\n"
-"---------------------\n"
+"Oversikt over feil\n"
+"------------------\n"
 
-#: ../cli.py:320
+#: ../cli.py:317
 msgid "Trying to run the transaction but nothing to do. Exiting."
-msgstr "Prøver å kjøre transaksjonen, men den er tom. Avslutter."
+msgstr "Prøver og fullføre transaksjonen, men den er tom. Avslutter."
 
-#: ../cli.py:350
+#: ../cli.py:347
 msgid "Exiting on user Command"
 msgstr "Avslutter på grunn av kommando fra bruker"
 
-#: ../cli.py:354
+#: ../cli.py:351
 msgid "Downloading Packages:"
 msgstr "Laster ned pakker:"
 
-#: ../cli.py:359
+#: ../cli.py:356
 msgid "Error Downloading Packages:\n"
 msgstr "Kunne ikke laste ned pakkene:\n"
 
-#: ../cli.py:373 ../yum/__init__.py:2826
+#: ../cli.py:370 ../yum/__init__.py:2746
 msgid "Running rpm_check_debug"
-msgstr "Kjører rpm_check_debug"
+msgstr "Kjører rpm-sjekker"
 
-#: ../cli.py:376 ../yum/__init__.py:2829
+#: ../cli.py:373 ../yum/__init__.py:2749
 msgid "ERROR with rpm_check_debug vs depsolve:"
-msgstr "FEIL med rpm_check_debug i forhold til løsing av avhengigheter:"
+msgstr "Feil: en forskjell mellom rpm-sjekker og yum har oppstått"
 
-#: ../cli.py:380 ../yum/__init__.py:2831
+#: ../cli.py:377 ../yum/__init__.py:2751
 msgid "Please report this error in bugzilla"
 msgstr "Vennligst send en feilrapport til bugzilla"
 
-#: ../cli.py:386
+#: ../cli.py:383
 msgid "Running Transaction Test"
-msgstr "Gjennomfører test av transaksjonen"
+msgstr "Gjennomfører en test av transaksjonen"
 
-#: ../cli.py:402
+#: ../cli.py:399
 msgid "Finished Transaction Test"
 msgstr "Transaksjonstesten er fullført"
 
-#: ../cli.py:404
+#: ../cli.py:401
 msgid "Transaction Check Error:\n"
-msgstr "Feil ved test av transaksjonen:\n"
+msgstr "Feil ved sjekk av transaksjonen:\n"
 
-#: ../cli.py:411
+#: ../cli.py:408
 msgid "Transaction Test Succeeded"
 msgstr "Test av transaksjonen var vellykket"
 
-#: ../cli.py:432
+#: ../cli.py:429
 msgid "Running Transaction"
 msgstr "Utfører transaksjonen"
 
-#: ../cli.py:462
+#: ../cli.py:459
 msgid ""
 "Refusing to automatically import keys when running unattended.\n"
 "Use \"-y\" to override."
 msgstr ""
-"Nekter å importere nøkler automatisk ved kjøring uten oppsyn.\n"
-"Bruk «-y» for å overstyre."
+"Nekter og automatisk importere nøkler når man kjører uten oppsyn.\n"
+"Bruk \"-y\" for uansett å godta import."
 
-#: ../cli.py:494
+#: ../cli.py:491
 msgid "Parsing package install arguments"
 msgstr "Analyserer argumentene for pakkeinstallasjon"
 
-#: ../cli.py:504
+#: ../cli.py:501
 #, python-format
 msgid "No package %s available."
-msgstr "Pakke: %s er ikke tilgjengelig."
+msgstr "Ingen pakke: %s er tilgjengelig."
 
-#: ../cli.py:508 ../cli.py:626 ../yumcommands.py:790
+#: ../cli.py:505 ../cli.py:623 ../yumcommands.py:748
 msgid "Package(s) to install"
-msgstr "Pakke(r) som skal legges inn"
+msgstr "Pakker som legges"
 
-#: ../cli.py:509 ../cli.py:627 ../yumcommands.py:147 ../yumcommands.py:791
+#: ../cli.py:506 ../cli.py:624 ../yumcommands.py:146 ../yumcommands.py:749
 msgid "Nothing to do"
-msgstr "Ingenting å gjøre"
+msgstr "Ingenting og gjøre"
 
-#: ../cli.py:539 ../yum/__init__.py:2275 ../yum/__init__.py:2375
-#: ../yum/__init__.py:2387
+#: ../cli.py:536 ../yum/__init__.py:2232 ../yum/__init__.py:2311
+#: ../yum/__init__.py:2340
 #, python-format
 msgid "Not Updating Package that is already obsoleted: %s.%s %s:%s-%s"
 msgstr "Vil ikke oppdatere pakke som allerede er foreldet: %s.%s %s:%s-%s"
 
-#: ../cli.py:571
+#: ../cli.py:568
 #, python-format
 msgid "Could not find update match for %s"
 msgstr "Kunne ikke finne oppdatering som passet for %s"
 
-#: ../cli.py:583
+#: ../cli.py:580
 #, python-format
 msgid "%d packages marked for Update"
-msgstr "%d pakker merket for oppdatering"
+msgstr "%d pakker er vil bli oppdatert"
 
-#: ../cli.py:586
+#: ../cli.py:583
 msgid "No Packages marked for Update"
-msgstr "Ingen pakker merket for oppdatering"
+msgstr "Ingen pakker vil bli oppdatert"
 
-#: ../cli.py:602
+#: ../cli.py:599
 #, python-format
 msgid "%d packages marked for removal"
-msgstr "%d pakker merket for fjerning"
+msgstr "%d pakker vil bli fjernet"
 
-#: ../cli.py:605
+#: ../cli.py:602
 msgid "No Packages marked for removal"
-msgstr "Ingen pakker merket for fjerning"
+msgstr "Ingen pakker vil bli fjernet"
 
-#: ../cli.py:617
+#: ../cli.py:614
 msgid "No Packages Provided"
 msgstr "Ingen pakker ble tilbudt"
 
-#: ../cli.py:657
+#: ../cli.py:654
 msgid "Matching packages for package list to user args"
 msgstr "Tilpasser pakkeliste etter brukers ønske"
 
-#: ../cli.py:705
-#, python-format
+#: ../cli.py:701
+#, fuzzy, python-format
 msgid "Warning: No matches found for: %s"
-msgstr "Advarsel: Ingen treff funnet for: %s"
+msgstr "Ingen pakke for %s er funnet"
 
-#: ../cli.py:708
+#: ../cli.py:704
 msgid "No Matches found"
-msgstr "Fant ingen treff"
+msgstr "Ingen passende pakker ble funnet"
 
-#: ../cli.py:749
+#: ../cli.py:745
 #, python-format
 msgid "No Package Found for %s"
 msgstr "Ingen pakke ble funnet for %s"
 
-#: ../cli.py:761
+#: ../cli.py:757
 msgid "Cleaning up Everything"
 msgstr "Rydder opp alt"
 
-#: ../cli.py:775
+#: ../cli.py:771
 msgid "Cleaning up Headers"
-msgstr "Rydder opp pakkehoder"
+msgstr "Rydder opp metadata"
 
-#: ../cli.py:778
+#: ../cli.py:774
 msgid "Cleaning up Packages"
-msgstr "Rydder opp pakker"
+msgstr "Fjerner lagrede pakker"
 
-#: ../cli.py:781
+#: ../cli.py:777
 msgid "Cleaning up xml metadata"
 msgstr "Rydder opp i XML-metadata"
 
-#: ../cli.py:784
+#: ../cli.py:780
 msgid "Cleaning up database cache"
-msgstr "Rydder opp i mellomlager for database"
+msgstr "Rydder opp i databasen"
 
-#: ../cli.py:787
+#: ../cli.py:783
+#, fuzzy
 msgid "Cleaning up expire-cache metadata"
-msgstr "Rydder opp i metadata for expire-cache"
+msgstr "Rydder opp i XML-metadata"
 
-#: ../cli.py:790
+#: ../cli.py:786
 msgid "Cleaning up plugins"
 msgstr "Rydder opp i tillegg"
 
-#: ../cli.py:812
+#: ../cli.py:807
 msgid "Installed Groups:"
 msgstr "Installerte grupper:"
 
-#: ../cli.py:819
+#: ../cli.py:814
 msgid "Available Groups:"
 msgstr "Tilgjengelig grupper:"
 
-#: ../cli.py:825
+#: ../cli.py:820
 msgid "Done"
 msgstr "Ferdig"
 
-#: ../cli.py:836 ../cli.py:854 ../cli.py:860
+#: ../cli.py:829 ../cli.py:841 ../cli.py:847
 #, python-format
 msgid "Warning: Group %s does not exist."
-msgstr "Advarsel: Gruppe %s eksisterer ikke."
+msgstr "Advarsel: gruppe %s eksisterer ikke."
 
-#: ../cli.py:864
+#: ../cli.py:853
 msgid "No packages in any requested group available to install or update"
-msgstr ""
-"Ingen pakker tilgjengelig for installering eller oppdatering i aktuelle "
-"grupper"
+msgstr "Ingen pakker i aktuelle grupper er tilgjengelig"
 
-#: ../cli.py:866
+#: ../cli.py:855
 #, python-format
 msgid "%d Package(s) to Install"
-msgstr "%d pakke(r) vil bli installert"
+msgstr "%d pakker vil bli installert"
 
-#: ../cli.py:876
+#: ../cli.py:865
 #, python-format
 msgid "No group named %s exists"
-msgstr "Det finnes ingen gruppe med navn %s"
+msgstr "Ingen gruppe med navn %s er tilgjengelig"
 
-#: ../cli.py:882
+#: ../cli.py:871
 msgid "No packages to remove from groups"
-msgstr "Ingen pakker å fjerne fra grupper"
+msgstr "Ingen pakker og fjerne fra gruppe"
 
-#: ../cli.py:884
+#: ../cli.py:873
 #, python-format
 msgid "%d Package(s) to remove"
 msgstr "%d pakker vil bli fjernet"
 
-#: ../cli.py:926
+#: ../cli.py:915
 #, python-format
 msgid "Package %s is already installed, skipping"
 msgstr "Pakke %s er allerede lagt inn, hopper over"
 
-#: ../cli.py:937
+#: ../cli.py:926
 #, python-format
 msgid "Discarding non-comparable pkg %s.%s"
-msgstr "Vraker pakke som ikke kan sammenlignes %s.%s"
+msgstr "Vraker pakke som ikke sammenlignes %s.%s"
 
 #. we've not got any installed that match n or n+a
-#: ../cli.py:963
+#: ../cli.py:952
 #, python-format
 msgid "No other %s installed, adding to list for potential install"
 msgstr ""
-"Ingen annen %s er lagt inn, legger til pakke til liste over potensielle "
-"pakker"
+"Ingen annen pakke %s er lagt inn, legger til pakke til liste over "
+"potensielle pakker"
 
-#: ../cli.py:982
+#: ../cli.py:971
 #, python-format
 msgid "Command line error: %s"
-msgstr "Feil med kommandolinje: %s"
-
-#: ../cli.py:994
-#, python-format
-msgid ""
-"\n"
-"\n"
-"%s: %s option requires an argument"
-msgstr ""
-"\n"
-"\n"
-"%s: flagg %s krever et argument"
+msgstr "Feil ved kommandolinje: %s"
 
-#: ../cli.py:1123
-msgid "show this help message and exit"
-msgstr "vis denne hjelpteksten og avslutt"
-
-#: ../cli.py:1127
+#: ../cli.py:1101
 msgid "be tolerant of errors"
 msgstr "vær tolerant ved feil"
 
-#: ../cli.py:1129
+#: ../cli.py:1103
 msgid "run entirely from cache, don't update cache"
 msgstr "bruk kun lagrede filer ved kjøring, ikke oppdater lagrede filer"
 
-#: ../cli.py:1131
+#: ../cli.py:1105
 msgid "config file location"
 msgstr "plassering av konfigurasjonsfil"
 
-#: ../cli.py:1133
+#: ../cli.py:1107
 msgid "maximum command wait time"
 msgstr "maksimaltid for å vente på kommando"
 
-#: ../cli.py:1135
+#: ../cli.py:1109
 msgid "debugging output level"
-msgstr "nivå for tilbakemeldinger ved avlusing"
+msgstr "mengde tilbakemelding ved avlusing"
 
-#: ../cli.py:1139
+#: ../cli.py:1113
 msgid "show duplicates, in repos, in list/search commands"
-msgstr "vis duplikater i lager og i kommandoer for å liste/søke i pakker"
+msgstr ""
 
-#: ../cli.py:1141
+#: ../cli.py:1115
 msgid "error output level"
 msgstr "mengde tilbakemelding ved feil"
 
-#: ../cli.py:1144
+#: ../cli.py:1118
 msgid "quiet operation"
-msgstr "stille operasjon"
-
-#: ../cli.py:1146
-msgid "verbose operation"
-msgstr "vis ekstra informasjon"
+msgstr "utfører med minimalt av tilbakemelding"
 
-#: ../cli.py:1148
+#: ../cli.py:1122
 msgid "answer yes for all questions"
-msgstr "svar Ja til alle spørsmål"
+msgstr "svar Ja til alle eventuelle spørsmål som kan oppstå"
 
-#: ../cli.py:1150
+#: ../cli.py:1124
 msgid "show Yum version and exit"
-msgstr "vis Yum-versjon og avslutt"
+msgstr "vis versjon til Yum og avslutt deretter"
 
-#: ../cli.py:1151
+#: ../cli.py:1125
 msgid "set install root"
-msgstr "sett rot for installasjonen"
+msgstr "setter laveste filtre-nivå for intallering (standard er /)"
 
-#: ../cli.py:1155
+#: ../cli.py:1129
 msgid "enable one or more repositories (wildcards allowed)"
-msgstr "legger til et eller flere lager (jokertegn er tillatt)"
+msgstr "legger til en eller flere pakkeoversikter (jokertegn er tillatt)"
 
-#: ../cli.py:1159
+#: ../cli.py:1133
 msgid "disable one or more repositories (wildcards allowed)"
-msgstr "slå av et eller flere lager (jokertegn er tillatt)"
+msgstr "fjernet en eller flere pakkeoversikter (jokertegn er tillatt)"
 
-#: ../cli.py:1162
+#: ../cli.py:1136
 msgid "exclude package(s) by name or glob"
-msgstr "overse pakke(r) ved navn eller mønster"
+msgstr "overse pakke(r) ved navn eller glob"
 
-#: ../cli.py:1164
+#: ../cli.py:1138
 msgid "disable exclude from main, for a repo or for everything"
-msgstr "fjerner ekskludering av pakker, for et lager eller alle pakker"
+msgstr "fjerner ekskludering av pakker, for en pakkeoversikt eller fullstendig"
 
-#: ../cli.py:1167
+#: ../cli.py:1141
 msgid "enable obsoletes processing during updates"
 msgstr "ta med foreldede pakker i beregningen ved oppdatering"
 
-#: ../cli.py:1169
+#: ../cli.py:1143
 msgid "disable Yum plugins"
 msgstr "ikke bruk tillegg til Yum"
 
-#: ../cli.py:1171
+#: ../cli.py:1145
 msgid "disable gpg signature checking"
-msgstr "ikke sjekk GPG-signaturer"
+msgstr "ikke gjennomfør sjekk av GPG-signaturer"
 
-#: ../cli.py:1173
+#: ../cli.py:1147
 msgid "disable plugins by name"
-msgstr "slå av tillegg til yum etter navn"
+msgstr "ikke bruk tillegg til yum ved navn"
 
-#: ../cli.py:1176
+#: ../cli.py:1150
 msgid "skip packages with depsolving problems"
-msgstr "hopp over pakker som har problemer med avhengigheter"
+msgstr "hoppe over pakker som har problemer med avhengigheter"
 
-#: ../output.py:228
+#: ../output.py:229
 msgid "Jan"
 msgstr "jan"
 
-#: ../output.py:228
+#: ../output.py:229
 msgid "Feb"
 msgstr "feb"
 
-#: ../output.py:228
+#: ../output.py:229
 msgid "Mar"
 msgstr "mar"
 
-#: ../output.py:228
+#: ../output.py:229
 msgid "Apr"
 msgstr "apr"
 
-#: ../output.py:228
+#: ../output.py:229
 msgid "May"
 msgstr "mai"
 
-#: ../output.py:228
+#: ../output.py:229
 msgid "Jun"
 msgstr "jun"
 
-#: ../output.py:229
+#: ../output.py:230
 msgid "Jul"
 msgstr "jul"
 
-#: ../output.py:229
+#: ../output.py:230
 msgid "Aug"
 msgstr "aug"
 
-#: ../output.py:229
+#: ../output.py:230
 msgid "Sep"
 msgstr "sep"
 
-#: ../output.py:229
+#: ../output.py:230
 msgid "Oct"
 msgstr "okt"
 
-#: ../output.py:229
+#: ../output.py:230
 msgid "Nov"
 msgstr "nov"
 
-#: ../output.py:229
+#: ../output.py:230
 msgid "Dec"
 msgstr "des"
 
-#: ../output.py:239
+#: ../output.py:240
 msgid "Trying other mirror."
 msgstr "Prøver et annet speil."
 
@@ -547,25 +524,25 @@ msgstr "Beskrivelse:"
 
 #: ../output.py:351
 msgid "Is this ok [y/N]: "
-msgstr "Er dette ok [j/N]:"
+msgstr "Er dette greit [y/N]:"
 
-#: ../output.py:359 ../output.py:362
+#: ../output.py:357 ../output.py:360
 msgid "y"
-msgstr "j"
+msgstr ""
 
-#: ../output.py:359
+#: ../output.py:357
 msgid "n"
-msgstr "n"
+msgstr ""
 
-#: ../output.py:359 ../output.py:362
+#: ../output.py:357 ../output.py:360
 msgid "yes"
-msgstr "ja"
+msgstr ""
 
-#: ../output.py:359
+#: ../output.py:357
 msgid "no"
-msgstr "nei"
+msgstr ""
 
-#: ../output.py:370
+#: ../output.py:367
 #, python-format
 msgid ""
 "\n"
@@ -574,96 +551,96 @@ msgstr ""
 "\n"
 "Gruppe:%s"
 
-#: ../output.py:372
+#: ../output.py:369
 #, python-format
 msgid " Description: %s"
 msgstr " Beskrivelse: %s"
 
-#: ../output.py:374
+#: ../output.py:371
 msgid " Mandatory Packages:"
 msgstr "Obligatoriske pakker:"
 
-#: ../output.py:379
+#: ../output.py:376
 msgid " Default Packages:"
 msgstr "Standard pakker:"
 
-#: ../output.py:384
+#: ../output.py:381
 msgid " Optional Packages:"
 msgstr "Valgfrie pakker:"
 
-#: ../output.py:389
+#: ../output.py:386
 msgid " Conditional Packages:"
 msgstr "Betingede pakker:"
 
-#: ../output.py:398
+#: ../output.py:394
 #, python-format
 msgid "package: %s"
 msgstr "pakke: %s"
 
-#: ../output.py:400
+#: ../output.py:396
 msgid "  No dependencies for this package"
 msgstr " Ingen avhengigheter for denne pakka"
 
-#: ../output.py:405
+#: ../output.py:401
 #, python-format
 msgid "  dependency: %s"
 msgstr " avhengighet: %s"
 
-#: ../output.py:407
+#: ../output.py:403
 msgid "   Unsatisfied dependency"
 msgstr " avhengighet som ikke kunne tilfredstilles"
 
-#: ../output.py:465
+#: ../output.py:461
 msgid "Matched from:"
 msgstr "Treff fra:"
 
-#: ../output.py:491
+#: ../output.py:487
 msgid "There was an error calculating total download size"
 msgstr "Kunne ikke finne ut størrelse på det som skal hentes ned"
 
-#: ../output.py:496
+#: ../output.py:492
 #, python-format
 msgid "Total size: %s"
 msgstr "Totale størrelse: %s"
 
-#: ../output.py:499
+#: ../output.py:495
 #, python-format
 msgid "Total download size: %s"
 msgstr "Totale størrelse på pakker som hentes: %s"
 
-#: ../output.py:511
+#: ../output.py:507
 msgid "Package"
 msgstr "Pakke"
 
-#: ../output.py:511
+#: ../output.py:507
 msgid "Arch"
 msgstr "Arkitektur"
 
-#: ../output.py:511
+#: ../output.py:507
 msgid "Version"
 msgstr "Versjon"
 
-#: ../output.py:511
+#: ../output.py:507
 msgid "Repository"
 msgstr "Pakkeoversikt"
 
-#: ../output.py:511
+#: ../output.py:507
 msgid "Size"
 msgstr "Størrelse"
 
-#: ../output.py:518
+#: ../output.py:514
 msgid "Installing for dependencies"
 msgstr "Legges inn på grunn avhengigheter"
 
-#: ../output.py:519
+#: ../output.py:515
 msgid "Updating for dependencies"
 msgstr "Oppdateres på grunn avhengigheter"
 
-#: ../output.py:520
+#: ../output.py:516
 msgid "Removing for dependencies"
 msgstr "Fjernes på grunn avhengigheter"
 
-#: ../output.py:532
+#: ../output.py:528
 #, python-format
 msgid ""
 "     replacing  %s.%s %s\n"
@@ -672,7 +649,7 @@ msgstr ""
 "     erstatter   %s.%s %s\"\n"
 "\n"
 
-#: ../output.py:540
+#: ../output.py:536
 #, python-format
 msgid ""
 "\n"
@@ -689,27 +666,27 @@ msgstr ""
 "Oppdaterer %5.5s pakker\n"
 "Fjerner    %5.5s pakker\n"
 
-#: ../output.py:558
+#: ../output.py:554
 msgid "Removed"
 msgstr "Fjernet"
 
-#: ../output.py:559
+#: ../output.py:555
 msgid "Dependency Removed"
 msgstr "Fjernet på grunn avhengighet"
 
-#: ../output.py:561
+#: ../output.py:557
 msgid "Dependency Installed"
 msgstr "Lagt inn på grunn av avhengighet"
 
-#: ../output.py:563
+#: ../output.py:559
 msgid "Dependency Updated"
 msgstr "Oppdatert på grunn avhengighet"
 
-#: ../output.py:564
+#: ../output.py:560
 msgid "Replaced"
 msgstr "Erstattet"
 
-#: ../output.py:622
+#: ../output.py:618
 #, python-format
 msgid ""
 "\n"
@@ -720,72 +697,72 @@ msgstr ""
 " Pågående nedlastning er avbrutt, %s avbryt (ved å trykke Ctrl-C) %s ganger "
 "til innen %s%s%s sekunder for å avslutte helt.\n"
 
-#: ../output.py:632
+#: ../output.py:628
 msgid "user interrupt"
-msgstr "avbrutt av bruker"
+msgstr "avbryt av bruker"
 
-#: ../output.py:643
+#: ../output.py:639
 msgid "installed"
 msgstr "lagt inn"
 
-#: ../output.py:644
+#: ../output.py:640
 msgid "updated"
 msgstr "oppdatert"
 
-#: ../output.py:645
+#: ../output.py:641
 msgid "obsoleted"
 msgstr "foreldet"
 
-#: ../output.py:646
+#: ../output.py:642
 msgid "erased"
 msgstr "fjernet"
 
-#: ../output.py:650
+#: ../output.py:646
 #, python-format
 msgid "---> Package %s.%s %s:%s-%s set to be %s"
 msgstr "---> pakke %s.%s %s:%s-%s er satt til %s"
 
-#: ../output.py:657
+#: ../output.py:653
 msgid "--> Running transaction check"
 msgstr "--> Utfører sjekk av transaksjonen"
 
-#: ../output.py:662
+#: ../output.py:658
 msgid "--> Restarting Dependency Resolution with new changes."
-msgstr "--> Starter løsing av avhengigheter på nytt med endringer"
+msgstr "--> Starter løsning av avhengigheter på nytt"
 
-#: ../output.py:667
+#: ../output.py:663
 msgid "--> Finished Dependency Resolution"
 msgstr "--> Alle avhengigheter er løst"
 
-#: ../output.py:672
+#: ../output.py:668
 #, python-format
 msgid "--> Processing Dependency: %s for package: %s"
 msgstr "--> Beregner avhengighet: %s for pakke: %s"
 
-#: ../output.py:677
+#: ../output.py:673
 #, python-format
 msgid "--> Unresolved Dependency: %s"
 msgstr "--> Avhengigheter som ikke kunne bli tilfredstilt: %s"
 
-#: ../output.py:683
+#: ../output.py:679
 #, python-format
 msgid "--> Processing Conflict: %s conflicts %s"
 msgstr "--> Beregner konflikter: %s er i konflikt med %s"
 
-#: ../output.py:686
+#: ../output.py:682
 msgid "--> Populating transaction set with selected packages. Please wait."
-msgstr "--> Fyller transaksjonen med valgte pakker. Vennligst vent."
+msgstr "--> Fyller transaksjonen med valgt pakker. Vennligst vent."
 
-#: ../output.py:690
+#: ../output.py:686
 #, python-format
 msgid "---> Downloading header for %s to pack into transaction set."
 msgstr "---> Henter ned filhode for pakke %s for å fylle transaksjonen."
 
-#: ../yumcommands.py:37
+#: ../yumcommands.py:36
 msgid "You need to be root to perform this command."
 msgstr "Du må være rootbruker for å utføre denne kommandoen."
 
-#: ../yumcommands.py:44
+#: ../yumcommands.py:43
 msgid ""
 "\n"
 "You have enabled checking of packages via GPG keys. This is a good thing. \n"
@@ -803,277 +780,261 @@ msgid ""
 "For more information contact your distribution or package provider.\n"
 msgstr ""
 "\n"
-"Du har valgt å sjekke pakkene ved hjelp av GPG-nøkler. Det er fornuftig.\n"
+"Du har valgt og sjekk pakkene ved hjelp av GPG-nøkler. Det er fornufting.\n"
 "Du har imidlertid ingen offentlige GPG-nøkler installert\n"
-"Du må hente ned og legge inn nøklene. Du kan legge dem inn med kommandoen:\n"
+"Du må hente ned og legge inn nøklene. Du kan legge de inn med kommandoen:\n"
 "\n"
 "  rpm --import public.gpg.key\n"
 "\n"
-"Et annet og bedre alternativ er å oppgi URL til de nøklene du vil bruke.\n"
-"Bruk opsjonen 'gpgkey' for hvert lager for å ta dette i bruk.\n"
+"Et annet og bedre alternativ er og oppgi URL til de nøklene du vil bruke.\n"
+"Bruk opsjonen 'gpgkey' for hver pakkeoversikt for å ta dette i bruk.\n"
+"\n"
 "\n"
-"Kontakt din distribusjon eller pakkeansvarlig for mer informasjon.\n"
 
-#: ../yumcommands.py:64
+#: ../yumcommands.py:63
 #, python-format
 msgid "Error: Need to pass a list of pkgs to %s"
-msgstr "Feil: du må oppgi en liste med pakker som skal %s"
+msgstr "Feil: du må oppgi ei liste over pakker som skal %s"
 
-#: ../yumcommands.py:70
+#: ../yumcommands.py:69
 msgid "Error: Need an item to match"
-msgstr "Feil: trenger noe å sammenligne med"
+msgstr "Feil: trenger noe og sammenligne med"
 
-#: ../yumcommands.py:76
+#: ../yumcommands.py:75
 msgid "Error: Need a group or list of groups"
-msgstr "Feil: trenger en gruppe eller en liste med grupper"
+msgstr "Feil: trenger ei gruppe eller ei liste med grupper"
 
-#: ../yumcommands.py:85
+#: ../yumcommands.py:84
 #, python-format
 msgid "Error: clean requires an option: %s"
 msgstr "Feil: clean trenger minst et argument: %s"
 
-#: ../yumcommands.py:90
+#: ../yumcommands.py:89
 #, python-format
 msgid "Error: invalid clean argument: %r"
 msgstr "Feil: ugyldig argument gitt til kommandoen clean: %r"
 
-#: ../yumcommands.py:103
+#: ../yumcommands.py:102
 msgid "No argument to shell"
 msgstr "Ingen argumenter ble gitt til kommandoen shell"
 
-#: ../yumcommands.py:106
+#: ../yumcommands.py:105
 #, python-format
 msgid "Filename passed to shell: %s"
-msgstr "Følgende filnavn ble sendt til skallet: %s"
+msgstr "Følgende filnavn ble som argument til shell: %s"
 
-#: ../yumcommands.py:110
+#: ../yumcommands.py:109
 #, python-format
 msgid "File %s given as argument to shell does not exist."
 msgstr ""
 "Filen %s som ble gitt som argument til kommandoen shell eksisterer ikke."
 
-#: ../yumcommands.py:116
+#: ../yumcommands.py:115
 msgid "Error: more than one file given as argument to shell."
-msgstr "Feil: mer enn en fil ble gitt som argument til kommandoen shell."
+msgstr "Feil: mer enn ei fil ble gitt som argument til kommandoen shell."
 
-#: ../yumcommands.py:157
+#: ../yumcommands.py:156
 msgid "PACKAGE..."
-msgstr "PAKKE..."
+msgstr "Pakke..."
 
-#: ../yumcommands.py:160
+#: ../yumcommands.py:159
 msgid "Install a package or packages on your system"
-msgstr "Legg inn en eller flere pakker på systemet"
+msgstr "Legger inn pakke(r) på ditt system"
 
-#: ../yumcommands.py:169
+#: ../yumcommands.py:168
 msgid "Setting up Install Process"
 msgstr "Forberedelser for installasjon"
 
-#: ../yumcommands.py:180
+#: ../yumcommands.py:179
 msgid "[PACKAGE...]"
-msgstr "[PAKKE...]"
+msgstr "[Pakke...}"
 
-#: ../yumcommands.py:183
+#: ../yumcommands.py:182
 msgid "Update a package or packages on your system"
-msgstr "Oppdater en eller flere pakker på systemet"
+msgstr "Oppdaterer pakke(r) på ditt system"
 
-#: ../yumcommands.py:191
+#: ../yumcommands.py:190
 msgid "Setting up Update Process"
 msgstr "Forberedelser for oppdatering"
 
-#: ../yumcommands.py:205
+#: ../yumcommands.py:204
 msgid "Display details about a package or group of packages"
 msgstr "Viser detaljer om en pakke eller en gruppe av grupper"
 
-#: ../yumcommands.py:213
+#: ../yumcommands.py:212
 msgid "Installed Packages"
 msgstr "Pakker som er installert"
 
-#: ../yumcommands.py:214
+#: ../yumcommands.py:213
 msgid "Available Packages"
-msgstr "Tilgjengelige pakker"
+msgstr "Tilgjengelig pakker"
 
-#: ../yumcommands.py:215
+#: ../yumcommands.py:214
 msgid "Extra Packages"
 msgstr "Tilleggspakker"
 
-#: ../yumcommands.py:216
+#: ../yumcommands.py:215
 msgid "Updated Packages"
 msgstr "Oppdaterte pakker"
 
-#: ../yumcommands.py:222 ../yumcommands.py:228
+#: ../yumcommands.py:221 ../yumcommands.py:225
 msgid "Obsoleting Packages"
 msgstr "Utdaterte pakker"
 
-#: ../yumcommands.py:229
+#: ../yumcommands.py:226
 msgid "Recently Added Packages"
-msgstr "Pakker som nylig er lagt til"
+msgstr "Pakker som nylig er blitt lagt til"
 
-#: ../yumcommands.py:235
+#: ../yumcommands.py:232
 msgid "No matching Packages to list"
-msgstr "Ingen passende pakker å liste opp"
+msgstr "Ingen passende pakker og liste opp"
 
-#: ../yumcommands.py:249
+#: ../yumcommands.py:246
 msgid "List a package or groups of packages"
-msgstr "Lag en liste med pakker eller grupper av pakker"
+msgstr "Lag en liste over pakker eller gruppe av pakker"
 
-#: ../yumcommands.py:261
+#: ../yumcommands.py:258
 msgid "Remove a package or packages from your system"
-msgstr "Fjern en eller flere pakker fra systemet"
+msgstr "Fjerner pakke(r) fra ditt system"
 
-#: ../yumcommands.py:269
+#: ../yumcommands.py:266
 msgid "Setting up Remove Process"
 msgstr "Klargjør for fjerning av pakker"
 
-#: ../yumcommands.py:281
+#: ../yumcommands.py:278
 msgid "Setting up Group Process"
-msgstr "Klargjør grupper med pakker"
+msgstr "Klargjør grupper av pakker"
 
-#: ../yumcommands.py:287
+#: ../yumcommands.py:284
 msgid "No Groups on which to run command"
-msgstr "Ingen gruppe er valgt for aktuell kommando"
+msgstr "Ingen gruppe er valgt for aktuelle kommando"
 
-#: ../yumcommands.py:300
+#: ../yumcommands.py:297
 msgid "List available package groups"
-msgstr "Lag liste over tilgjengelige pakkegrupper"
+msgstr "Lag liste over tilgjengelig grupper"
 
-#: ../yumcommands.py:317
+#: ../yumcommands.py:314
 msgid "Install the packages in a group on your system"
-msgstr "Legger inn pakkene i en gruppe på systemet"
+msgstr "Legger inn pakkene i gruppe av pakker"
 
-#: ../yumcommands.py:339
+#: ../yumcommands.py:336
 msgid "Remove the packages in a group from your system"
-msgstr "Fjern pakkene i en gruppe fra systemet"
+msgstr "Fjerner alle pakkene i en gruppe av pakker"
 
-#: ../yumcommands.py:363
+#: ../yumcommands.py:360
 msgid "Display details about a package group"
 msgstr "Viser detaljer om en gruppe av pakker"
 
-#: ../yumcommands.py:387
+#: ../yumcommands.py:384
 msgid "Generate the metadata cache"
-msgstr "Lag mellomlager med metadata"
+msgstr "Generer mellomlager av metadata"
 
-#: ../yumcommands.py:393
+#: ../yumcommands.py:390
 msgid "Making cache files for all metadata files."
 msgstr "Lager mellomlager for samtlige filer med metadata."
 
-#: ../yumcommands.py:394
+#: ../yumcommands.py:391
 msgid "This may take a while depending on the speed of this computer"
-msgstr "Dette kan en stund avhengig av hvor rask datamaskinen er"
+msgstr "Dette kan ei stund alt ettersom hvor rask din maskin er"
 
-#: ../yumcommands.py:415
+#: ../yumcommands.py:412
 msgid "Metadata Cache Created"
 msgstr "Mellomlager er ferdig lagd"
 
-#: ../yumcommands.py:429
+#: ../yumcommands.py:426
 msgid "Remove cached data"
 msgstr "Fjern mellomlager med metadata"
 
-#: ../yumcommands.py:450
+#: ../yumcommands.py:447
 msgid "Find what package provides the given value"
-msgstr "Finn hvilken pakke som inneholder etterspurt verdi"
+msgstr "Finn hvilken pakke som tilbyr den søkte verdi"
 
-#: ../yumcommands.py:470
+#: ../yumcommands.py:467
 msgid "Check for available package updates"
-msgstr "Se etter tilgjengelige pakkeoppdateringer"
+msgstr "Sjekker om det oppdatering tilgjengelig for gruppene av pakker"
 
-#: ../yumcommands.py:493
+#: ../yumcommands.py:490
 msgid "Search package details for the given string"
-msgstr "Søker etter oppgitt streng i pakkedetaljene"
+msgstr "Søker etter detaljer om pakke utenifra den aktuelle strengen"
 
-#: ../yumcommands.py:499
+#: ../yumcommands.py:496
 msgid "Searching Packages: "
-msgstr "Søker i pakker: "
+msgstr "Søker etter pakker: "
 
-#: ../yumcommands.py:516
+#: ../yumcommands.py:513
 msgid "Update packages taking obsoletes into account"
-msgstr "Oppdater pakker og ta hensyn til pakker som blir utdatert"
+msgstr "Oppdatering pakker og tar samtidig hensyn til pakker som er utdatert"
 
-#: ../yumcommands.py:525
+#: ../yumcommands.py:522
 msgid "Setting up Upgrade Process"
 msgstr "Klargjør for oppdatering"
 
-#: ../yumcommands.py:539
+#: ../yumcommands.py:536
 msgid "Install a local RPM"
 msgstr "Legger inn en RPM fra filsystemet"
 
-#: ../yumcommands.py:548
+#: ../yumcommands.py:545
 msgid "Setting up Local Package Process"
 msgstr "Klargjøring for pakker på lokalt filsystem"
 
-#: ../yumcommands.py:567
+#: ../yumcommands.py:564
 msgid "Determine which package provides the given dependency"
 msgstr "Finner hvilken pakke som tilbyr den gitte avhengigheten"
 
-#: ../yumcommands.py:570
+#: ../yumcommands.py:567
 msgid "Searching Packages for Dependency:"
-msgstr "Søker i pakker etter avhengighet:"
+msgstr "Søker etter pakker med avhengighet:"
 
-#: ../yumcommands.py:584
+#: ../yumcommands.py:581
 msgid "Run an interactive yum shell"
 msgstr "Kjører det interaktive Yum-skallet"
 
-#: ../yumcommands.py:590
+#: ../yumcommands.py:587
 msgid "Setting up Yum Shell"
 msgstr "Klargjør Yum-skallet"
 
-#: ../yumcommands.py:608
+#: ../yumcommands.py:605
 msgid "List a package's dependencies"
-msgstr "Vis avhengigheter for en pakke"
+msgstr "Lister opp avhengighetene til pakka"
 
-#: ../yumcommands.py:614
+#: ../yumcommands.py:611
 msgid "Finding dependencies: "
 msgstr "Finner avhengigheter: "
 
-#: ../yumcommands.py:630
+#: ../yumcommands.py:627
 msgid "Display the configured software repositories"
 msgstr "Viser de pakkeoversiktene som er satt opp"
 
-#: ../yumcommands.py:666
-msgid "enabled"
-msgstr "aktiv"
-
-#: ../yumcommands.py:673
-msgid "disabled"
-msgstr "inaktiv"
-
-#: ../yumcommands.py:682
+#: ../yumcommands.py:645
 msgid "repo id"
 msgstr "id"
 
-#: ../yumcommands.py:683
+#: ../yumcommands.py:645
 msgid "repo name"
 msgstr "navn"
 
-#: ../yumcommands.py:683
+#: ../yumcommands.py:645
 msgid "status"
 msgstr "status"
 
-#: ../yumcommands.py:686
-msgid "Repo-id     : "
-msgstr "ID for lager: "
-
-#: ../yumcommands.py:687
-msgid "Repo-name   : "
-msgstr "Navn på lager : "
-
-#: ../yumcommands.py:688
-msgid "Repo-enabled: "
-msgstr "Lager aktivt: "
+#: ../yumcommands.py:651
+msgid "enabled"
+msgstr "aktiv"
 
-#: ../yumcommands.py:689
-msgid "Repo-size   : "
-msgstr "Størrelse på lager : "
+#: ../yumcommands.py:654
+msgid "disabled"
+msgstr "inaktiv"
 
-#: ../yumcommands.py:713
+#: ../yumcommands.py:671
 msgid "Display a helpful usage message"
 msgstr "Viser en hjelpetekst"
 
-#: ../yumcommands.py:747
+#: ../yumcommands.py:705
 #, python-format
 msgid "No help available for %s"
 msgstr "Ingen hjelp er tilgjengelig for %s"
 
-#: ../yumcommands.py:752
+#: ../yumcommands.py:710
 msgid ""
 "\n"
 "\n"
@@ -1081,9 +1042,9 @@ msgid ""
 msgstr ""
 "\n"
 "\n"
-"alias:"
+"aliaser:"
 
-#: ../yumcommands.py:754
+#: ../yumcommands.py:712
 msgid ""
 "\n"
 "\n"
@@ -1093,15 +1054,15 @@ msgstr ""
 "\n"
 "alias:"
 
-#: ../yumcommands.py:783
+#: ../yumcommands.py:741
 msgid "Setting up Reinstall Process"
 msgstr "Klargjør for å legge inn pakke(r) på nytt"
 
-#: ../yumcommands.py:797
+#: ../yumcommands.py:755
 msgid "reinstall a package"
-msgstr "legg inn en pakke på nytt"
+msgstr "Legger inn en pakke på nytt"
 
-#: ../yummain.py:55
+#: ../yummain.py:41
 msgid ""
 "\n"
 "\n"
@@ -1111,7 +1072,7 @@ msgstr ""
 "\n"
 "Avslutter etter ønske"
 
-#: ../yummain.py:61
+#: ../yummain.py:47
 msgid ""
 "\n"
 "\n"
@@ -1119,42 +1080,42 @@ msgid ""
 msgstr ""
 "\n"
 "\n"
-"Avslutter på grunn av brutt rør"
+"Avslutter på grunn ødelagt programrør"
 
-#: ../yummain.py:112
+#: ../yummain.py:105
 msgid ""
 "Another app is currently holding the yum lock; waiting for it to exit..."
 msgstr ""
 "Et annet program holder en fillås for Yum, venter til fillåsen frigjøres..."
 
-#: ../yummain.py:139 ../yummain.py:178
+#: ../yummain.py:132 ../yummain.py:171
 #, python-format
 msgid "Error: %s"
 msgstr "Feil: %s"
 
-#: ../yummain.py:149 ../yummain.py:185
+#: ../yummain.py:142 ../yummain.py:178
 #, python-format
 msgid "Unknown Error(s): Exit Code: %d:"
-msgstr "Ukjent feil: feilkode: %d:"
+msgstr "Ukjent feil: feilkode: %d"
 
 #. Depsolve stage
-#: ../yummain.py:156
+#: ../yummain.py:149
 msgid "Resolving Dependencies"
-msgstr "Løser avhengigheter"
+msgstr "Løser opp i avhengigheter"
 
-#: ../yummain.py:191
+#: ../yummain.py:184
 msgid ""
 "\n"
 "Dependencies Resolved"
 msgstr ""
 "\n"
-"Alle avhengigheter er løst"
+"Alle avhengigheter er oppløst"
 
-#: ../yummain.py:205
+#: ../yummain.py:198
 msgid "Complete!"
 msgstr "Ferdig!"
 
-#: ../yummain.py:252
+#: ../yummain.py:245
 msgid ""
 "\n"
 "\n"
@@ -1164,258 +1125,319 @@ msgstr ""
 "\n"
 "Avslutter etter ønske"
 
-#: ../yum/depsolve.py:78
+#: ../yum/depsolve.py:82
 msgid "doTsSetup() will go away in a future version of Yum.\n"
 msgstr "doTsSetup() vil forsvinne i en kommende utgave av Yum.\n"
 
-#: ../yum/depsolve.py:91
+#: ../yum/depsolve.py:95
 msgid "Setting up TransactionSets before config class is up"
 msgstr "Setter opp transaksjons-sett før config klassen er klar"
 
-#: ../yum/depsolve.py:132
+#: ../yum/depsolve.py:136
 #, python-format
 msgid "Invalid tsflag in config file: %s"
 msgstr "Ugyldig tsflag in konfigurasjonsfil: %s"
 
-#: ../yum/depsolve.py:176
+#: ../yum/depsolve.py:147
+#, python-format
+msgid "Searching pkgSack for dep: %s"
+msgstr "Søker i pkgSack etter avhengighet: %s"
+
+#: ../yum/depsolve.py:170
+#, python-format
+msgid "Potential match for %s from %s"
+msgstr "Potensielt treff for %s i %s"
+
+#: ../yum/depsolve.py:178
+#, python-format
+msgid "Matched %s to require for %s"
+msgstr "Passende %s for å tilfredstille %s"
+
+#: ../yum/depsolve.py:219
 #, python-format
 msgid "Member: %s"
 msgstr "Medlem: %s"
 
-#: ../yum/depsolve.py:190 ../yum/depsolve.py:592
+#: ../yum/depsolve.py:233 ../yum/depsolve.py:696
 #, python-format
 msgid "%s converted to install"
 msgstr "%s ble omdannet til installering"
 
-#: ../yum/depsolve.py:197
+#: ../yum/depsolve.py:240
 #, python-format
 msgid "Adding Package %s in mode %s"
 msgstr "Legger til pakke %s in modus %s"
 
-#: ../yum/depsolve.py:207
+#: ../yum/depsolve.py:250
 #, python-format
 msgid "Removing Package %s"
 msgstr "Fjerner pakke %s"
 
-#: ../yum/depsolve.py:218
+#: ../yum/depsolve.py:261
 #, python-format
 msgid "%s requires: %s"
-msgstr "%s krever: %s"
+msgstr "%s avhenger av: %s"
+
+#: ../yum/depsolve.py:312
+msgid "Needed Require has already been looked up, cheating"
+msgstr "Nødvendig avhengighet har allerede blitt plukket opp, jukser"
 
-#: ../yum/depsolve.py:273
+#: ../yum/depsolve.py:322
+#, python-format
+msgid "Needed Require is not a package name. Looking up: %s"
+msgstr "Nødvendig avhengighet er ikke et navn på pakke. Ser etter: %s"
+
+#: ../yum/depsolve.py:329
+#, python-format
+msgid "Potential Provider: %s"
+msgstr "Potensiell tilbyder: %s"
+
+#: ../yum/depsolve.py:352
+#, python-format
+msgid "Mode is %s for provider of %s: %s"
+msgstr "Modus er %s for tilbyder av %s: %s"
+
+#: ../yum/depsolve.py:356
+#, python-format
+msgid "Mode for pkg providing %s: %s"
+msgstr "Modus for pakke som tilbyr %s: %s"
+
+#: ../yum/depsolve.py:360
+#, python-format
+msgid "TSINFO: %s package requiring %s marked as erase"
+msgstr "TSINFO: pakke %s som er nødvendig for %s vil bli fjernet"
+
+#: ../yum/depsolve.py:372
 #, python-format
 msgid "TSINFO: Obsoleting %s with %s to resolve dep."
 msgstr "TSINFO: Bytter ut %s med %s for å løse opp i avhengighet."
 
-#: ../yum/depsolve.py:276
+#: ../yum/depsolve.py:375
 #, python-format
 msgid "TSINFO: Updating %s to resolve dep."
 msgstr "TSINFO: Oppdaterer %s for å løse opp i avhengighet."
 
-#: ../yum/depsolve.py:279
+#: ../yum/depsolve.py:378
 #, python-format
 msgid "Cannot find an update path for dep for: %s"
 msgstr "Kunne ikke finne måte å oppdatere sti for avhengighet: %s."
 
-#: ../yum/depsolve.py:283
+#: ../yum/depsolve.py:388
 #, python-format
-msgid "TSINFO: %s package requiring %s marked as erase"
-msgstr "TSINFO: pakke %s som er nødvendig for %s vil bli fjernet"
+msgid "Unresolvable requirement %s for %s"
+msgstr "Avhengighet %s kan ikke løses opp: %s"
 
 #. is it already installed?
-#: ../yum/depsolve.py:329
+#: ../yum/depsolve.py:434
 #, python-format
 msgid "%s is in providing packages but it is already installed, removing."
 msgstr "%s tilbyr pakker, men er allerede installert, fjerner denne."
 
-#: ../yum/depsolve.py:344
+#: ../yum/depsolve.py:449
 #, python-format
 msgid "Potential resolving package %s has newer instance in ts."
-msgstr "Pakke %s som potensielt løser opp avhengighet har nyere instans in ts."
+msgstr ""
+"Pakke %s som potensielt tilbyder løsning har allerede nyere instans in ts."
 
-#: ../yum/depsolve.py:355
+#: ../yum/depsolve.py:460
 #, python-format
 msgid "Potential resolving package %s has newer instance installed."
 msgstr "Pakke %s som potensielt løser opp avhengighet er allerde installert."
 
-#: ../yum/depsolve.py:363 ../yum/depsolve.py:410
+#: ../yum/depsolve.py:468 ../yum/depsolve.py:527
 #, python-format
 msgid "Missing Dependency: %s is needed by package %s"
 msgstr "Uløst avhengighet: %s trengs av pakke %s"
 
-#: ../yum/depsolve.py:376
+#: ../yum/depsolve.py:481
 #, python-format
 msgid "%s already in ts, skipping this one"
 msgstr "%s er allerde i ts, hopper over denne"
 
-#: ../yum/depsolve.py:420
+#: ../yum/depsolve.py:510
+#, python-format
+msgid ""
+"Failure finding best provider of %s for %s, exceeded maximum loop length"
+msgstr ""
+
+#: ../yum/depsolve.py:537
 #, python-format
 msgid "TSINFO: Marking %s as update for %s"
 msgstr "TSINFO: Setter opp %s som oppdatering av %s"
 
-#: ../yum/depsolve.py:427
+#: ../yum/depsolve.py:544
 #, python-format
 msgid "TSINFO: Marking %s as install for %s"
 msgstr "TSINFO: Setter opp %s som pakke for installering av %s"
 
-#: ../yum/depsolve.py:518 ../yum/depsolve.py:610
+#: ../yum/depsolve.py:635 ../yum/depsolve.py:714
 msgid "Success - empty transaction"
-msgstr "Suksess - transaksjonen er tom"
+msgstr "Suksess- transaksjonen er tom"
 
-#: ../yum/depsolve.py:562 ../yum/depsolve.py:582
+#: ../yum/depsolve.py:673 ../yum/depsolve.py:686
 msgid "Restarting Loop"
 msgstr "Starter sløyfe på nytt"
 
-#: ../yum/depsolve.py:598
+#: ../yum/depsolve.py:702
 msgid "Dependency Process ending"
 msgstr "Beregning av avhengighet avsluttes"
 
-#: ../yum/depsolve.py:604
+#: ../yum/depsolve.py:708
 #, python-format
 msgid "%s from %s has depsolving problems"
-msgstr "%s fra %s har problemer med avhengigheter"
+msgstr "%s to %s har problemer med avhengigheter"
 
-#: ../yum/depsolve.py:611
+#: ../yum/depsolve.py:715
 msgid "Success - deps resolved"
 msgstr "Suksess - alle avhengigheter er tilfredstilt"
 
-#: ../yum/depsolve.py:625
+#: ../yum/depsolve.py:729
 #, python-format
 msgid "Checking deps for %s"
 msgstr "Sjekker avhengigheter for %s"
 
-#: ../yum/depsolve.py:687
+#: ../yum/depsolve.py:782
 #, python-format
 msgid "looking for %s as a requirement of %s"
-msgstr "leter etter %s som kreves av %s"
+msgstr "leter etter %s som en nødvendighet fra %s"
+
+#: ../yum/depsolve.py:933
+#, python-format
+msgid "Comparing best: %s to po: %s"
+msgstr ""
 
-#: ../yum/depsolve.py:814
+#: ../yum/depsolve.py:937
 #, python-format
-msgid "Running compare_providers() for %s"
-msgstr "Kjører compare_providers() for %s"
+msgid "Same: best %s == po: %s"
+msgstr ""
+
+#: ../yum/depsolve.py:952 ../yum/depsolve.py:963
+#, python-format
+msgid "best %s obsoletes po: %s"
+msgstr ""
 
-#: ../yum/depsolve.py:842 ../yum/depsolve.py:848
+#: ../yum/depsolve.py:955
 #, python-format
+msgid "po %s obsoletes best: %s"
+msgstr ""
+
+#: ../yum/depsolve.py:972 ../yum/depsolve.py:979 ../yum/depsolve.py:1036
+#, fuzzy, python-format
 msgid "better arch in po %s"
-msgstr "bedre arch i po %s"
+msgstr "søker etter pakke %s"
 
-#: ../yum/depsolve.py:887
+#: ../yum/depsolve.py:988 ../yum/depsolve.py:1010
 #, python-format
-msgid "%s obsoletes %s"
-msgstr "%s faser ut %s"
+msgid "po %s shares a sourcerpm with %s"
+msgstr ""
 
-#: ../yum/depsolve.py:898
+#: ../yum/depsolve.py:992 ../yum/depsolve.py:1015
 #, python-format
-msgid ""
-"archdist compared %s to %s on %s\n"
-"  Winner: %s"
+msgid "best %s shares a sourcerpm with %s"
 msgstr ""
-"archdist sammenlignet %s med %s på %s\n"
-" Vinner: %s"
 
-#: ../yum/depsolve.py:905
+#: ../yum/depsolve.py:999 ../yum/depsolve.py:1020
 #, python-format
-msgid "common sourcerpm %s and %s"
+msgid "po %s shares more of the name prefix with %s"
 msgstr ""
 
-#: ../yum/depsolve.py:911
+#: ../yum/depsolve.py:1003 ../yum/depsolve.py:1029
 #, python-format
-msgid "common prefix of %s between %s and %s"
+msgid "po %s has a shorter name than best %s"
 msgstr ""
 
-#: ../yum/depsolve.py:919
+#: ../yum/depsolve.py:1025
 #, python-format
-msgid "Best Order: %s"
-msgstr "Beste rekkefølge: %s"
+msgid "bestpkg %s shares more of the name prefix with %s"
+msgstr ""
 
-#: ../yum/__init__.py:148
+#: ../yum/__init__.py:119
 msgid "doConfigSetup() will go away in a future version of Yum.\n"
 msgstr "doConfigSetup() vil forsvinne i en kommende utgave av Yum.\n"
 
-#. FIXME: Use critical? or exception?
-#: ../yum/__init__.py:323
+#: ../yum/__init__.py:296
 #, python-format
 msgid "Repository %r is missing name in configuration, using id"
-msgstr "Pakkelager %r mangler navn i konfigurasjonsfilen(e), bruker id"
+msgstr "Pakkeoversikt %r har intet navn i konfigurasjonsfilen(e), bruker id"
 
-#: ../yum/__init__.py:359
+#: ../yum/__init__.py:332
 msgid "plugins already initialised"
-msgstr "tillegg til yum er allerede initiert"
+msgstr "tillegg til yum er allerede satt opp"
 
-#: ../yum/__init__.py:366
+#: ../yum/__init__.py:339
 msgid "doRpmDBSetup() will go away in a future version of Yum.\n"
 msgstr "doRepoSetup() vil forsvinne i en kommende utgave av Yum.\n"
 
-#: ../yum/__init__.py:376
+#: ../yum/__init__.py:349
 msgid "Reading Local RPMDB"
-msgstr "Leser inn lokal RPM-database"
+msgstr "Leser inn lokale RPM-database"
 
-#: ../yum/__init__.py:394
+#: ../yum/__init__.py:367
 msgid "doRepoSetup() will go away in a future version of Yum.\n"
 msgstr "doRepoSetup() vil forsvinne i en kommende utgave av Yum\n"
 
-#: ../yum/__init__.py:414
+#: ../yum/__init__.py:387
 msgid "doSackSetup() will go away in a future version of Yum.\n"
 msgstr "doSackSetup() vil forsvinne i en kommende utgave av Yum\n"
 
-#: ../yum/__init__.py:431
+#: ../yum/__init__.py:404
 msgid "Setting up Package Sacks"
 msgstr "Lager sekker med pakker"
 
-#: ../yum/__init__.py:474
+#: ../yum/__init__.py:447
 #, python-format
 msgid "repo object for repo %s lacks a _resetSack method\n"
-msgstr "objekt for pakkelager %s mangler metoden _resetSack\n"
+msgstr "objekt for pakkesoversikt %s mangler metoden _resetSack\n"
 
-#: ../yum/__init__.py:475
+#: ../yum/__init__.py:448
 msgid "therefore this repo cannot be reset.\n"
-msgstr "derfor kan ikke denne pakkeoversikten nullstilles\n"
+msgstr "derfor kan ikke denne pakkeoversikten bli nullstilt\n"
 
-#: ../yum/__init__.py:480
+#: ../yum/__init__.py:453
 msgid "doUpdateSetup() will go away in a future version of Yum.\n"
 msgstr "doUpdateSetup() vil forsvinne i en kommende utgave av Yum.\n"
 
-#: ../yum/__init__.py:492
+#: ../yum/__init__.py:465
 msgid "Building updates object"
-msgstr "Bygger opp oppdateringsobjekt"
+msgstr "Bygger opp oppdateringobject"
 
-#: ../yum/__init__.py:523
+#: ../yum/__init__.py:496
 msgid "doGroupSetup() will go away in a future version of Yum.\n"
 msgstr "doGroupSetup() vil forsvinne i en kommende utgave av Yum.\n"
 
-#: ../yum/__init__.py:547
+#: ../yum/__init__.py:520
 msgid "Getting group metadata"
-msgstr "Henter metadata for grupper"
+msgstr "Henter metadata om grupper"
 
-#: ../yum/__init__.py:572
+#: ../yum/__init__.py:546
 #, python-format
 msgid "Adding group file from repository: %s"
 msgstr "Legger til gruppefil fra pakkeoversikt: %s"
 
-#: ../yum/__init__.py:577
+#: ../yum/__init__.py:555
 #, python-format
 msgid "Failed to add groups file for repository: %s - %s"
-msgstr "Kunne ikke legge til gruppefil for pakkeoversikt: %s - %s"
+msgstr "Kunne ike legge til gruppefil for pakkeoversikt: %s - %s"
 
-#: ../yum/__init__.py:583
+#: ../yum/__init__.py:561
 msgid "No Groups Available in any repository"
-msgstr "Ingen grupper tilgjengelig fra noen lagre"
+msgstr "Ingen grupper overhode tilgjengelig"
 
-#: ../yum/__init__.py:633
+#: ../yum/__init__.py:611
 msgid "Importing additional filelist information"
-msgstr "Henter mer informasjon om fil-lister"
+msgstr "Henter ytterligere informasjon om fil-lister"
 
-#: ../yum/__init__.py:684
+#: ../yum/__init__.py:657
 #, python-format
 msgid "Skip-broken round %i"
-msgstr "Runde %i for å hoppe over feil avhengighet"
+msgstr "Runde %i på grunn av ødelagte avhengigheter."
 
-#: ../yum/__init__.py:707
+#: ../yum/__init__.py:680
 #, python-format
 msgid "Skip-broken took %i rounds "
-msgstr "På grunn feil i avhengigheter ble det gjennomført %i runder "
+msgstr "På grunn ødelagte avhengigheter ble det gjennomført %i runder "
 
-#: ../yum/__init__.py:708
+#: ../yum/__init__.py:681
 msgid ""
 "\n"
 "Packages skipped because of dependency problems:"
@@ -1423,161 +1445,157 @@ msgstr ""
 "\n"
 "Pakker som ble oversett på grunn av problemer med avhengigheter:"
 
-#: ../yum/__init__.py:712
+#: ../yum/__init__.py:685
 #, python-format
 msgid "    %s from %s"
 msgstr "    %s fra %s"
 
-#: ../yum/__init__.py:792
-msgid ""
-"Warning: scriptlet or other non-fatal errors occurred during transaction."
-msgstr ""
-
-#: ../yum/__init__.py:807
+#: ../yum/__init__.py:774
 #, python-format
 msgid "Failed to remove transaction file %s"
 msgstr "Kunne ikke fjerne transaksjonsfil %s"
 
-#: ../yum/__init__.py:847
+#: ../yum/__init__.py:814
 #, python-format
 msgid "excluding for cost: %s from %s"
 msgstr "ekskluderer på grunn av kostnad: %s fra %s"
 
-#: ../yum/__init__.py:878
+#: ../yum/__init__.py:845
 msgid "Excluding Packages in global exclude list"
-msgstr "Ekskluderer pakker som er i global liste med ekskluderte pakker"
+msgstr "Ekskluderer pakker som er i global liste av ekskluderte pakker"
 
-#: ../yum/__init__.py:880
+#: ../yum/__init__.py:847
 #, python-format
 msgid "Excluding Packages from %s"
 msgstr "Ekskluderer pakker fra %s"
 
-#: ../yum/__init__.py:906
+#: ../yum/__init__.py:875
 #, python-format
 msgid "Reducing %s to included packages only"
 msgstr "Reduserer %s til kun inkluderte pakker"
 
-#: ../yum/__init__.py:911
+#: ../yum/__init__.py:880
 #, python-format
 msgid "Keeping included package %s"
 msgstr "Tar vare på inkludert pakke %s"
 
-#: ../yum/__init__.py:917
+#: ../yum/__init__.py:886
 #, python-format
 msgid "Removing unmatched package %s"
 msgstr "Fjerner upassende pakke: %s"
 
-#: ../yum/__init__.py:920
+#: ../yum/__init__.py:889
 msgid "Finished"
 msgstr "Ferdig"
 
 #. Whoa. What the heck happened?
-#: ../yum/__init__.py:950
+#: ../yum/__init__.py:919
 #, python-format
 msgid "Unable to check if PID %s is active"
 msgstr "Kunne ikke sjekke om PID %s er aktiv"
 
 #. Another copy seems to be running.
-#: ../yum/__init__.py:954
+#: ../yum/__init__.py:923
 #, python-format
 msgid "Existing lock %s: another copy is running as pid %s."
-msgstr "Det fins allerede en låsfil %s: en annen Yum kjører med PID %s."
+msgstr ""
+"Det fins allerede en låsefil: %s, en annen Yum kjører med PID %s allerede."
 
-#: ../yum/__init__.py:1017
+#: ../yum/__init__.py:970 ../yum/__init__.py:977
 msgid "Package does not match intended download"
 msgstr "Det er forskjell mellom nedlastet og forventet størrelse"
 
-#: ../yum/__init__.py:1032
+#: ../yum/__init__.py:991
 msgid "Could not perform checksum"
-msgstr "Kunne ikke beregne sjekksum"
+msgstr "Kunne ikke beregne tverrsum"
 
-#: ../yum/__init__.py:1035
+#: ../yum/__init__.py:994
 msgid "Package does not match checksum"
-msgstr "Pakken har ikke korrekt sjekksum"
+msgstr "Pakka har ikke korrekt tverrsum"
 
-#: ../yum/__init__.py:1079
+#: ../yum/__init__.py:1036
 #, python-format
 msgid "package fails checksum but caching is enabled for %s"
-msgstr "sjekksummen til pakken er feil, men mellomlagring er satt på for %s"
+msgstr "tverrsummen til pakka er feil, men mellomlagring er satt på for %s"
 
-#: ../yum/__init__.py:1082
+#: ../yum/__init__.py:1042
 #, python-format
 msgid "using local copy of %s"
-msgstr "bruker lokal kopi av %s"
+msgstr "bruker lokal kop av %s"
 
-#: ../yum/__init__.py:1107
+#: ../yum/__init__.py:1061
 #, python-format
 msgid "Insufficient space in download directory %s to download"
 msgstr "Det er ikke nok ledig plass i katalogen %s hvor pakkene blir lagret"
 
-#: ../yum/__init__.py:1140
+#: ../yum/__init__.py:1094
 msgid "Header is not complete."
-msgstr "Filhode er ikke fullstendig."
+msgstr "Filhode er ikke komplett."
 
-#: ../yum/__init__.py:1180
+#: ../yum/__init__.py:1134
 #, python-format
 msgid ""
 "Header not in local cache and caching-only mode enabled. Cannot download %s"
 msgstr ""
-"Filhode er ikke tilgjengelig lokalt og mellomlager-modus er aktivert Kan "
-"ikke hente ned %s"
+"Filhode er ikke tilgjengelig lokalt og i vi er mellomlager-modes. Kan ikke "
+"hente ned %s"
 
-#: ../yum/__init__.py:1235
+#: ../yum/__init__.py:1189
 #, python-format
 msgid "Public key for %s is not installed"
 msgstr "Offentlig nøkkel for %s er ikke lagt inn"
 
-#: ../yum/__init__.py:1239
+#: ../yum/__init__.py:1193
 #, python-format
 msgid "Problem opening package %s"
-msgstr "Problem ved åpning av pakke %s"
+msgstr "Kunne ved åpning av pakke %s"
 
-#: ../yum/__init__.py:1247
+#: ../yum/__init__.py:1201
 #, python-format
 msgid "Public key for %s is not trusted"
 msgstr "Offentlig nøkkel %s er ikke til å stole på"
 
-#: ../yum/__init__.py:1251
+#: ../yum/__init__.py:1205
 #, python-format
 msgid "Package %s is not signed"
-msgstr "Pakken %s er ikke signert"
+msgstr "Pakka %s er ikke signert"
 
-#: ../yum/__init__.py:1289
+#: ../yum/__init__.py:1243
 #, python-format
 msgid "Cannot remove %s"
-msgstr "Kan ikke fjerne %s"
+msgstr "Kunne ikke fjern %s"
 
-#: ../yum/__init__.py:1292
+#: ../yum/__init__.py:1247
 #, python-format
 msgid "%s removed"
 msgstr "%s fjernet"
 
-#: ../yum/__init__.py:1328
+#: ../yum/__init__.py:1283
 #, python-format
 msgid "Cannot remove %s file %s"
-msgstr "Kan ikke fjerne %s fra fil %s"
+msgstr "Kan ikke fjerne %s fra fila %s"
 
-#: ../yum/__init__.py:1331
+#: ../yum/__init__.py:1287
 #, python-format
 msgid "%s file %s removed"
-msgstr "%s fil %s er fjernet"
+msgstr "%s fila %s er fjernet"
 
-#: ../yum/__init__.py:1333
+#: ../yum/__init__.py:1289
 #, python-format
 msgid "%d %s files removed"
-msgstr "%d %s filer fjernet"
+msgstr "%d %s filer er fjernet"
 
-#: ../yum/__init__.py:1386
+#: ../yum/__init__.py:1329
 #, python-format
 msgid "More than one identical match in sack for %s"
-msgstr "Mer enn ett identisk passende treff i sekken %s"
+msgstr "Mer enn en identisk passende treff i sekken %s"
 
-#: ../yum/__init__.py:1391
+#: ../yum/__init__.py:1335
 #, python-format
 msgid "Nothing matches %s.%s %s:%s-%s from update"
 msgstr "Ingenting passer %s.%s %s:%s-%s fra oppdatering"
 
-#: ../yum/__init__.py:1585
+#: ../yum/__init__.py:1543
 msgid ""
 "searchPackages() will go away in a future version of "
 "Yum.                      Use searchGenerator() instead. \n"
@@ -1585,165 +1603,140 @@ msgstr ""
 "searchPackages() vil forsvinne i en kommende utgave av Yum.\n"
 "Bruk heller searchGenerator()\n"
 
-#: ../yum/__init__.py:1621
+#: ../yum/__init__.py:1580
 #, python-format
 msgid "Searching %d packages"
 msgstr "Søker etter %d pakker"
 
-#: ../yum/__init__.py:1624
+#: ../yum/__init__.py:1584
 #, python-format
 msgid "searching package %s"
 msgstr "søker etter pakke %s"
 
-#: ../yum/__init__.py:1635
+#: ../yum/__init__.py:1596
 msgid "searching in file entries"
 msgstr "søker i filoversikt"
 
-#: ../yum/__init__.py:1641
+#: ../yum/__init__.py:1603
 msgid "searching in provides entries"
-msgstr "søker i oppføringer av tilbud"
+msgstr "søker i oppføringer av tilbydere"
 
-#: ../yum/__init__.py:1671
+#: ../yum/__init__.py:1633
 #, python-format
 msgid "Provides-match: %s"
 msgstr "Tilbyder-treff: %s"
 
-#: ../yum/__init__.py:1717
-msgid "No group data available for configured repositories"
-msgstr "Ingen gruppedata tilgjengelig for konfigurerte pakkelager"
-
-#: ../yum/__init__.py:1743 ../yum/__init__.py:1762 ../yum/__init__.py:1788
-#: ../yum/__init__.py:1794 ../yum/__init__.py:1850 ../yum/__init__.py:1854
+#: ../yum/__init__.py:1702 ../yum/__init__.py:1720 ../yum/__init__.py:1748
+#: ../yum/__init__.py:1753 ../yum/__init__.py:1808 ../yum/__init__.py:1812
 #, python-format
 msgid "No Group named %s exists"
-msgstr "Det eksisterer ingen gruppe med navn %s "
+msgstr "Ikke gruppe med navn %s er tilgjengelig"
 
-#: ../yum/__init__.py:1773 ../yum/__init__.py:1866
+#: ../yum/__init__.py:1731 ../yum/__init__.py:1824
 #, python-format
 msgid "package %s was not marked in group %s"
-msgstr "pakke %s var ikke med i gruppe %s"
+msgstr "pakka %s var ikke med i gruppa %s"
 
-#: ../yum/__init__.py:1811
+#: ../yum/__init__.py:1770
 #, python-format
 msgid "Adding package %s from group %s"
 msgstr "Legger til pakke %s fra gruppe %s"
 
-#: ../yum/__init__.py:1816
+#: ../yum/__init__.py:1774
 #, python-format
 msgid "No package named %s available to be installed"
 msgstr "Ingen pakke med navn %s er tilgjendelig for installering"
 
-#: ../yum/__init__.py:1891
+#: ../yum/__init__.py:1849
 #, python-format
 msgid "Package tuple %s could not be found in packagesack"
 msgstr "Pakke tuppel %s ble ikke funnet i sekken med pakker"
 
-#: ../yum/__init__.py:1959 ../yum/__init__.py:1999
+#: ../yum/__init__.py:1917 ../yum/__init__.py:1960
 msgid "Invalid versioned dependency string, try quoting it."
 msgstr ""
-"Den versjonerte strengen med avhengigheter er ugyldig, prøv å sette den i "
+"Den versjonerte strengen med avhengigheter er ugyldig, prøv og sette den i "
 "anførelsestegn."
 
-#: ../yum/__init__.py:1961 ../yum/__init__.py:2001
+#: ../yum/__init__.py:1919 ../yum/__init__.py:1962
 msgid "Invalid version flag"
 msgstr "Ugyldig versjonsflagg"
 
-#: ../yum/__init__.py:1973 ../yum/__init__.py:1977
+#: ../yum/__init__.py:1934 ../yum/__init__.py:1938
 #, python-format
 msgid "No Package found for %s"
 msgstr "Ingen pakke for %s er funnet"
 
-#: ../yum/__init__.py:2105
+#: ../yum/__init__.py:2066
 msgid "Package Object was not a package object instance"
-msgstr "Pakkeobjekt var ikke en pakkeobjektinstans"
+msgstr "Pakkeobjekt var ikke en pakkeobjekt instans"
 
-#: ../yum/__init__.py:2109
+#: ../yum/__init__.py:2070
 msgid "Nothing specified to install"
-msgstr "Ingenting oppgitt for installasjon"
+msgstr "Det ble ikke bedt om og installere noe som helst"
 
 #. only one in there
-#: ../yum/__init__.py:2124
+#: ../yum/__init__.py:2085
 #, python-format
 msgid "Checking for virtual provide or file-provide for %s"
 msgstr "Sjekker for virtuelle tilbydere eller tilbydere av filer for %s"
 
-#: ../yum/__init__.py:2130 ../yum/__init__.py:2446
+#: ../yum/__init__.py:2091 ../yum/__init__.py:2380
 #, python-format
 msgid "No Match for argument: %s"
-msgstr "Ingen treff for argument: %s"
+msgstr "Intet treff for argument: %s"
 
 #. FIXME - this is where we could check to see if it already installed
 #. for returning better errors
-#: ../yum/__init__.py:2185
+#: ../yum/__init__.py:2146
 msgid "No package(s) available to install"
 msgstr "Ingen pakke(r) er tilgjengelig for installering"
 
-#: ../yum/__init__.py:2198
+#: ../yum/__init__.py:2158
 #, python-format
 msgid "Package: %s  - already in transaction set"
 msgstr "Pakke: %s - allerede i transaksjonensettet"
 
-#: ../yum/__init__.py:2212
+#: ../yum/__init__.py:2171
 #, python-format
 msgid "Package %s already installed and latest version"
-msgstr "Pakke %s er allerede installert i siste versjon"
+msgstr "Pakke %s er allerede installert i siste og beste versjon"
 
-#: ../yum/__init__.py:2219
-#, python-format
-msgid "Package matching %s already installed. Checking for update."
-msgstr "Pakke med treff på %s er allerede lagt inn. Ser etter oppdatering"
-
-#: ../yum/__init__.py:2230
+#: ../yum/__init__.py:2178
 #, fuzzy, python-format
-msgid "Package %s is obsoleted by %s, trying to install %s instead"
-msgstr ""
-"Pakka %s er ikke installert, så den kan ikke oppdateres. Bruk kommandoen yum "
-"install for å legge den inn."
+msgid "Package matching %s already installed. Checking for update."
+msgstr "Pakke %s er allerede lagt inn, hopper over"
 
 #. update everything (the easy case)
-#: ../yum/__init__.py:2263
+#: ../yum/__init__.py:2220
 msgid "Updating Everything"
 msgstr "Oppdaterer alt"
 
-#: ../yum/__init__.py:2366
+#: ../yum/__init__.py:2304
 #, python-format
 msgid "Package is already obsoleted: %s.%s %s:%s-%s"
 msgstr "Pakka er allerede foreldet:  %s.%s %s:%s-%s"
 
-#: ../yum/__init__.py:2390
-#, fuzzy, python-format
-msgid "Not Updating Package that is already updated: %s.%s %s:%s-%s"
-msgstr "Vil ikke oppdatere pakke som allerede er foreldet: %s.%s %s:%s-%s"
-
-#: ../yum/__init__.py:2443
+#: ../yum/__init__.py:2377
 #, python-format
 msgid "%s"
 msgstr "%s"
 
-#. FIXME we should give the caller some nice way to hush this warning
-#. probably just a kwarg of 'silence_warnings' or something
-#. b/c when this is called from groupRemove() it makes a lot of
-#. garbage noise
-#: ../yum/__init__.py:2462
+#: ../yum/__init__.py:2392
 msgid "No package matched to remove"
 msgstr "Kunne ikke finne noen passende pakke for fjerning"
 
-#: ../yum/__init__.py:2496
+#: ../yum/__init__.py:2426
 #, python-format
 msgid "Cannot open file: %s. Skipping."
 msgstr "Kunne ikke åpne fil: %s. Hopper over."
 
-#: ../yum/__init__.py:2498
+#: ../yum/__init__.py:2429
 #, python-format
 msgid "Examining %s: %s"
-msgstr "Undersøker: %s: %s"
-
-#: ../yum/__init__.py:2504
-#, python-format
-msgid "Cannot add package %s to transaction. Not a compatible architecture: %s"
-msgstr ""
+msgstr "Gransker: %s: %s"
 
-#: ../yum/__init__.py:2512
+#: ../yum/__init__.py:2436
 #, python-format
 msgid ""
 "Package %s not installed, cannot update it. Run yum install to install it "
@@ -1752,77 +1745,77 @@ msgstr ""
 "Pakka %s er ikke installert, så den kan ikke oppdateres. Bruk kommandoen yum "
 "install for å legge den inn."
 
-#: ../yum/__init__.py:2545
+#: ../yum/__init__.py:2468
 #, python-format
 msgid "Excluding %s"
 msgstr "Ekskluderer %s"
 
-#: ../yum/__init__.py:2549
+#: ../yum/__init__.py:2473
 #, python-format
 msgid "Marking %s to be installed"
 msgstr "Setter av %s for kommende installering"
 
-#: ../yum/__init__.py:2554
+#: ../yum/__init__.py:2479
 #, python-format
 msgid "Marking %s as an update to %s"
 msgstr "Setter av %s som en oppdatering av %s"
 
-#: ../yum/__init__.py:2559
+#: ../yum/__init__.py:2486
 #, python-format
 msgid "%s: does not update installed package."
 msgstr "%s: vil ikke oppdatere installert pakke."
 
-#: ../yum/__init__.py:2576
+#: ../yum/__init__.py:2504
 msgid "Problem in reinstall: no package matched to remove"
 msgstr "Problem ved reinstall: kunne ikke finne passende pakke og fjerne"
 
-#: ../yum/__init__.py:2587
+#: ../yum/__init__.py:2515
 #, fuzzy, python-format
 msgid "Package %s is allowed multiple installs, skipping"
 msgstr "Pakke %s er allerede lagt inn, hopper over"
 
-#: ../yum/__init__.py:2594
+#: ../yum/__init__.py:2522
 msgid "Problem in reinstall: no package matched to install"
 msgstr "Problem ved reinstall: kunne ikke finne passende pakke og installere "
 
-#: ../yum/__init__.py:2641
+#: ../yum/__init__.py:2570
 #, python-format
 msgid "Retrieving GPG key from %s"
 msgstr "Henter GPG-nøkkel fra %s"
 
-#: ../yum/__init__.py:2647
+#: ../yum/__init__.py:2576
 msgid "GPG key retrieval failed: "
 msgstr "Henting av GPG-nøkkel feilet: "
 
-#: ../yum/__init__.py:2663
+#: ../yum/__init__.py:2589
 msgid "GPG key parsing failed: "
 msgstr "Analyse av GPG-nøkkel feilet: "
 
-#: ../yum/__init__.py:2667
+#: ../yum/__init__.py:2593
 #, python-format
 msgid "GPG key at %s (0x%s) is already installed"
 msgstr "GPG-nøkkel ved %s (0x%s) er allerede lagt inn"
 
 #. Try installing/updating GPG key
-#: ../yum/__init__.py:2672
+#: ../yum/__init__.py:2598
 #, python-format
 msgid "Importing GPG key 0x%s \"%s\" from %s"
 msgstr "Legger inn GPG-nøkkel 0x%s \"%s\" fra %s"
 
-#: ../yum/__init__.py:2685
+#: ../yum/__init__.py:2610
 msgid "Not installing key"
 msgstr "Legger ikke inn nøkkel"
 
-#: ../yum/__init__.py:2691
+#: ../yum/__init__.py:2616
 #, python-format
 msgid "Key import failed (code %d)"
 msgstr "Import av nøkkel feilet (kode %d)"
 
-#: ../yum/__init__.py:2694
+#: ../yum/__init__.py:2619
 msgid "Key imported successfully"
 msgstr "Nøkler ble lagt inn med suksess"
 
-#: ../yum/__init__.py:2699
+#: ../yum/__init__.py:2624
 #, python-format
 msgid ""
 "The GPG keys listed for the \"%s\" repository are already installed but they "
@@ -1834,79 +1827,74 @@ msgstr ""
 "Sjekk at korrekt URL (gpgkey opsjonen) er oppgitt for denne\n"
 "pakkeoversikten."
 
-#: ../yum/__init__.py:2708
+#: ../yum/__init__.py:2633
 msgid "Import of key(s) didn't help, wrong key(s)?"
 msgstr "Import av nøkler hjalp ikke, feil nøkler?"
 
-#: ../yum/__init__.py:2789
+#: ../yum/__init__.py:2707
 msgid "Unable to find a suitable mirror."
 msgstr "Kunne ikke finne passende filspeil"
 
-#: ../yum/__init__.py:2791
+#: ../yum/__init__.py:2709
 msgid "Errors were encountered while downloading packages."
 msgstr "Det oppstod feil ved nedlastning av pakker."
 
-#: ../yum/__init__.py:2854
+#: ../yum/__init__.py:2774
 msgid "Test Transaction Errors: "
 msgstr "Feil ved testtransaksjon: "
 
 #. Mostly copied from YumOutput._outKeyValFill()
-#: ../yum/plugins.py:197
+#: ../yum/plugins.py:195
 msgid "Loaded plugins: "
 msgstr "Tillegg som er i bruk:"
 
-#: ../yum/plugins.py:208
+#: ../yum/plugins.py:206
 #, fuzzy, python-format
 msgid "No plugin match for: %s"
 msgstr "Intet treff for argument: %s"
 
-#: ../yum/plugins.py:221
+#: ../yum/plugins.py:219
 #, python-format
 msgid "\"%s\" plugin is disabled"
 msgstr "Tillegg: %s er ikke aktiv."
 
-#: ../yum/plugins.py:233
+#: ../yum/plugins.py:231
 #, python-format
 msgid "Plugin \"%s\" doesn't specify required API version"
 msgstr "Tillegg \"%s\" tilfredstiller ikke versjonskravene fra Yum."
 
-#: ../yum/plugins.py:237
+#: ../yum/plugins.py:235
 #, python-format
 msgid "Plugin \"%s\" requires API %s. Supported API is %s."
 msgstr "Tillegg \"%s\" krever API versjon: %s. Men støttet API versjon er %s."
 
-#: ../yum/plugins.py:266
+#: ../yum/plugins.py:264
 #, python-format
 msgid "Loading \"%s\" plugin"
 msgstr "Laster tillegg \"%s\""
 
-#: ../yum/plugins.py:273
+#: ../yum/plugins.py:271
 #, python-format
 msgid ""
 "Two or more plugins with the name \"%s\" exist in the plugin search path"
-msgstr "Det finnes to eller flere tillegg med navn «%s» i søkestien for tillegg"
+msgstr "To eller flere tillegg har samme navn."
 
-#: ../yum/plugins.py:293
+#: ../yum/plugins.py:291
 #, python-format
 msgid "Configuration file %s not found"
 msgstr "Konfigurasjonsfila %s ble ikke funnet"
 
 #. for
 #. Configuration files for the plugin not found
-#: ../yum/plugins.py:296
+#: ../yum/plugins.py:294
 #, python-format
 msgid "Unable to find configuration file for plugin %s"
 msgstr "Kunne ikke finne konfigurasjon for tillegg %s"
 
-#: ../yum/plugins.py:450
+#: ../yum/plugins.py:448
 msgid "registration of commands not supported"
 msgstr "registering av kommandoer er ikke støttet"
 
-#: ../yum/rpmtrans.py:78
-#, fuzzy
-msgid "Repackaging"
-msgstr "Pakker på nytt"
-
 #: ../rpmUtils/oldUtils.py:26
 #, python-format
 msgid "Header cannot be opened or does not match %s, %s."
@@ -1936,33 +1924,6 @@ msgstr "Filhode til %s er ødelagt"
 msgid "Error opening rpm %s - error %s"
 msgstr "Kunne ikke åpen rpm pakke %s - feilen er %s"
 
-#~ msgid "Searching pkgSack for dep: %s"
-#~ msgstr "Søker i pkgSack etter avhengighet: %s"
-
-#~ msgid "Potential match for %s from %s"
-#~ msgstr "Potensielt treff for %s i %s"
-
-#~ msgid "Matched %s to require for %s"
-#~ msgstr "Passende %s for å tilfredstille %s"
-
-#~ msgid "Needed Require has already been looked up, cheating"
-#~ msgstr "Nødvendig avhengighet har allerede blitt plukket opp, jukser"
-
-#~ msgid "Needed Require is not a package name. Looking up: %s"
-#~ msgstr "Nødvendig avhengighet er ikke et navn på pakke. Ser etter: %s"
-
-#~ msgid "Potential Provider: %s"
-#~ msgstr "Potensiell tilbyder: %s"
-
-#~ msgid "Mode is %s for provider of %s: %s"
-#~ msgstr "Modus er %s for tilbyder av %s: %s"
-
-#~ msgid "Mode for pkg providing %s: %s"
-#~ msgstr "Modus for pakke som tilbyr %s: %s"
-
-#~ msgid "Unresolvable requirement %s for %s"
-#~ msgstr "Avhengighet %s kan ikke løses opp: %s"
-
 #~ msgid "Looking for Obsoletes for %s"
 #~ msgstr "Leter opp informasjon utgåtte pakker for %s"
 
commit 51229db7af0db6148fe8ceacbd01a7a526c18da6
Author: Tim Lauridsen <timlau at fedoraproject.org>
Date:   Sat Nov 1 09:18:40 2008 +0100

    added updated Norsk translation by Kjartan Maraas

diff --git a/po/nb.po b/po/nb.po
index a4214b1..512a227 100644
--- a/po/nb.po
+++ b/po/nb.po
@@ -3,36 +3,39 @@
 # Copyright (C) 2008 Terje Røsten
 # This file is distributed under the same license as the yum package.
 # Terje Røsten <terje.rosten at ntnu.no>, 2008.
-#, fuzzy
+# Kjartan Maraas <kmaraas at broadpark.no>, 2008.
+#
+
 msgid ""
 msgstr ""
 "Project-Id-Version: yum 3.2.10\n"
 "Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2008-03-25 11:29+0100\n"
-"PO-Revision-Date: 2008-02-12 11:16+0100\n"
-"Last-Translator: Terje Røsten <terje.rosten at ntnu.no>\n"
-"Language-Team: Norwegian (bokmål) <i18n-no at lister.ping.uio.no>\n"
+"POT-Creation-Date: 2008-10-31 13:29+0000\n"
+"PO-Revision-Date: 2008-10-31 20:25+0100\n"
+"Last-Translator: Kjartan Maraas <kmaraas at broadpark.no>\n"
+"Language-Team: Norwegian bokmål <i18n-nb at lister.ping.uio.no>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
 
-#: ../callback.py:48 ../output.py:512
+#: ../callback.py:48 ../output.py:516 ../yum/rpmtrans.py:71
 msgid "Updating"
 msgstr "Oppdaterer"
 
-#: ../callback.py:49
+#: ../callback.py:49 ../yum/rpmtrans.py:72
 msgid "Erasing"
 msgstr "Fjerner"
 
-#: ../callback.py:50 ../callback.py:51 ../callback.py:53 ../output.py:511
+#: ../callback.py:50 ../callback.py:51 ../callback.py:53 ../output.py:515
+#: ../yum/rpmtrans.py:73 ../yum/rpmtrans.py:74 ../yum/rpmtrans.py:76
 msgid "Installing"
 msgstr "Legger inn"
 
-#: ../callback.py:52 ../callback.py:58
+#: ../callback.py:52 ../callback.py:58 ../yum/rpmtrans.py:75
 msgid "Obsoleted"
 msgstr "Er utgått"
 
-#: ../callback.py:54 ../output.py:558
+#: ../callback.py:54 ../output.py:562
 msgid "Updated"
 msgstr "Oppdatert"
 
@@ -40,7 +43,7 @@ msgstr "Oppdatert"
 msgid "Erased"
 msgstr "Fjernet"
 
-#: ../callback.py:56 ../callback.py:57 ../callback.py:59 ../output.py:556
+#: ../callback.py:56 ../callback.py:57 ../callback.py:59 ../output.py:560
 msgid "Installed"
 msgstr "Lagt inn"
 
@@ -50,7 +53,7 @@ msgstr "Intet hode - merksnodig?!"
 
 #: ../callback.py:168
 msgid "Repackage"
-msgstr "Pakker på nytt"
+msgstr "Pakk på nytt"
 
 #: ../callback.py:189
 #, python-format
@@ -62,405 +65,425 @@ msgstr "Feil: ugyldig tilstand ut: %s for %s"
 msgid "Erased: %s"
 msgstr "Fjernet: %s"
 
-#: ../callback.py:217 ../output.py:513
+#: ../callback.py:217 ../output.py:517
 msgid "Removing"
 msgstr "Fjerner"
 
-#: ../callback.py:219
+#: ../callback.py:219 ../yum/rpmtrans.py:77
 msgid "Cleanup"
 msgstr "Rydder opp"
 
-#: ../cli.py:103
+#: ../cli.py:105
 #, python-format
 msgid "Command \"%s\" already defined"
-msgstr "Kommando \"%s\" er allerede definert"
+msgstr "Kommando «%s» er allerede definert"
 
-#: ../cli.py:115
+#: ../cli.py:117
 msgid "Setting up repositories"
-msgstr "Lager pakkeoversikt"
+msgstr "Konfigurerer lagre"
 
-#: ../cli.py:126
+#: ../cli.py:128
 msgid "Reading repository metadata in from local files"
-msgstr "Leser inn data om pakker fra lokale filer"
+msgstr "Leser inn data om lager fra lokale filer"
 
-#: ../cli.py:183 ../utils.py:72
+#: ../cli.py:186 ../utils.py:71
 #, python-format
 msgid "Config Error: %s"
-msgstr "Feil ved konfigurasjon: %s"
+msgstr "Feil i konfigurasjon: %s"
 
-#: ../cli.py:186 ../cli.py:1068 ../utils.py:75
+#: ../cli.py:189 ../cli.py:1081 ../utils.py:74
 #, python-format
 msgid "Options Error: %s"
-msgstr "Feil med opsjoner: %s"
+msgstr "Feil i flagg: %s"
 
-#: ../cli.py:229
+#: ../cli.py:232
 msgid "You need to give some command"
-msgstr "Vennligst oppgi minst en kommando"
+msgstr "Du må oppgi en kommando"
 
-#: ../cli.py:271
+#: ../cli.py:274
 msgid "Disk Requirements:\n"
-msgstr "Krav til ledig diskplass\n"
+msgstr "Krav til ledig diskplass:\n"
 
-#: ../cli.py:273
+#: ../cli.py:276
 #, python-format
 msgid "  At least %dMB needed on the %s filesystem.\n"
-msgstr "Minst %dMB er nødvendig i filsystemet %s.\n"
+msgstr "Minst %dMB kreves på filsystem %s.\n"
 
 #. TODO: simplify the dependency errors?
 #. Fixup the summary
-#: ../cli.py:278
+#: ../cli.py:281
 msgid ""
 "Error Summary\n"
 "-------------\n"
 msgstr ""
-"Oversikt over feil\n"
-"------------------\n"
+"Sammendrag for feil\n"
+"---------------------\n"
 
-#: ../cli.py:317
+#: ../cli.py:320
 msgid "Trying to run the transaction but nothing to do. Exiting."
-msgstr "Prøver og fullføre transaksjonen, men den er tom. Avslutter."
+msgstr "Prøver å kjøre transaksjonen, men den er tom. Avslutter."
 
-#: ../cli.py:347
+#: ../cli.py:350
 msgid "Exiting on user Command"
 msgstr "Avslutter på grunn av kommando fra bruker"
 
-#: ../cli.py:351
+#: ../cli.py:354
 msgid "Downloading Packages:"
 msgstr "Laster ned pakker:"
 
-#: ../cli.py:356
+#: ../cli.py:359
 msgid "Error Downloading Packages:\n"
 msgstr "Kunne ikke laste ned pakkene:\n"
 
-#: ../cli.py:370 ../yum/__init__.py:2746
+#: ../cli.py:373 ../yum/__init__.py:2826
 msgid "Running rpm_check_debug"
-msgstr "Kjører rpm-sjekker"
+msgstr "Kjører rpm_check_debug"
 
-#: ../cli.py:373 ../yum/__init__.py:2749
+#: ../cli.py:376 ../yum/__init__.py:2829
 msgid "ERROR with rpm_check_debug vs depsolve:"
-msgstr "Feil: en forskjell mellom rpm-sjekker og yum har oppstått"
+msgstr "FEIL med rpm_check_debug i forhold til løsing av avhengigheter:"
 
-#: ../cli.py:377 ../yum/__init__.py:2751
+#: ../cli.py:380 ../yum/__init__.py:2831
 msgid "Please report this error in bugzilla"
 msgstr "Vennligst send en feilrapport til bugzilla"
 
-#: ../cli.py:383
+#: ../cli.py:386
 msgid "Running Transaction Test"
-msgstr "Gjennomfører en test av transaksjonen"
+msgstr "Gjennomfører test av transaksjonen"
 
-#: ../cli.py:399
+#: ../cli.py:402
 msgid "Finished Transaction Test"
 msgstr "Transaksjonstesten er fullført"
 
-#: ../cli.py:401
+#: ../cli.py:404
 msgid "Transaction Check Error:\n"
-msgstr "Feil ved sjekk av transaksjonen:\n"
+msgstr "Feil ved test av transaksjonen:\n"
 
-#: ../cli.py:408
+#: ../cli.py:411
 msgid "Transaction Test Succeeded"
 msgstr "Test av transaksjonen var vellykket"
 
-#: ../cli.py:429
+#: ../cli.py:432
 msgid "Running Transaction"
 msgstr "Utfører transaksjonen"
 
-#: ../cli.py:459
+#: ../cli.py:462
 msgid ""
 "Refusing to automatically import keys when running unattended.\n"
 "Use \"-y\" to override."
 msgstr ""
-"Nekter og automatisk importere nøkler når man kjører uten oppsyn.\n"
-"Bruk \"-y\" for uansett å godta import."
+"Nekter å importere nøkler automatisk ved kjøring uten oppsyn.\n"
+"Bruk «-y» for å overstyre."
 
-#: ../cli.py:491
+#: ../cli.py:494
 msgid "Parsing package install arguments"
 msgstr "Analyserer argumentene for pakkeinstallasjon"
 
-#: ../cli.py:501
+#: ../cli.py:504
 #, python-format
 msgid "No package %s available."
-msgstr "Ingen pakke: %s er tilgjengelig."
+msgstr "Pakke: %s er ikke tilgjengelig."
 
-#: ../cli.py:505 ../cli.py:623 ../yumcommands.py:748
+#: ../cli.py:508 ../cli.py:626 ../yumcommands.py:790
 msgid "Package(s) to install"
-msgstr "Pakker som legges"
+msgstr "Pakke(r) som skal legges inn"
 
-#: ../cli.py:506 ../cli.py:624 ../yumcommands.py:146 ../yumcommands.py:749
+#: ../cli.py:509 ../cli.py:627 ../yumcommands.py:147 ../yumcommands.py:791
 msgid "Nothing to do"
-msgstr "Ingenting og gjøre"
+msgstr "Ingenting å gjøre"
 
-#: ../cli.py:536 ../yum/__init__.py:2232 ../yum/__init__.py:2311
-#: ../yum/__init__.py:2340
+#: ../cli.py:539 ../yum/__init__.py:2275 ../yum/__init__.py:2375
+#: ../yum/__init__.py:2387
 #, python-format
 msgid "Not Updating Package that is already obsoleted: %s.%s %s:%s-%s"
 msgstr "Vil ikke oppdatere pakke som allerede er foreldet: %s.%s %s:%s-%s"
 
-#: ../cli.py:568
+#: ../cli.py:571
 #, python-format
 msgid "Could not find update match for %s"
 msgstr "Kunne ikke finne oppdatering som passet for %s"
 
-#: ../cli.py:580
+#: ../cli.py:583
 #, python-format
 msgid "%d packages marked for Update"
-msgstr "%d pakker er vil bli oppdatert"
+msgstr "%d pakker merket for oppdatering"
 
-#: ../cli.py:583
+#: ../cli.py:586
 msgid "No Packages marked for Update"
-msgstr "Ingen pakker vil bli oppdatert"
+msgstr "Ingen pakker merket for oppdatering"
 
-#: ../cli.py:599
+#: ../cli.py:602
 #, python-format
 msgid "%d packages marked for removal"
-msgstr "%d pakker vil bli fjernet"
+msgstr "%d pakker merket for fjerning"
 
-#: ../cli.py:602
+#: ../cli.py:605
 msgid "No Packages marked for removal"
-msgstr "Ingen pakker vil bli fjernet"
+msgstr "Ingen pakker merket for fjerning"
 
-#: ../cli.py:614
+#: ../cli.py:617
 msgid "No Packages Provided"
 msgstr "Ingen pakker ble tilbudt"
 
-#: ../cli.py:654
+#: ../cli.py:657
 msgid "Matching packages for package list to user args"
 msgstr "Tilpasser pakkeliste etter brukers ønske"
 
-#: ../cli.py:701
-#, fuzzy, python-format
+#: ../cli.py:705
+#, python-format
 msgid "Warning: No matches found for: %s"
-msgstr "Ingen pakke for %s er funnet"
+msgstr "Advarsel: Ingen treff funnet for: %s"
 
-#: ../cli.py:704
+#: ../cli.py:708
 msgid "No Matches found"
-msgstr "Ingen passende pakker ble funnet"
+msgstr "Fant ingen treff"
 
-#: ../cli.py:745
+#: ../cli.py:749
 #, python-format
 msgid "No Package Found for %s"
 msgstr "Ingen pakke ble funnet for %s"
 
-#: ../cli.py:757
+#: ../cli.py:761
 msgid "Cleaning up Everything"
 msgstr "Rydder opp alt"
 
-#: ../cli.py:771
+#: ../cli.py:775
 msgid "Cleaning up Headers"
-msgstr "Rydder opp metadata"
+msgstr "Rydder opp pakkehoder"
 
-#: ../cli.py:774
+#: ../cli.py:778
 msgid "Cleaning up Packages"
-msgstr "Fjerner lagrede pakker"
+msgstr "Rydder opp pakker"
 
-#: ../cli.py:777
+#: ../cli.py:781
 msgid "Cleaning up xml metadata"
 msgstr "Rydder opp i XML-metadata"
 
-#: ../cli.py:780
+#: ../cli.py:784
 msgid "Cleaning up database cache"
-msgstr "Rydder opp i databasen"
+msgstr "Rydder opp i mellomlager for database"
 
-#: ../cli.py:783
-#, fuzzy
+#: ../cli.py:787
 msgid "Cleaning up expire-cache metadata"
-msgstr "Rydder opp i XML-metadata"
+msgstr "Rydder opp i metadata for expire-cache"
 
-#: ../cli.py:786
+#: ../cli.py:790
 msgid "Cleaning up plugins"
 msgstr "Rydder opp i tillegg"
 
-#: ../cli.py:807
+#: ../cli.py:812
 msgid "Installed Groups:"
 msgstr "Installerte grupper:"
 
-#: ../cli.py:814
+#: ../cli.py:819
 msgid "Available Groups:"
 msgstr "Tilgjengelig grupper:"
 
-#: ../cli.py:820
+#: ../cli.py:825
 msgid "Done"
 msgstr "Ferdig"
 
-#: ../cli.py:829 ../cli.py:841 ../cli.py:847
+#: ../cli.py:836 ../cli.py:854 ../cli.py:860
 #, python-format
 msgid "Warning: Group %s does not exist."
-msgstr "Advarsel: gruppe %s eksisterer ikke."
+msgstr "Advarsel: Gruppe %s eksisterer ikke."
 
-#: ../cli.py:853
+#: ../cli.py:864
 msgid "No packages in any requested group available to install or update"
-msgstr "Ingen pakker i aktuelle grupper er tilgjengelig"
+msgstr ""
+"Ingen pakker tilgjengelig for installering eller oppdatering i aktuelle "
+"grupper"
 
-#: ../cli.py:855
+#: ../cli.py:866
 #, python-format
 msgid "%d Package(s) to Install"
-msgstr "%d pakker vil bli installert"
+msgstr "%d pakke(r) vil bli installert"
 
-#: ../cli.py:865
+#: ../cli.py:876
 #, python-format
 msgid "No group named %s exists"
-msgstr "Ingen gruppe med navn %s er tilgjengelig"
+msgstr "Det finnes ingen gruppe med navn %s"
 
-#: ../cli.py:871
+#: ../cli.py:882
 msgid "No packages to remove from groups"
-msgstr "Ingen pakker og fjerne fra gruppe"
+msgstr "Ingen pakker å fjerne fra grupper"
 
-#: ../cli.py:873
+#: ../cli.py:884
 #, python-format
 msgid "%d Package(s) to remove"
 msgstr "%d pakker vil bli fjernet"
 
-#: ../cli.py:915
+#: ../cli.py:926
 #, python-format
 msgid "Package %s is already installed, skipping"
 msgstr "Pakke %s er allerede lagt inn, hopper over"
 
-#: ../cli.py:926
+#: ../cli.py:937
 #, python-format
 msgid "Discarding non-comparable pkg %s.%s"
-msgstr "Vraker pakke som ikke sammenlignes %s.%s"
+msgstr "Vraker pakke som ikke kan sammenlignes %s.%s"
 
 #. we've not got any installed that match n or n+a
-#: ../cli.py:952
+#: ../cli.py:963
 #, python-format
 msgid "No other %s installed, adding to list for potential install"
 msgstr ""
-"Ingen annen pakke %s er lagt inn, legger til pakke til liste over "
-"potensielle pakker"
+"Ingen annen %s er lagt inn, legger til pakke til liste over potensielle "
+"pakker"
 
-#: ../cli.py:971
+#: ../cli.py:982
 #, python-format
 msgid "Command line error: %s"
-msgstr "Feil ved kommandolinje: %s"
+msgstr "Feil med kommandolinje: %s"
+
+#: ../cli.py:994
+#, python-format
+msgid ""
+"\n"
+"\n"
+"%s: %s option requires an argument"
+msgstr ""
+"\n"
+"\n"
+"%s: flagg %s krever et argument"
 
-#: ../cli.py:1101
+#: ../cli.py:1123
+msgid "show this help message and exit"
+msgstr "vis denne hjelpteksten og avslutt"
+
+#: ../cli.py:1127
 msgid "be tolerant of errors"
 msgstr "vær tolerant ved feil"
 
-#: ../cli.py:1103
+#: ../cli.py:1129
 msgid "run entirely from cache, don't update cache"
 msgstr "bruk kun lagrede filer ved kjøring, ikke oppdater lagrede filer"
 
-#: ../cli.py:1105
+#: ../cli.py:1131
 msgid "config file location"
 msgstr "plassering av konfigurasjonsfil"
 
-#: ../cli.py:1107
+#: ../cli.py:1133
 msgid "maximum command wait time"
 msgstr "maksimaltid for å vente på kommando"
 
-#: ../cli.py:1109
+#: ../cli.py:1135
 msgid "debugging output level"
-msgstr "mengde tilbakemelding ved avlusing"
+msgstr "nivå for tilbakemeldinger ved avlusing"
 
-#: ../cli.py:1113
+#: ../cli.py:1139
 msgid "show duplicates, in repos, in list/search commands"
-msgstr ""
+msgstr "vis duplikater i lager og i kommandoer for å liste/søke i pakker"
 
-#: ../cli.py:1115
+#: ../cli.py:1141
 msgid "error output level"
 msgstr "mengde tilbakemelding ved feil"
 
-#: ../cli.py:1118
+#: ../cli.py:1144
 msgid "quiet operation"
-msgstr "utfører med minimalt av tilbakemelding"
+msgstr "stille operasjon"
+
+#: ../cli.py:1146
+msgid "verbose operation"
+msgstr "vis ekstra informasjon"
 
-#: ../cli.py:1122
+#: ../cli.py:1148
 msgid "answer yes for all questions"
-msgstr "svar Ja til alle eventuelle spørsmål som kan oppstå"
+msgstr "svar Ja til alle spørsmål"
 
-#: ../cli.py:1124
+#: ../cli.py:1150
 msgid "show Yum version and exit"
-msgstr "vis versjon til Yum og avslutt deretter"
+msgstr "vis Yum-versjon og avslutt"
 
-#: ../cli.py:1125
+#: ../cli.py:1151
 msgid "set install root"
-msgstr "setter laveste filtre-nivå for intallering (standard er /)"
+msgstr "sett rot for installasjonen"
 
-#: ../cli.py:1129
+#: ../cli.py:1155
 msgid "enable one or more repositories (wildcards allowed)"
-msgstr "legger til en eller flere pakkeoversikter (jokertegn er tillatt)"
+msgstr "legger til et eller flere lager (jokertegn er tillatt)"
 
-#: ../cli.py:1133
+#: ../cli.py:1159
 msgid "disable one or more repositories (wildcards allowed)"
-msgstr "fjernet en eller flere pakkeoversikter (jokertegn er tillatt)"
+msgstr "slå av et eller flere lager (jokertegn er tillatt)"
 
-#: ../cli.py:1136
+#: ../cli.py:1162
 msgid "exclude package(s) by name or glob"
-msgstr "overse pakke(r) ved navn eller glob"
+msgstr "overse pakke(r) ved navn eller mønster"
 
-#: ../cli.py:1138
+#: ../cli.py:1164
 msgid "disable exclude from main, for a repo or for everything"
-msgstr "fjerner ekskludering av pakker, for en pakkeoversikt eller fullstendig"
+msgstr "fjerner ekskludering av pakker, for et lager eller alle pakker"
 
-#: ../cli.py:1141
+#: ../cli.py:1167
 msgid "enable obsoletes processing during updates"
 msgstr "ta med foreldede pakker i beregningen ved oppdatering"
 
-#: ../cli.py:1143
+#: ../cli.py:1169
 msgid "disable Yum plugins"
 msgstr "ikke bruk tillegg til Yum"
 
-#: ../cli.py:1145
+#: ../cli.py:1171
 msgid "disable gpg signature checking"
-msgstr "ikke gjennomfør sjekk av GPG-signaturer"
+msgstr "ikke sjekk GPG-signaturer"
 
-#: ../cli.py:1147
+#: ../cli.py:1173
 msgid "disable plugins by name"
-msgstr "ikke bruk tillegg til yum ved navn"
+msgstr "slå av tillegg til yum etter navn"
 
-#: ../cli.py:1150
+#: ../cli.py:1176
 msgid "skip packages with depsolving problems"
-msgstr "hoppe over pakker som har problemer med avhengigheter"
+msgstr "hopp over pakker som har problemer med avhengigheter"
 
-#: ../output.py:229
+#: ../output.py:228
 msgid "Jan"
 msgstr "jan"
 
-#: ../output.py:229
+#: ../output.py:228
 msgid "Feb"
 msgstr "feb"
 
-#: ../output.py:229
+#: ../output.py:228
 msgid "Mar"
 msgstr "mar"
 
-#: ../output.py:229
+#: ../output.py:228
 msgid "Apr"
 msgstr "apr"
 
-#: ../output.py:229
+#: ../output.py:228
 msgid "May"
 msgstr "mai"
 
-#: ../output.py:229
+#: ../output.py:228
 msgid "Jun"
 msgstr "jun"
 
-#: ../output.py:230
+#: ../output.py:229
 msgid "Jul"
 msgstr "jul"
 
-#: ../output.py:230
+#: ../output.py:229
 msgid "Aug"
 msgstr "aug"
 
-#: ../output.py:230
+#: ../output.py:229
 msgid "Sep"
 msgstr "sep"
 
-#: ../output.py:230
+#: ../output.py:229
 msgid "Oct"
 msgstr "okt"
 
-#: ../output.py:230
+#: ../output.py:229
 msgid "Nov"
 msgstr "nov"
 
-#: ../output.py:230
+#: ../output.py:229
 msgid "Dec"
 msgstr "des"
 
-#: ../output.py:240
+#: ../output.py:239
 msgid "Trying other mirror."
 msgstr "Prøver et annet speil."
 
@@ -524,25 +547,25 @@ msgstr "Beskrivelse:"
 
 #: ../output.py:351
 msgid "Is this ok [y/N]: "
-msgstr "Er dette greit [y/N]:"
+msgstr "Er dette ok [j/N]:"
 
-#: ../output.py:357 ../output.py:360
+#: ../output.py:359 ../output.py:362
 msgid "y"
-msgstr ""
+msgstr "j"
 
-#: ../output.py:357
+#: ../output.py:359
 msgid "n"
-msgstr ""
+msgstr "n"
 
-#: ../output.py:357 ../output.py:360
+#: ../output.py:359 ../output.py:362
 msgid "yes"
-msgstr ""
+msgstr "ja"
 
-#: ../output.py:357
+#: ../output.py:359
 msgid "no"
-msgstr ""
+msgstr "nei"
 
-#: ../output.py:367
+#: ../output.py:370
 #, python-format
 msgid ""
 "\n"
@@ -551,96 +574,96 @@ msgstr ""
 "\n"
 "Gruppe:%s"
 
-#: ../output.py:369
+#: ../output.py:372
 #, python-format
 msgid " Description: %s"
 msgstr " Beskrivelse: %s"
 
-#: ../output.py:371
+#: ../output.py:374
 msgid " Mandatory Packages:"
 msgstr "Obligatoriske pakker:"
 
-#: ../output.py:376
+#: ../output.py:379
 msgid " Default Packages:"
 msgstr "Standard pakker:"
 
-#: ../output.py:381
+#: ../output.py:384
 msgid " Optional Packages:"
 msgstr "Valgfrie pakker:"
 
-#: ../output.py:386
+#: ../output.py:389
 msgid " Conditional Packages:"
 msgstr "Betingede pakker:"
 
-#: ../output.py:394
+#: ../output.py:398
 #, python-format
 msgid "package: %s"
 msgstr "pakke: %s"
 
-#: ../output.py:396
+#: ../output.py:400
 msgid "  No dependencies for this package"
 msgstr " Ingen avhengigheter for denne pakka"
 
-#: ../output.py:401
+#: ../output.py:405
 #, python-format
 msgid "  dependency: %s"
 msgstr " avhengighet: %s"
 
-#: ../output.py:403
+#: ../output.py:407
 msgid "   Unsatisfied dependency"
 msgstr " avhengighet som ikke kunne tilfredstilles"
 
-#: ../output.py:461
+#: ../output.py:465
 msgid "Matched from:"
 msgstr "Treff fra:"
 
-#: ../output.py:487
+#: ../output.py:491
 msgid "There was an error calculating total download size"
 msgstr "Kunne ikke finne ut størrelse på det som skal hentes ned"
 
-#: ../output.py:492
+#: ../output.py:496
 #, python-format
 msgid "Total size: %s"
 msgstr "Totale størrelse: %s"
 
-#: ../output.py:495
+#: ../output.py:499
 #, python-format
 msgid "Total download size: %s"
 msgstr "Totale størrelse på pakker som hentes: %s"
 
-#: ../output.py:507
+#: ../output.py:511
 msgid "Package"
 msgstr "Pakke"
 
-#: ../output.py:507
+#: ../output.py:511
 msgid "Arch"
 msgstr "Arkitektur"
 
-#: ../output.py:507
+#: ../output.py:511
 msgid "Version"
 msgstr "Versjon"
 
-#: ../output.py:507
+#: ../output.py:511
 msgid "Repository"
 msgstr "Pakkeoversikt"
 
-#: ../output.py:507
+#: ../output.py:511
 msgid "Size"
 msgstr "Størrelse"
 
-#: ../output.py:514
+#: ../output.py:518
 msgid "Installing for dependencies"
 msgstr "Legges inn på grunn avhengigheter"
 
-#: ../output.py:515
+#: ../output.py:519
 msgid "Updating for dependencies"
 msgstr "Oppdateres på grunn avhengigheter"
 
-#: ../output.py:516
+#: ../output.py:520
 msgid "Removing for dependencies"
 msgstr "Fjernes på grunn avhengigheter"
 
-#: ../output.py:528
+#: ../output.py:532
 #, python-format
 msgid ""
 "     replacing  %s.%s %s\n"
@@ -649,7 +672,7 @@ msgstr ""
 "     erstatter   %s.%s %s\"\n"
 "\n"
 
-#: ../output.py:536
+#: ../output.py:540
 #, python-format
 msgid ""
 "\n"
@@ -666,27 +689,27 @@ msgstr ""
 "Oppdaterer %5.5s pakker\n"
 "Fjerner    %5.5s pakker\n"
 
-#: ../output.py:554
+#: ../output.py:558
 msgid "Removed"
 msgstr "Fjernet"
 
-#: ../output.py:555
+#: ../output.py:559
 msgid "Dependency Removed"
 msgstr "Fjernet på grunn avhengighet"
 
-#: ../output.py:557
+#: ../output.py:561
 msgid "Dependency Installed"
 msgstr "Lagt inn på grunn av avhengighet"
 
-#: ../output.py:559
+#: ../output.py:563
 msgid "Dependency Updated"
 msgstr "Oppdatert på grunn avhengighet"
 
-#: ../output.py:560
+#: ../output.py:564
 msgid "Replaced"
 msgstr "Erstattet"
 
-#: ../output.py:618
+#: ../output.py:622
 #, python-format
 msgid ""
 "\n"
@@ -697,72 +720,72 @@ msgstr ""
 " Pågående nedlastning er avbrutt, %s avbryt (ved å trykke Ctrl-C) %s ganger "
 "til innen %s%s%s sekunder for å avslutte helt.\n"
 
-#: ../output.py:628
+#: ../output.py:632
 msgid "user interrupt"
-msgstr "avbryt av bruker"
+msgstr "avbrutt av bruker"
 
-#: ../output.py:639
+#: ../output.py:643
 msgid "installed"
 msgstr "lagt inn"
 
-#: ../output.py:640
+#: ../output.py:644
 msgid "updated"
 msgstr "oppdatert"
 
-#: ../output.py:641
+#: ../output.py:645
 msgid "obsoleted"
 msgstr "foreldet"
 
-#: ../output.py:642
+#: ../output.py:646
 msgid "erased"
 msgstr "fjernet"
 
-#: ../output.py:646
+#: ../output.py:650
 #, python-format
 msgid "---> Package %s.%s %s:%s-%s set to be %s"
 msgstr "---> pakke %s.%s %s:%s-%s er satt til %s"
 
-#: ../output.py:653
+#: ../output.py:657
 msgid "--> Running transaction check"
 msgstr "--> Utfører sjekk av transaksjonen"
 
-#: ../output.py:658
+#: ../output.py:662
 msgid "--> Restarting Dependency Resolution with new changes."
-msgstr "--> Starter løsning av avhengigheter på nytt"
+msgstr "--> Starter løsing av avhengigheter på nytt med endringer"
 
-#: ../output.py:663
+#: ../output.py:667
 msgid "--> Finished Dependency Resolution"
 msgstr "--> Alle avhengigheter er løst"
 
-#: ../output.py:668
+#: ../output.py:672
 #, python-format
 msgid "--> Processing Dependency: %s for package: %s"
 msgstr "--> Beregner avhengighet: %s for pakke: %s"
 
-#: ../output.py:673
+#: ../output.py:677
 #, python-format
 msgid "--> Unresolved Dependency: %s"
 msgstr "--> Avhengigheter som ikke kunne bli tilfredstilt: %s"
 
-#: ../output.py:679
+#: ../output.py:683
 #, python-format
 msgid "--> Processing Conflict: %s conflicts %s"
 msgstr "--> Beregner konflikter: %s er i konflikt med %s"
 
-#: ../output.py:682
+#: ../output.py:686
 msgid "--> Populating transaction set with selected packages. Please wait."
-msgstr "--> Fyller transaksjonen med valgt pakker. Vennligst vent."
+msgstr "--> Fyller transaksjonen med valgte pakker. Vennligst vent."
 
-#: ../output.py:686
+#: ../output.py:690
 #, python-format
 msgid "---> Downloading header for %s to pack into transaction set."
 msgstr "---> Henter ned filhode for pakke %s for å fylle transaksjonen."
 
-#: ../yumcommands.py:36
+#: ../yumcommands.py:37
 msgid "You need to be root to perform this command."
 msgstr "Du må være rootbruker for å utføre denne kommandoen."
 
-#: ../yumcommands.py:43
+#: ../yumcommands.py:44
 msgid ""
 "\n"
 "You have enabled checking of packages via GPG keys. This is a good thing. \n"
@@ -780,261 +803,277 @@ msgid ""
 "For more information contact your distribution or package provider.\n"
 msgstr ""
 "\n"
-"Du har valgt og sjekk pakkene ved hjelp av GPG-nøkler. Det er fornufting.\n"
+"Du har valgt å sjekke pakkene ved hjelp av GPG-nøkler. Det er fornuftig.\n"
 "Du har imidlertid ingen offentlige GPG-nøkler installert\n"
-"Du må hente ned og legge inn nøklene. Du kan legge de inn med kommandoen:\n"
+"Du må hente ned og legge inn nøklene. Du kan legge dem inn med kommandoen:\n"
 "\n"
 "  rpm --import public.gpg.key\n"
 "\n"
-"Et annet og bedre alternativ er og oppgi URL til de nøklene du vil bruke.\n"
-"Bruk opsjonen 'gpgkey' for hver pakkeoversikt for å ta dette i bruk.\n"
-"\n"
+"Et annet og bedre alternativ er å oppgi URL til de nøklene du vil bruke.\n"
+"Bruk opsjonen 'gpgkey' for hvert lager for å ta dette i bruk.\n"
 "\n"
+"Kontakt din distribusjon eller pakkeansvarlig for mer informasjon.\n"
 
-#: ../yumcommands.py:63
+#: ../yumcommands.py:64
 #, python-format
 msgid "Error: Need to pass a list of pkgs to %s"
-msgstr "Feil: du må oppgi ei liste over pakker som skal %s"
+msgstr "Feil: du må oppgi en liste med pakker som skal %s"
 
-#: ../yumcommands.py:69
+#: ../yumcommands.py:70
 msgid "Error: Need an item to match"
-msgstr "Feil: trenger noe og sammenligne med"
+msgstr "Feil: trenger noe å sammenligne med"
 
-#: ../yumcommands.py:75
+#: ../yumcommands.py:76
 msgid "Error: Need a group or list of groups"
-msgstr "Feil: trenger ei gruppe eller ei liste med grupper"
+msgstr "Feil: trenger en gruppe eller en liste med grupper"
 
-#: ../yumcommands.py:84
+#: ../yumcommands.py:85
 #, python-format
 msgid "Error: clean requires an option: %s"
 msgstr "Feil: clean trenger minst et argument: %s"
 
-#: ../yumcommands.py:89
+#: ../yumcommands.py:90
 #, python-format
 msgid "Error: invalid clean argument: %r"
 msgstr "Feil: ugyldig argument gitt til kommandoen clean: %r"
 
-#: ../yumcommands.py:102
+#: ../yumcommands.py:103
 msgid "No argument to shell"
 msgstr "Ingen argumenter ble gitt til kommandoen shell"
 
-#: ../yumcommands.py:105
+#: ../yumcommands.py:106
 #, python-format
 msgid "Filename passed to shell: %s"
-msgstr "Følgende filnavn ble som argument til shell: %s"
+msgstr "Følgende filnavn ble sendt til skallet: %s"
 
-#: ../yumcommands.py:109
+#: ../yumcommands.py:110
 #, python-format
 msgid "File %s given as argument to shell does not exist."
 msgstr ""
 "Filen %s som ble gitt som argument til kommandoen shell eksisterer ikke."
 
-#: ../yumcommands.py:115
+#: ../yumcommands.py:116
 msgid "Error: more than one file given as argument to shell."
-msgstr "Feil: mer enn ei fil ble gitt som argument til kommandoen shell."
+msgstr "Feil: mer enn en fil ble gitt som argument til kommandoen shell."
 
-#: ../yumcommands.py:156
+#: ../yumcommands.py:157
 msgid "PACKAGE..."
-msgstr "Pakke..."
+msgstr "PAKKE..."
 
-#: ../yumcommands.py:159
+#: ../yumcommands.py:160
 msgid "Install a package or packages on your system"
-msgstr "Legger inn pakke(r) på ditt system"
+msgstr "Legg inn en eller flere pakker på systemet"
 
-#: ../yumcommands.py:168
+#: ../yumcommands.py:169
 msgid "Setting up Install Process"
 msgstr "Forberedelser for installasjon"
 
-#: ../yumcommands.py:179
+#: ../yumcommands.py:180
 msgid "[PACKAGE...]"
-msgstr "[Pakke...}"
+msgstr "[PAKKE...]"
 
-#: ../yumcommands.py:182
+#: ../yumcommands.py:183
 msgid "Update a package or packages on your system"
-msgstr "Oppdaterer pakke(r) på ditt system"
+msgstr "Oppdater en eller flere pakker på systemet"
 
-#: ../yumcommands.py:190
+#: ../yumcommands.py:191
 msgid "Setting up Update Process"
 msgstr "Forberedelser for oppdatering"
 
-#: ../yumcommands.py:204
+#: ../yumcommands.py:205
 msgid "Display details about a package or group of packages"
 msgstr "Viser detaljer om en pakke eller en gruppe av grupper"
 
-#: ../yumcommands.py:212
+#: ../yumcommands.py:213
 msgid "Installed Packages"
 msgstr "Pakker som er installert"
 
-#: ../yumcommands.py:213
+#: ../yumcommands.py:214
 msgid "Available Packages"
-msgstr "Tilgjengelig pakker"
+msgstr "Tilgjengelige pakker"
 
-#: ../yumcommands.py:214
+#: ../yumcommands.py:215
 msgid "Extra Packages"
 msgstr "Tilleggspakker"
 
-#: ../yumcommands.py:215
+#: ../yumcommands.py:216
 msgid "Updated Packages"
 msgstr "Oppdaterte pakker"
 
-#: ../yumcommands.py:221 ../yumcommands.py:225
+#: ../yumcommands.py:222 ../yumcommands.py:228
 msgid "Obsoleting Packages"
 msgstr "Utdaterte pakker"
 
-#: ../yumcommands.py:226
+#: ../yumcommands.py:229
 msgid "Recently Added Packages"
-msgstr "Pakker som nylig er blitt lagt til"
+msgstr "Pakker som nylig er lagt til"
 
-#: ../yumcommands.py:232
+#: ../yumcommands.py:235
 msgid "No matching Packages to list"
-msgstr "Ingen passende pakker og liste opp"
+msgstr "Ingen passende pakker å liste opp"
 
-#: ../yumcommands.py:246
+#: ../yumcommands.py:249
 msgid "List a package or groups of packages"
-msgstr "Lag en liste over pakker eller gruppe av pakker"
+msgstr "Lag en liste med pakker eller grupper av pakker"
 
-#: ../yumcommands.py:258
+#: ../yumcommands.py:261
 msgid "Remove a package or packages from your system"
-msgstr "Fjerner pakke(r) fra ditt system"
+msgstr "Fjern en eller flere pakker fra systemet"
 
-#: ../yumcommands.py:266
+#: ../yumcommands.py:269
 msgid "Setting up Remove Process"
 msgstr "Klargjør for fjerning av pakker"
 
-#: ../yumcommands.py:278
+#: ../yumcommands.py:281
 msgid "Setting up Group Process"
-msgstr "Klargjør grupper av pakker"
+msgstr "Klargjør grupper med pakker"
 
-#: ../yumcommands.py:284
+#: ../yumcommands.py:287
 msgid "No Groups on which to run command"
-msgstr "Ingen gruppe er valgt for aktuelle kommando"
+msgstr "Ingen gruppe er valgt for aktuell kommando"
 
-#: ../yumcommands.py:297
+#: ../yumcommands.py:300
 msgid "List available package groups"
-msgstr "Lag liste over tilgjengelig grupper"
+msgstr "Lag liste over tilgjengelige pakkegrupper"
 
-#: ../yumcommands.py:314
+#: ../yumcommands.py:317
 msgid "Install the packages in a group on your system"
-msgstr "Legger inn pakkene i gruppe av pakker"
+msgstr "Legger inn pakkene i en gruppe på systemet"
 
-#: ../yumcommands.py:336
+#: ../yumcommands.py:339
 msgid "Remove the packages in a group from your system"
-msgstr "Fjerner alle pakkene i en gruppe av pakker"
+msgstr "Fjern pakkene i en gruppe fra systemet"
 
-#: ../yumcommands.py:360
+#: ../yumcommands.py:363
 msgid "Display details about a package group"
 msgstr "Viser detaljer om en gruppe av pakker"
 
-#: ../yumcommands.py:384
+#: ../yumcommands.py:387
 msgid "Generate the metadata cache"
-msgstr "Generer mellomlager av metadata"
+msgstr "Lag mellomlager med metadata"
 
-#: ../yumcommands.py:390
+#: ../yumcommands.py:393
 msgid "Making cache files for all metadata files."
 msgstr "Lager mellomlager for samtlige filer med metadata."
 
-#: ../yumcommands.py:391
+#: ../yumcommands.py:394
 msgid "This may take a while depending on the speed of this computer"
-msgstr "Dette kan ei stund alt ettersom hvor rask din maskin er"
+msgstr "Dette kan en stund avhengig av hvor rask datamaskinen er"
 
-#: ../yumcommands.py:412
+#: ../yumcommands.py:415
 msgid "Metadata Cache Created"
 msgstr "Mellomlager er ferdig lagd"
 
-#: ../yumcommands.py:426
+#: ../yumcommands.py:429
 msgid "Remove cached data"
 msgstr "Fjern mellomlager med metadata"
 
-#: ../yumcommands.py:447
+#: ../yumcommands.py:450
 msgid "Find what package provides the given value"
-msgstr "Finn hvilken pakke som tilbyr den søkte verdi"
+msgstr "Finn hvilken pakke som inneholder etterspurt verdi"
 
-#: ../yumcommands.py:467
+#: ../yumcommands.py:470
 msgid "Check for available package updates"
-msgstr "Sjekker om det oppdatering tilgjengelig for gruppene av pakker"
+msgstr "Se etter tilgjengelige pakkeoppdateringer"
 
-#: ../yumcommands.py:490
+#: ../yumcommands.py:493
 msgid "Search package details for the given string"
-msgstr "Søker etter detaljer om pakke utenifra den aktuelle strengen"
+msgstr "Søker etter oppgitt streng i pakkedetaljene"
 
-#: ../yumcommands.py:496
+#: ../yumcommands.py:499
 msgid "Searching Packages: "
-msgstr "Søker etter pakker: "
+msgstr "Søker i pakker: "
 
-#: ../yumcommands.py:513
+#: ../yumcommands.py:516
 msgid "Update packages taking obsoletes into account"
-msgstr "Oppdatering pakker og tar samtidig hensyn til pakker som er utdatert"
+msgstr "Oppdater pakker og ta hensyn til pakker som blir utdatert"
 
-#: ../yumcommands.py:522
+#: ../yumcommands.py:525
 msgid "Setting up Upgrade Process"
 msgstr "Klargjør for oppdatering"
 
-#: ../yumcommands.py:536
+#: ../yumcommands.py:539
 msgid "Install a local RPM"
 msgstr "Legger inn en RPM fra filsystemet"
 
-#: ../yumcommands.py:545
+#: ../yumcommands.py:548
 msgid "Setting up Local Package Process"
 msgstr "Klargjøring for pakker på lokalt filsystem"
 
-#: ../yumcommands.py:564
+#: ../yumcommands.py:567
 msgid "Determine which package provides the given dependency"
 msgstr "Finner hvilken pakke som tilbyr den gitte avhengigheten"
 
-#: ../yumcommands.py:567
+#: ../yumcommands.py:570
 msgid "Searching Packages for Dependency:"
-msgstr "Søker etter pakker med avhengighet:"
+msgstr "Søker i pakker etter avhengighet:"
 
-#: ../yumcommands.py:581
+#: ../yumcommands.py:584
 msgid "Run an interactive yum shell"
 msgstr "Kjører det interaktive Yum-skallet"
 
-#: ../yumcommands.py:587
+#: ../yumcommands.py:590
 msgid "Setting up Yum Shell"
 msgstr "Klargjør Yum-skallet"
 
-#: ../yumcommands.py:605
+#: ../yumcommands.py:608
 msgid "List a package's dependencies"
-msgstr "Lister opp avhengighetene til pakka"
+msgstr "Vis avhengigheter for en pakke"
 
-#: ../yumcommands.py:611
+#: ../yumcommands.py:614
 msgid "Finding dependencies: "
 msgstr "Finner avhengigheter: "
 
-#: ../yumcommands.py:627
+#: ../yumcommands.py:630
 msgid "Display the configured software repositories"
 msgstr "Viser de pakkeoversiktene som er satt opp"
 
-#: ../yumcommands.py:645
+#: ../yumcommands.py:666
+msgid "enabled"
+msgstr "aktiv"
+
+#: ../yumcommands.py:673
+msgid "disabled"
+msgstr "inaktiv"
+
+#: ../yumcommands.py:682
 msgid "repo id"
 msgstr "id"
 
-#: ../yumcommands.py:645
+#: ../yumcommands.py:683
 msgid "repo name"
 msgstr "navn"
 
-#: ../yumcommands.py:645
+#: ../yumcommands.py:683
 msgid "status"
 msgstr "status"
 
-#: ../yumcommands.py:651
-msgid "enabled"
-msgstr "aktiv"
+#: ../yumcommands.py:686
+msgid "Repo-id     : "
+msgstr "ID for lager: "
 
-#: ../yumcommands.py:654
-msgid "disabled"
-msgstr "inaktiv"
+#: ../yumcommands.py:687
+msgid "Repo-name   : "
+msgstr "Navn på lager : "
+
+#: ../yumcommands.py:688
+msgid "Repo-enabled: "
+msgstr "Lager aktivt: "
+
+#: ../yumcommands.py:689
+msgid "Repo-size   : "
+msgstr "Størrelse på lager : "
 
-#: ../yumcommands.py:671
+#: ../yumcommands.py:713
 msgid "Display a helpful usage message"
 msgstr "Viser en hjelpetekst"
 
-#: ../yumcommands.py:705
+#: ../yumcommands.py:747
 #, python-format
 msgid "No help available for %s"
 msgstr "Ingen hjelp er tilgjengelig for %s"
 
-#: ../yumcommands.py:710
+#: ../yumcommands.py:752
 msgid ""
 "\n"
 "\n"
@@ -1042,9 +1081,9 @@ msgid ""
 msgstr ""
 "\n"
 "\n"
-"aliaser:"
+"alias:"
 
-#: ../yumcommands.py:712
+#: ../yumcommands.py:754
 msgid ""
 "\n"
 "\n"
@@ -1054,15 +1093,15 @@ msgstr ""
 "\n"
 "alias:"
 
-#: ../yumcommands.py:741
+#: ../yumcommands.py:783
 msgid "Setting up Reinstall Process"
 msgstr "Klargjør for å legge inn pakke(r) på nytt"
 
-#: ../yumcommands.py:755
+#: ../yumcommands.py:797
 msgid "reinstall a package"
-msgstr "Legger inn en pakke på nytt"
+msgstr "legg inn en pakke på nytt"
 
-#: ../yummain.py:41
+#: ../yummain.py:55
 msgid ""
 "\n"
 "\n"
@@ -1072,7 +1111,7 @@ msgstr ""
 "\n"
 "Avslutter etter ønske"
 
-#: ../yummain.py:47
+#: ../yummain.py:61
 msgid ""
 "\n"
 "\n"
@@ -1080,42 +1119,42 @@ msgid ""
 msgstr ""
 "\n"
 "\n"
-"Avslutter på grunn ødelagt programrør"
+"Avslutter på grunn av brutt rør"
 
-#: ../yummain.py:105
+#: ../yummain.py:112
 msgid ""
 "Another app is currently holding the yum lock; waiting for it to exit..."
 msgstr ""
 "Et annet program holder en fillås for Yum, venter til fillåsen frigjøres..."
 
-#: ../yummain.py:132 ../yummain.py:171
+#: ../yummain.py:139 ../yummain.py:178
 #, python-format
 msgid "Error: %s"
 msgstr "Feil: %s"
 
-#: ../yummain.py:142 ../yummain.py:178
+#: ../yummain.py:149 ../yummain.py:185
 #, python-format
 msgid "Unknown Error(s): Exit Code: %d:"
-msgstr "Ukjent feil: feilkode: %d"
+msgstr "Ukjent feil: feilkode: %d:"
 
 #. Depsolve stage
-#: ../yummain.py:149
+#: ../yummain.py:156
 msgid "Resolving Dependencies"
-msgstr "Løser opp i avhengigheter"
+msgstr "Løser avhengigheter"
 
-#: ../yummain.py:184
+#: ../yummain.py:191
 msgid ""
 "\n"
 "Dependencies Resolved"
 msgstr ""
 "\n"
-"Alle avhengigheter er oppløst"
+"Alle avhengigheter er løst"
 
-#: ../yummain.py:198
+#: ../yummain.py:205
 msgid "Complete!"
 msgstr "Ferdig!"
 
-#: ../yummain.py:245
+#: ../yummain.py:252
 msgid ""
 "\n"
 "\n"
@@ -1125,319 +1164,258 @@ msgstr ""
 "\n"
 "Avslutter etter ønske"
 
-#: ../yum/depsolve.py:82
+#: ../yum/depsolve.py:78
 msgid "doTsSetup() will go away in a future version of Yum.\n"
 msgstr "doTsSetup() vil forsvinne i en kommende utgave av Yum.\n"
 
-#: ../yum/depsolve.py:95
+#: ../yum/depsolve.py:91
 msgid "Setting up TransactionSets before config class is up"
 msgstr "Setter opp transaksjons-sett før config klassen er klar"
 
-#: ../yum/depsolve.py:136
+#: ../yum/depsolve.py:132
 #, python-format
 msgid "Invalid tsflag in config file: %s"
 msgstr "Ugyldig tsflag in konfigurasjonsfil: %s"
 
-#: ../yum/depsolve.py:147
-#, python-format
-msgid "Searching pkgSack for dep: %s"
-msgstr "Søker i pkgSack etter avhengighet: %s"
-
-#: ../yum/depsolve.py:170
-#, python-format
-msgid "Potential match for %s from %s"
-msgstr "Potensielt treff for %s i %s"
-
-#: ../yum/depsolve.py:178
-#, python-format
-msgid "Matched %s to require for %s"
-msgstr "Passende %s for å tilfredstille %s"
-
-#: ../yum/depsolve.py:219
+#: ../yum/depsolve.py:176
 #, python-format
 msgid "Member: %s"
 msgstr "Medlem: %s"
 
-#: ../yum/depsolve.py:233 ../yum/depsolve.py:696
+#: ../yum/depsolve.py:190 ../yum/depsolve.py:592
 #, python-format
 msgid "%s converted to install"
 msgstr "%s ble omdannet til installering"
 
-#: ../yum/depsolve.py:240
+#: ../yum/depsolve.py:197
 #, python-format
 msgid "Adding Package %s in mode %s"
 msgstr "Legger til pakke %s in modus %s"
 
-#: ../yum/depsolve.py:250
+#: ../yum/depsolve.py:207
 #, python-format
 msgid "Removing Package %s"
 msgstr "Fjerner pakke %s"
 
-#: ../yum/depsolve.py:261
+#: ../yum/depsolve.py:218
 #, python-format
 msgid "%s requires: %s"
-msgstr "%s avhenger av: %s"
-
-#: ../yum/depsolve.py:312
-msgid "Needed Require has already been looked up, cheating"
-msgstr "Nødvendig avhengighet har allerede blitt plukket opp, jukser"
+msgstr "%s krever: %s"
 
-#: ../yum/depsolve.py:322
-#, python-format
-msgid "Needed Require is not a package name. Looking up: %s"
-msgstr "Nødvendig avhengighet er ikke et navn på pakke. Ser etter: %s"
-
-#: ../yum/depsolve.py:329
-#, python-format
-msgid "Potential Provider: %s"
-msgstr "Potensiell tilbyder: %s"
-
-#: ../yum/depsolve.py:352
-#, python-format
-msgid "Mode is %s for provider of %s: %s"
-msgstr "Modus er %s for tilbyder av %s: %s"
-
-#: ../yum/depsolve.py:356
-#, python-format
-msgid "Mode for pkg providing %s: %s"
-msgstr "Modus for pakke som tilbyr %s: %s"
-
-#: ../yum/depsolve.py:360
-#, python-format
-msgid "TSINFO: %s package requiring %s marked as erase"
-msgstr "TSINFO: pakke %s som er nødvendig for %s vil bli fjernet"
-
-#: ../yum/depsolve.py:372
+#: ../yum/depsolve.py:273
 #, python-format
 msgid "TSINFO: Obsoleting %s with %s to resolve dep."
 msgstr "TSINFO: Bytter ut %s med %s for å løse opp i avhengighet."
 
-#: ../yum/depsolve.py:375
+#: ../yum/depsolve.py:276
 #, python-format
 msgid "TSINFO: Updating %s to resolve dep."
 msgstr "TSINFO: Oppdaterer %s for å løse opp i avhengighet."
 
-#: ../yum/depsolve.py:378
+#: ../yum/depsolve.py:279
 #, python-format
 msgid "Cannot find an update path for dep for: %s"
 msgstr "Kunne ikke finne måte å oppdatere sti for avhengighet: %s."
 
-#: ../yum/depsolve.py:388
+#: ../yum/depsolve.py:283
 #, python-format
-msgid "Unresolvable requirement %s for %s"
-msgstr "Avhengighet %s kan ikke løses opp: %s"
+msgid "TSINFO: %s package requiring %s marked as erase"
+msgstr "TSINFO: pakke %s som er nødvendig for %s vil bli fjernet"
 
 #. is it already installed?
-#: ../yum/depsolve.py:434
+#: ../yum/depsolve.py:329
 #, python-format
 msgid "%s is in providing packages but it is already installed, removing."
 msgstr "%s tilbyr pakker, men er allerede installert, fjerner denne."
 
-#: ../yum/depsolve.py:449
+#: ../yum/depsolve.py:344
 #, python-format
 msgid "Potential resolving package %s has newer instance in ts."
-msgstr ""
-"Pakke %s som potensielt tilbyder løsning har allerede nyere instans in ts."
+msgstr "Pakke %s som potensielt løser opp avhengighet har nyere instans in ts."
 
-#: ../yum/depsolve.py:460
+#: ../yum/depsolve.py:355
 #, python-format
 msgid "Potential resolving package %s has newer instance installed."
 msgstr "Pakke %s som potensielt løser opp avhengighet er allerde installert."
 
-#: ../yum/depsolve.py:468 ../yum/depsolve.py:527
+#: ../yum/depsolve.py:363 ../yum/depsolve.py:410
 #, python-format
 msgid "Missing Dependency: %s is needed by package %s"
 msgstr "Uløst avhengighet: %s trengs av pakke %s"
 
-#: ../yum/depsolve.py:481
+#: ../yum/depsolve.py:376
 #, python-format
 msgid "%s already in ts, skipping this one"
 msgstr "%s er allerde i ts, hopper over denne"
 
-#: ../yum/depsolve.py:510
-#, python-format
-msgid ""
-"Failure finding best provider of %s for %s, exceeded maximum loop length"
-msgstr ""
-
-#: ../yum/depsolve.py:537
+#: ../yum/depsolve.py:420
 #, python-format
 msgid "TSINFO: Marking %s as update for %s"
 msgstr "TSINFO: Setter opp %s som oppdatering av %s"
 
-#: ../yum/depsolve.py:544
+#: ../yum/depsolve.py:427
 #, python-format
 msgid "TSINFO: Marking %s as install for %s"
 msgstr "TSINFO: Setter opp %s som pakke for installering av %s"
 
-#: ../yum/depsolve.py:635 ../yum/depsolve.py:714
+#: ../yum/depsolve.py:518 ../yum/depsolve.py:610
 msgid "Success - empty transaction"
-msgstr "Suksess- transaksjonen er tom"
+msgstr "Suksess - transaksjonen er tom"
 
-#: ../yum/depsolve.py:673 ../yum/depsolve.py:686
+#: ../yum/depsolve.py:562 ../yum/depsolve.py:582
 msgid "Restarting Loop"
 msgstr "Starter sløyfe på nytt"
 
-#: ../yum/depsolve.py:702
+#: ../yum/depsolve.py:598
 msgid "Dependency Process ending"
 msgstr "Beregning av avhengighet avsluttes"
 
-#: ../yum/depsolve.py:708
+#: ../yum/depsolve.py:604
 #, python-format
 msgid "%s from %s has depsolving problems"
-msgstr "%s to %s har problemer med avhengigheter"
+msgstr "%s fra %s har problemer med avhengigheter"
 
-#: ../yum/depsolve.py:715
+#: ../yum/depsolve.py:611
 msgid "Success - deps resolved"
 msgstr "Suksess - alle avhengigheter er tilfredstilt"
 
-#: ../yum/depsolve.py:729
+#: ../yum/depsolve.py:625
 #, python-format
 msgid "Checking deps for %s"
 msgstr "Sjekker avhengigheter for %s"
 
-#: ../yum/depsolve.py:782
+#: ../yum/depsolve.py:687
 #, python-format
 msgid "looking for %s as a requirement of %s"
-msgstr "leter etter %s som en nødvendighet fra %s"
-
-#: ../yum/depsolve.py:933
-#, python-format
-msgid "Comparing best: %s to po: %s"
-msgstr ""
+msgstr "leter etter %s som kreves av %s"
 
-#: ../yum/depsolve.py:937
+#: ../yum/depsolve.py:814
 #, python-format
-msgid "Same: best %s == po: %s"
-msgstr ""
-
-#: ../yum/depsolve.py:952 ../yum/depsolve.py:963
-#, python-format
-msgid "best %s obsoletes po: %s"
-msgstr ""
+msgid "Running compare_providers() for %s"
+msgstr "Kjører compare_providers() for %s"
 
-#: ../yum/depsolve.py:955
+#: ../yum/depsolve.py:842 ../yum/depsolve.py:848
 #, python-format
-msgid "po %s obsoletes best: %s"
-msgstr ""
-
-#: ../yum/depsolve.py:972 ../yum/depsolve.py:979 ../yum/depsolve.py:1036
-#, fuzzy, python-format
 msgid "better arch in po %s"
-msgstr "søker etter pakke %s"
+msgstr "bedre arch i po %s"
 
-#: ../yum/depsolve.py:988 ../yum/depsolve.py:1010
+#: ../yum/depsolve.py:887
 #, python-format
-msgid "po %s shares a sourcerpm with %s"
-msgstr ""
+msgid "%s obsoletes %s"
+msgstr "%s faser ut %s"
 
-#: ../yum/depsolve.py:992 ../yum/depsolve.py:1015
+#: ../yum/depsolve.py:898
 #, python-format
-msgid "best %s shares a sourcerpm with %s"
+msgid ""
+"archdist compared %s to %s on %s\n"
+"  Winner: %s"
 msgstr ""
+"archdist sammenlignet %s med %s på %s\n"
+" Vinner: %s"
 
-#: ../yum/depsolve.py:999 ../yum/depsolve.py:1020
+#: ../yum/depsolve.py:905
 #, python-format
-msgid "po %s shares more of the name prefix with %s"
+msgid "common sourcerpm %s and %s"
 msgstr ""
 
-#: ../yum/depsolve.py:1003 ../yum/depsolve.py:1029
+#: ../yum/depsolve.py:911
 #, python-format
-msgid "po %s has a shorter name than best %s"
+msgid "common prefix of %s between %s and %s"
 msgstr ""
 
-#: ../yum/depsolve.py:1025
+#: ../yum/depsolve.py:919
 #, python-format
-msgid "bestpkg %s shares more of the name prefix with %s"
-msgstr ""
+msgid "Best Order: %s"
+msgstr "Beste rekkefølge: %s"
 
-#: ../yum/__init__.py:119
+#: ../yum/__init__.py:148
 msgid "doConfigSetup() will go away in a future version of Yum.\n"
 msgstr "doConfigSetup() vil forsvinne i en kommende utgave av Yum.\n"
 
-#: ../yum/__init__.py:296
+#. FIXME: Use critical? or exception?
+#: ../yum/__init__.py:323
 #, python-format
 msgid "Repository %r is missing name in configuration, using id"
-msgstr "Pakkeoversikt %r har intet navn i konfigurasjonsfilen(e), bruker id"
+msgstr "Pakkelager %r mangler navn i konfigurasjonsfilen(e), bruker id"
 
-#: ../yum/__init__.py:332
+#: ../yum/__init__.py:359
 msgid "plugins already initialised"
-msgstr "tillegg til yum er allerede satt opp"
+msgstr "tillegg til yum er allerede initiert"
 
-#: ../yum/__init__.py:339
+#: ../yum/__init__.py:366
 msgid "doRpmDBSetup() will go away in a future version of Yum.\n"
 msgstr "doRepoSetup() vil forsvinne i en kommende utgave av Yum.\n"
 
-#: ../yum/__init__.py:349
+#: ../yum/__init__.py:376
 msgid "Reading Local RPMDB"
-msgstr "Leser inn lokale RPM-database"
+msgstr "Leser inn lokal RPM-database"
 
-#: ../yum/__init__.py:367
+#: ../yum/__init__.py:394
 msgid "doRepoSetup() will go away in a future version of Yum.\n"
 msgstr "doRepoSetup() vil forsvinne i en kommende utgave av Yum\n"
 
-#: ../yum/__init__.py:387
+#: ../yum/__init__.py:414
 msgid "doSackSetup() will go away in a future version of Yum.\n"
 msgstr "doSackSetup() vil forsvinne i en kommende utgave av Yum\n"
 
-#: ../yum/__init__.py:404
+#: ../yum/__init__.py:431
 msgid "Setting up Package Sacks"
 msgstr "Lager sekker med pakker"
 
-#: ../yum/__init__.py:447
+#: ../yum/__init__.py:474
 #, python-format
 msgid "repo object for repo %s lacks a _resetSack method\n"
-msgstr "objekt for pakkesoversikt %s mangler metoden _resetSack\n"
+msgstr "objekt for pakkelager %s mangler metoden _resetSack\n"
 
-#: ../yum/__init__.py:448
+#: ../yum/__init__.py:475
 msgid "therefore this repo cannot be reset.\n"
-msgstr "derfor kan ikke denne pakkeoversikten bli nullstilt\n"
+msgstr "derfor kan ikke denne pakkeoversikten nullstilles\n"
 
-#: ../yum/__init__.py:453
+#: ../yum/__init__.py:480
 msgid "doUpdateSetup() will go away in a future version of Yum.\n"
 msgstr "doUpdateSetup() vil forsvinne i en kommende utgave av Yum.\n"
 
-#: ../yum/__init__.py:465
+#: ../yum/__init__.py:492
 msgid "Building updates object"
-msgstr "Bygger opp oppdateringobject"
+msgstr "Bygger opp oppdateringsobjekt"
 
-#: ../yum/__init__.py:496
+#: ../yum/__init__.py:523
 msgid "doGroupSetup() will go away in a future version of Yum.\n"
 msgstr "doGroupSetup() vil forsvinne i en kommende utgave av Yum.\n"
 
-#: ../yum/__init__.py:520
+#: ../yum/__init__.py:547
 msgid "Getting group metadata"
-msgstr "Henter metadata om grupper"
+msgstr "Henter metadata for grupper"
 
-#: ../yum/__init__.py:546
+#: ../yum/__init__.py:572
 #, python-format
 msgid "Adding group file from repository: %s"
 msgstr "Legger til gruppefil fra pakkeoversikt: %s"
 
-#: ../yum/__init__.py:555
+#: ../yum/__init__.py:577
 #, python-format
 msgid "Failed to add groups file for repository: %s - %s"
-msgstr "Kunne ike legge til gruppefil for pakkeoversikt: %s - %s"
+msgstr "Kunne ikke legge til gruppefil for pakkeoversikt: %s - %s"
 
-#: ../yum/__init__.py:561
+#: ../yum/__init__.py:583
 msgid "No Groups Available in any repository"
-msgstr "Ingen grupper overhode tilgjengelig"
+msgstr "Ingen grupper tilgjengelig fra noen lagre"
 
-#: ../yum/__init__.py:611
+#: ../yum/__init__.py:633
 msgid "Importing additional filelist information"
-msgstr "Henter ytterligere informasjon om fil-lister"
+msgstr "Henter mer informasjon om fil-lister"
 
-#: ../yum/__init__.py:657
+#: ../yum/__init__.py:684
 #, python-format
 msgid "Skip-broken round %i"
-msgstr "Runde %i på grunn av ødelagte avhengigheter."
+msgstr "Runde %i for å hoppe over feil avhengighet"
 
-#: ../yum/__init__.py:680
+#: ../yum/__init__.py:707
 #, python-format
 msgid "Skip-broken took %i rounds "
-msgstr "På grunn ødelagte avhengigheter ble det gjennomført %i runder "
+msgstr "På grunn feil i avhengigheter ble det gjennomført %i runder "
 
-#: ../yum/__init__.py:681
+#: ../yum/__init__.py:708
 msgid ""
 "\n"
 "Packages skipped because of dependency problems:"
@@ -1445,157 +1423,161 @@ msgstr ""
 "\n"
 "Pakker som ble oversett på grunn av problemer med avhengigheter:"
 
-#: ../yum/__init__.py:685
+#: ../yum/__init__.py:712
 #, python-format
 msgid "    %s from %s"
 msgstr "    %s fra %s"
 
-#: ../yum/__init__.py:774
+#: ../yum/__init__.py:792
+msgid ""
+"Warning: scriptlet or other non-fatal errors occurred during transaction."
+msgstr ""
+
+#: ../yum/__init__.py:807
 #, python-format
 msgid "Failed to remove transaction file %s"
 msgstr "Kunne ikke fjerne transaksjonsfil %s"
 
-#: ../yum/__init__.py:814
+#: ../yum/__init__.py:847
 #, python-format
 msgid "excluding for cost: %s from %s"
 msgstr "ekskluderer på grunn av kostnad: %s fra %s"
 
-#: ../yum/__init__.py:845
+#: ../yum/__init__.py:878
 msgid "Excluding Packages in global exclude list"
-msgstr "Ekskluderer pakker som er i global liste av ekskluderte pakker"
+msgstr "Ekskluderer pakker som er i global liste med ekskluderte pakker"
 
-#: ../yum/__init__.py:847
+#: ../yum/__init__.py:880
 #, python-format
 msgid "Excluding Packages from %s"
 msgstr "Ekskluderer pakker fra %s"
 
-#: ../yum/__init__.py:875
+#: ../yum/__init__.py:906
 #, python-format
 msgid "Reducing %s to included packages only"
 msgstr "Reduserer %s til kun inkluderte pakker"
 
-#: ../yum/__init__.py:880
+#: ../yum/__init__.py:911
 #, python-format
 msgid "Keeping included package %s"
 msgstr "Tar vare på inkludert pakke %s"
 
-#: ../yum/__init__.py:886
+#: ../yum/__init__.py:917
 #, python-format
 msgid "Removing unmatched package %s"
 msgstr "Fjerner upassende pakke: %s"
 
-#: ../yum/__init__.py:889
+#: ../yum/__init__.py:920
 msgid "Finished"
 msgstr "Ferdig"
 
 #. Whoa. What the heck happened?
-#: ../yum/__init__.py:919
+#: ../yum/__init__.py:950
 #, python-format
 msgid "Unable to check if PID %s is active"
 msgstr "Kunne ikke sjekke om PID %s er aktiv"
 
 #. Another copy seems to be running.
-#: ../yum/__init__.py:923
+#: ../yum/__init__.py:954
 #, python-format
 msgid "Existing lock %s: another copy is running as pid %s."
-msgstr ""
-"Det fins allerede en låsefil: %s, en annen Yum kjører med PID %s allerede."
+msgstr "Det fins allerede en låsfil %s: en annen Yum kjører med PID %s."
 
-#: ../yum/__init__.py:970 ../yum/__init__.py:977
+#: ../yum/__init__.py:1017
 msgid "Package does not match intended download"
 msgstr "Det er forskjell mellom nedlastet og forventet størrelse"
 
-#: ../yum/__init__.py:991
+#: ../yum/__init__.py:1032
 msgid "Could not perform checksum"
-msgstr "Kunne ikke beregne tverrsum"
+msgstr "Kunne ikke beregne sjekksum"
 
-#: ../yum/__init__.py:994
+#: ../yum/__init__.py:1035
 msgid "Package does not match checksum"
-msgstr "Pakka har ikke korrekt tverrsum"
+msgstr "Pakken har ikke korrekt sjekksum"
 
-#: ../yum/__init__.py:1036
+#: ../yum/__init__.py:1079
 #, python-format
 msgid "package fails checksum but caching is enabled for %s"
-msgstr "tverrsummen til pakka er feil, men mellomlagring er satt på for %s"
+msgstr "sjekksummen til pakken er feil, men mellomlagring er satt på for %s"
 
-#: ../yum/__init__.py:1042
+#: ../yum/__init__.py:1082
 #, python-format
 msgid "using local copy of %s"
-msgstr "bruker lokal kop av %s"
+msgstr "bruker lokal kopi av %s"
 
-#: ../yum/__init__.py:1061
+#: ../yum/__init__.py:1107
 #, python-format
 msgid "Insufficient space in download directory %s to download"
 msgstr "Det er ikke nok ledig plass i katalogen %s hvor pakkene blir lagret"
 
-#: ../yum/__init__.py:1094
+#: ../yum/__init__.py:1140
 msgid "Header is not complete."
-msgstr "Filhode er ikke komplett."
+msgstr "Filhode er ikke fullstendig."
 
-#: ../yum/__init__.py:1134
+#: ../yum/__init__.py:1180
 #, python-format
 msgid ""
 "Header not in local cache and caching-only mode enabled. Cannot download %s"
 msgstr ""
-"Filhode er ikke tilgjengelig lokalt og i vi er mellomlager-modes. Kan ikke "
-"hente ned %s"
+"Filhode er ikke tilgjengelig lokalt og mellomlager-modus er aktivert Kan "
+"ikke hente ned %s"
 
-#: ../yum/__init__.py:1189
+#: ../yum/__init__.py:1235
 #, python-format
 msgid "Public key for %s is not installed"
 msgstr "Offentlig nøkkel for %s er ikke lagt inn"
 
-#: ../yum/__init__.py:1193
+#: ../yum/__init__.py:1239
 #, python-format
 msgid "Problem opening package %s"
-msgstr "Kunne ved åpning av pakke %s"
+msgstr "Problem ved åpning av pakke %s"
 
-#: ../yum/__init__.py:1201
+#: ../yum/__init__.py:1247
 #, python-format
 msgid "Public key for %s is not trusted"
 msgstr "Offentlig nøkkel %s er ikke til å stole på"
 
-#: ../yum/__init__.py:1205
+#: ../yum/__init__.py:1251
 #, python-format
 msgid "Package %s is not signed"
-msgstr "Pakka %s er ikke signert"
+msgstr "Pakken %s er ikke signert"
 
-#: ../yum/__init__.py:1243
+#: ../yum/__init__.py:1289
 #, python-format
 msgid "Cannot remove %s"
-msgstr "Kunne ikke fjern %s"
+msgstr "Kan ikke fjerne %s"
 
-#: ../yum/__init__.py:1247
+#: ../yum/__init__.py:1292
 #, python-format
 msgid "%s removed"
 msgstr "%s fjernet"
 
-#: ../yum/__init__.py:1283
+#: ../yum/__init__.py:1328
 #, python-format
 msgid "Cannot remove %s file %s"
-msgstr "Kan ikke fjerne %s fra fila %s"
+msgstr "Kan ikke fjerne %s fra fil %s"
 
-#: ../yum/__init__.py:1287
+#: ../yum/__init__.py:1331
 #, python-format
 msgid "%s file %s removed"
-msgstr "%s fila %s er fjernet"
+msgstr "%s fil %s er fjernet"
 
-#: ../yum/__init__.py:1289
+#: ../yum/__init__.py:1333
 #, python-format
 msgid "%d %s files removed"
-msgstr "%d %s filer er fjernet"
+msgstr "%d %s filer fjernet"
 
-#: ../yum/__init__.py:1329
+#: ../yum/__init__.py:1386
 #, python-format
 msgid "More than one identical match in sack for %s"
-msgstr "Mer enn en identisk passende treff i sekken %s"
+msgstr "Mer enn ett identisk passende treff i sekken %s"
 
-#: ../yum/__init__.py:1335
+#: ../yum/__init__.py:1391
 #, python-format
 msgid "Nothing matches %s.%s %s:%s-%s from update"
 msgstr "Ingenting passer %s.%s %s:%s-%s fra oppdatering"
 
-#: ../yum/__init__.py:1543
+#: ../yum/__init__.py:1585
 msgid ""
 "searchPackages() will go away in a future version of "
 "Yum.                      Use searchGenerator() instead. \n"
@@ -1603,140 +1585,165 @@ msgstr ""
 "searchPackages() vil forsvinne i en kommende utgave av Yum.\n"
 "Bruk heller searchGenerator()\n"
 
-#: ../yum/__init__.py:1580
+#: ../yum/__init__.py:1621
 #, python-format
 msgid "Searching %d packages"
 msgstr "Søker etter %d pakker"
 
-#: ../yum/__init__.py:1584
+#: ../yum/__init__.py:1624
 #, python-format
 msgid "searching package %s"
 msgstr "søker etter pakke %s"
 
-#: ../yum/__init__.py:1596
+#: ../yum/__init__.py:1635
 msgid "searching in file entries"
 msgstr "søker i filoversikt"
 
-#: ../yum/__init__.py:1603
+#: ../yum/__init__.py:1641
 msgid "searching in provides entries"
-msgstr "søker i oppføringer av tilbydere"
+msgstr "søker i oppføringer av tilbud"
 
-#: ../yum/__init__.py:1633
+#: ../yum/__init__.py:1671
 #, python-format
 msgid "Provides-match: %s"
 msgstr "Tilbyder-treff: %s"
 
-#: ../yum/__init__.py:1702 ../yum/__init__.py:1720 ../yum/__init__.py:1748
-#: ../yum/__init__.py:1753 ../yum/__init__.py:1808 ../yum/__init__.py:1812
+#: ../yum/__init__.py:1717
+msgid "No group data available for configured repositories"
+msgstr "Ingen gruppedata tilgjengelig for konfigurerte pakkelager"
+
+#: ../yum/__init__.py:1743 ../yum/__init__.py:1762 ../yum/__init__.py:1788
+#: ../yum/__init__.py:1794 ../yum/__init__.py:1850 ../yum/__init__.py:1854
 #, python-format
 msgid "No Group named %s exists"
-msgstr "Ikke gruppe med navn %s er tilgjengelig"
+msgstr "Det eksisterer ingen gruppe med navn %s "
 
-#: ../yum/__init__.py:1731 ../yum/__init__.py:1824
+#: ../yum/__init__.py:1773 ../yum/__init__.py:1866
 #, python-format
 msgid "package %s was not marked in group %s"
-msgstr "pakka %s var ikke med i gruppa %s"
+msgstr "pakke %s var ikke med i gruppe %s"
 
-#: ../yum/__init__.py:1770
+#: ../yum/__init__.py:1811
 #, python-format
 msgid "Adding package %s from group %s"
 msgstr "Legger til pakke %s fra gruppe %s"
 
-#: ../yum/__init__.py:1774
+#: ../yum/__init__.py:1816
 #, python-format
 msgid "No package named %s available to be installed"
 msgstr "Ingen pakke med navn %s er tilgjendelig for installering"
 
-#: ../yum/__init__.py:1849
+#: ../yum/__init__.py:1891
 #, python-format
 msgid "Package tuple %s could not be found in packagesack"
 msgstr "Pakke tuppel %s ble ikke funnet i sekken med pakker"
 
-#: ../yum/__init__.py:1917 ../yum/__init__.py:1960
+#: ../yum/__init__.py:1959 ../yum/__init__.py:1999
 msgid "Invalid versioned dependency string, try quoting it."
 msgstr ""
-"Den versjonerte strengen med avhengigheter er ugyldig, prøv og sette den i "
+"Den versjonerte strengen med avhengigheter er ugyldig, prøv å sette den i "
 "anførelsestegn."
 
-#: ../yum/__init__.py:1919 ../yum/__init__.py:1962
+#: ../yum/__init__.py:1961 ../yum/__init__.py:2001
 msgid "Invalid version flag"
 msgstr "Ugyldig versjonsflagg"
 
-#: ../yum/__init__.py:1934 ../yum/__init__.py:1938
+#: ../yum/__init__.py:1973 ../yum/__init__.py:1977
 #, python-format
 msgid "No Package found for %s"
 msgstr "Ingen pakke for %s er funnet"
 
-#: ../yum/__init__.py:2066
+#: ../yum/__init__.py:2105
 msgid "Package Object was not a package object instance"
-msgstr "Pakkeobjekt var ikke en pakkeobjekt instans"
+msgstr "Pakkeobjekt var ikke en pakkeobjektinstans"
 
-#: ../yum/__init__.py:2070
+#: ../yum/__init__.py:2109
 msgid "Nothing specified to install"
-msgstr "Det ble ikke bedt om og installere noe som helst"
+msgstr "Ingenting oppgitt for installasjon"
 
 #. only one in there
-#: ../yum/__init__.py:2085
+#: ../yum/__init__.py:2124
 #, python-format
 msgid "Checking for virtual provide or file-provide for %s"
 msgstr "Sjekker for virtuelle tilbydere eller tilbydere av filer for %s"
 
-#: ../yum/__init__.py:2091 ../yum/__init__.py:2380
+#: ../yum/__init__.py:2130 ../yum/__init__.py:2446
 #, python-format
 msgid "No Match for argument: %s"
-msgstr "Intet treff for argument: %s"
+msgstr "Ingen treff for argument: %s"
 
 #. FIXME - this is where we could check to see if it already installed
 #. for returning better errors
-#: ../yum/__init__.py:2146
+#: ../yum/__init__.py:2185
 msgid "No package(s) available to install"
 msgstr "Ingen pakke(r) er tilgjengelig for installering"
 
-#: ../yum/__init__.py:2158
+#: ../yum/__init__.py:2198
 #, python-format
 msgid "Package: %s  - already in transaction set"
 msgstr "Pakke: %s - allerede i transaksjonensettet"
 
-#: ../yum/__init__.py:2171
+#: ../yum/__init__.py:2212
 #, python-format
 msgid "Package %s already installed and latest version"
-msgstr "Pakke %s er allerede installert i siste og beste versjon"
+msgstr "Pakke %s er allerede installert i siste versjon"
 
-#: ../yum/__init__.py:2178
-#, fuzzy, python-format
+#: ../yum/__init__.py:2219
+#, python-format
 msgid "Package matching %s already installed. Checking for update."
-msgstr "Pakke %s er allerede lagt inn, hopper over"
+msgstr "Pakke med treff på %s er allerede lagt inn. Ser etter oppdatering"
+
+#: ../yum/__init__.py:2230
+#, fuzzy, python-format
+msgid "Package %s is obsoleted by %s, trying to install %s instead"
+msgstr ""
+"Pakka %s er ikke installert, så den kan ikke oppdateres. Bruk kommandoen yum "
+"install for å legge den inn."
 
 #. update everything (the easy case)
-#: ../yum/__init__.py:2220
+#: ../yum/__init__.py:2263
 msgid "Updating Everything"
 msgstr "Oppdaterer alt"
 
-#: ../yum/__init__.py:2304
+#: ../yum/__init__.py:2366
 #, python-format
 msgid "Package is already obsoleted: %s.%s %s:%s-%s"
 msgstr "Pakka er allerede foreldet:  %s.%s %s:%s-%s"
 
-#: ../yum/__init__.py:2377
+#: ../yum/__init__.py:2390
+#, fuzzy, python-format
+msgid "Not Updating Package that is already updated: %s.%s %s:%s-%s"
+msgstr "Vil ikke oppdatere pakke som allerede er foreldet: %s.%s %s:%s-%s"
+
+#: ../yum/__init__.py:2443
 #, python-format
 msgid "%s"
 msgstr "%s"
 
-#: ../yum/__init__.py:2392
+#. FIXME we should give the caller some nice way to hush this warning
+#. probably just a kwarg of 'silence_warnings' or something
+#. b/c when this is called from groupRemove() it makes a lot of
+#. garbage noise
+#: ../yum/__init__.py:2462
 msgid "No package matched to remove"
 msgstr "Kunne ikke finne noen passende pakke for fjerning"
 
-#: ../yum/__init__.py:2426
+#: ../yum/__init__.py:2496
 #, python-format
 msgid "Cannot open file: %s. Skipping."
 msgstr "Kunne ikke åpne fil: %s. Hopper over."
 
-#: ../yum/__init__.py:2429
+#: ../yum/__init__.py:2498
 #, python-format
 msgid "Examining %s: %s"
-msgstr "Gransker: %s: %s"
+msgstr "Undersøker: %s: %s"
+
+#: ../yum/__init__.py:2504
+#, python-format
+msgid "Cannot add package %s to transaction. Not a compatible architecture: %s"
+msgstr ""
 
-#: ../yum/__init__.py:2436
+#: ../yum/__init__.py:2512
 #, python-format
 msgid ""
 "Package %s not installed, cannot update it. Run yum install to install it "
@@ -1745,77 +1752,77 @@ msgstr ""
 "Pakka %s er ikke installert, så den kan ikke oppdateres. Bruk kommandoen yum "
 "install for å legge den inn."
 
-#: ../yum/__init__.py:2468
+#: ../yum/__init__.py:2545
 #, python-format
 msgid "Excluding %s"
 msgstr "Ekskluderer %s"
 
-#: ../yum/__init__.py:2473
+#: ../yum/__init__.py:2549
 #, python-format
 msgid "Marking %s to be installed"
 msgstr "Setter av %s for kommende installering"
 
-#: ../yum/__init__.py:2479
+#: ../yum/__init__.py:2554
 #, python-format
 msgid "Marking %s as an update to %s"
 msgstr "Setter av %s som en oppdatering av %s"
 
-#: ../yum/__init__.py:2486
+#: ../yum/__init__.py:2559
 #, python-format
 msgid "%s: does not update installed package."
 msgstr "%s: vil ikke oppdatere installert pakke."
 
-#: ../yum/__init__.py:2504
+#: ../yum/__init__.py:2576
 msgid "Problem in reinstall: no package matched to remove"
 msgstr "Problem ved reinstall: kunne ikke finne passende pakke og fjerne"
 
-#: ../yum/__init__.py:2515
+#: ../yum/__init__.py:2587
 #, fuzzy, python-format
 msgid "Package %s is allowed multiple installs, skipping"
 msgstr "Pakke %s er allerede lagt inn, hopper over"
 
-#: ../yum/__init__.py:2522
+#: ../yum/__init__.py:2594
 msgid "Problem in reinstall: no package matched to install"
 msgstr "Problem ved reinstall: kunne ikke finne passende pakke og installere "
 
-#: ../yum/__init__.py:2570
+#: ../yum/__init__.py:2641
 #, python-format
 msgid "Retrieving GPG key from %s"
 msgstr "Henter GPG-nøkkel fra %s"
 
-#: ../yum/__init__.py:2576
+#: ../yum/__init__.py:2647
 msgid "GPG key retrieval failed: "
 msgstr "Henting av GPG-nøkkel feilet: "
 
-#: ../yum/__init__.py:2589
+#: ../yum/__init__.py:2663
 msgid "GPG key parsing failed: "
 msgstr "Analyse av GPG-nøkkel feilet: "
 
-#: ../yum/__init__.py:2593
+#: ../yum/__init__.py:2667
 #, python-format
 msgid "GPG key at %s (0x%s) is already installed"
 msgstr "GPG-nøkkel ved %s (0x%s) er allerede lagt inn"
 
 #. Try installing/updating GPG key
-#: ../yum/__init__.py:2598
+#: ../yum/__init__.py:2672
 #, python-format
 msgid "Importing GPG key 0x%s \"%s\" from %s"
 msgstr "Legger inn GPG-nøkkel 0x%s \"%s\" fra %s"
 
-#: ../yum/__init__.py:2610
+#: ../yum/__init__.py:2685
 msgid "Not installing key"
 msgstr "Legger ikke inn nøkkel"
 
-#: ../yum/__init__.py:2616
+#: ../yum/__init__.py:2691
 #, python-format
 msgid "Key import failed (code %d)"
 msgstr "Import av nøkkel feilet (kode %d)"
 
-#: ../yum/__init__.py:2619
+#: ../yum/__init__.py:2694
 msgid "Key imported successfully"
 msgstr "Nøkler ble lagt inn med suksess"
 
-#: ../yum/__init__.py:2624
+#: ../yum/__init__.py:2699
 #, python-format
 msgid ""
 "The GPG keys listed for the \"%s\" repository are already installed but they "
@@ -1827,74 +1834,79 @@ msgstr ""
 "Sjekk at korrekt URL (gpgkey opsjonen) er oppgitt for denne\n"
 "pakkeoversikten."
 
-#: ../yum/__init__.py:2633
+#: ../yum/__init__.py:2708
 msgid "Import of key(s) didn't help, wrong key(s)?"
 msgstr "Import av nøkler hjalp ikke, feil nøkler?"
 
-#: ../yum/__init__.py:2707
+#: ../yum/__init__.py:2789
 msgid "Unable to find a suitable mirror."
 msgstr "Kunne ikke finne passende filspeil"
 
-#: ../yum/__init__.py:2709
+#: ../yum/__init__.py:2791
 msgid "Errors were encountered while downloading packages."
 msgstr "Det oppstod feil ved nedlastning av pakker."
 
-#: ../yum/__init__.py:2774
+#: ../yum/__init__.py:2854
 msgid "Test Transaction Errors: "
 msgstr "Feil ved testtransaksjon: "
 
 #. Mostly copied from YumOutput._outKeyValFill()
-#: ../yum/plugins.py:195
+#: ../yum/plugins.py:197
 msgid "Loaded plugins: "
 msgstr "Tillegg som er i bruk:"
 
-#: ../yum/plugins.py:206
+#: ../yum/plugins.py:208
 #, fuzzy, python-format
 msgid "No plugin match for: %s"
 msgstr "Intet treff for argument: %s"
 
-#: ../yum/plugins.py:219
+#: ../yum/plugins.py:221
 #, python-format
 msgid "\"%s\" plugin is disabled"
 msgstr "Tillegg: %s er ikke aktiv."
 
-#: ../yum/plugins.py:231
+#: ../yum/plugins.py:233
 #, python-format
 msgid "Plugin \"%s\" doesn't specify required API version"
 msgstr "Tillegg \"%s\" tilfredstiller ikke versjonskravene fra Yum."
 
-#: ../yum/plugins.py:235
+#: ../yum/plugins.py:237
 #, python-format
 msgid "Plugin \"%s\" requires API %s. Supported API is %s."
 msgstr "Tillegg \"%s\" krever API versjon: %s. Men støttet API versjon er %s."
 
-#: ../yum/plugins.py:264
+#: ../yum/plugins.py:266
 #, python-format
 msgid "Loading \"%s\" plugin"
 msgstr "Laster tillegg \"%s\""
 
-#: ../yum/plugins.py:271
+#: ../yum/plugins.py:273
 #, python-format
 msgid ""
 "Two or more plugins with the name \"%s\" exist in the plugin search path"
-msgstr "To eller flere tillegg har samme navn."
+msgstr "Det finnes to eller flere tillegg med navn «%s» i søkestien for tillegg"
 
-#: ../yum/plugins.py:291
+#: ../yum/plugins.py:293
 #, python-format
 msgid "Configuration file %s not found"
 msgstr "Konfigurasjonsfila %s ble ikke funnet"
 
 #. for
 #. Configuration files for the plugin not found
-#: ../yum/plugins.py:294
+#: ../yum/plugins.py:296
 #, python-format
 msgid "Unable to find configuration file for plugin %s"
 msgstr "Kunne ikke finne konfigurasjon for tillegg %s"
 
-#: ../yum/plugins.py:448
+#: ../yum/plugins.py:450
 msgid "registration of commands not supported"
 msgstr "registering av kommandoer er ikke støttet"
 
+#: ../yum/rpmtrans.py:78
+#, fuzzy
+msgid "Repackaging"
+msgstr "Pakker på nytt"
+
 #: ../rpmUtils/oldUtils.py:26
 #, python-format
 msgid "Header cannot be opened or does not match %s, %s."
@@ -1924,6 +1936,33 @@ msgstr "Filhode til %s er ødelagt"
 msgid "Error opening rpm %s - error %s"
 msgstr "Kunne ikke åpen rpm pakke %s - feilen er %s"
 
+#~ msgid "Searching pkgSack for dep: %s"
+#~ msgstr "Søker i pkgSack etter avhengighet: %s"
+
+#~ msgid "Potential match for %s from %s"
+#~ msgstr "Potensielt treff for %s i %s"
+
+#~ msgid "Matched %s to require for %s"
+#~ msgstr "Passende %s for å tilfredstille %s"
+
+#~ msgid "Needed Require has already been looked up, cheating"
+#~ msgstr "Nødvendig avhengighet har allerede blitt plukket opp, jukser"
+
+#~ msgid "Needed Require is not a package name. Looking up: %s"
+#~ msgstr "Nødvendig avhengighet er ikke et navn på pakke. Ser etter: %s"
+
+#~ msgid "Potential Provider: %s"
+#~ msgstr "Potensiell tilbyder: %s"
+
+#~ msgid "Mode is %s for provider of %s: %s"
+#~ msgstr "Modus er %s for tilbyder av %s: %s"
+
+#~ msgid "Mode for pkg providing %s: %s"
+#~ msgstr "Modus for pakke som tilbyr %s: %s"
+
+#~ msgid "Unresolvable requirement %s for %s"
+#~ msgstr "Avhengighet %s kan ikke løses opp: %s"
+
 #~ msgid "Looking for Obsoletes for %s"
 #~ msgstr "Leter opp informasjon utgåtte pakker for %s"
 
commit 388ea0b4b2a526955beab9ab6fa6004b1e4de2f7
Author: Tim Lauridsen <tim at hoth.local>
Date:   Sat Aug 16 08:36:32 2008 +0200

    Added chinese translation by lijiansheng

diff --git a/po/zh_CN.po b/po/zh_CN.po
new file mode 100644
index 0000000..3b30c2f
--- /dev/null
+++ b/po/zh_CN.po
@@ -0,0 +1,1311 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: yum\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-03-20 10:00+0000\n"
+"PO-Revision-Date: 2008-07-24 19:43+0800\n"
+"Last-Translator: lijiansheng <lijiangsheng1 at gmail.com>\n"
+"Language-Team: zh_CN <lijiangsheng1 at gmail.com>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Language: Chinese\n"
+"X-Poedit-Country: CHINA\n"
+
+msgid ""
+"\n"
+"\n"
+"Exiting on Broken Pipe"
+msgstr ""
+"\n"
+"\n"
+"管道损坏而退出"
+
+msgid ""
+"\n"
+"\n"
+"Exiting on user cancel"
+msgstr ""
+"\n"
+"\n"
+"用户取消而退出"
+
+msgid ""
+"\n"
+"\n"
+"Exiting on user cancel."
+msgstr ""
+"\n"
+"\n"
+"用户取消而退出"
+
+msgid ""
+"\n"
+"\n"
+"alias: "
+msgstr ""
+"\n"
+"\n"
+"别名: "
+
+msgid ""
+"\n"
+"\n"
+"aliases: "
+msgstr ""
+"\n"
+"\n"
+"多重别名: "
+
+msgid ""
+"\n"
+" Current download cancelled, %sinterrupt (ctrl-c) again%s within %s%s%s seconds to exit.\n"
+msgstr ""
+"\n"
+" 当前下载取消, %s 中断 (ctrl-c) 再次 %s 将在%s%s%s 秒内退出.\n"
+
+msgid ""
+"\n"
+"Dependencies Resolved"
+msgstr ""
+"\n"
+"依赖性解决"
+
+msgid ""
+"\n"
+"Group: %s"
+msgstr ""
+"\n"
+"组: %s"
+
+msgid ""
+"\n"
+"Packages skipped because of dependency problems:"
+msgstr ""
+"\n"
+"因为依赖性问题而忽略的包:"
+
+msgid ""
+"\n"
+"Transaction Summary\n"
+"=============================================================================\n"
+"Install  %5.5s Package(s)         \n"
+"Update   %5.5s Package(s)         \n"
+"Remove   %5.5s Package(s)         \n"
+msgstr ""
+"\n"
+"处理信息摘要\n"
+"=============================================================================\n"
+"安装    %5.5s 个包        \n"
+"升级   %5.5s 个包         \n"
+"删除      %5.5s 个包         \n"
+
+msgid ""
+"\n"
+"You have enabled checking of packages via GPG keys. This is a good thing. \n"
+"However, you do not have any GPG public keys installed. You need to download\n"
+"the keys for packages you wish to install and install them.\n"
+"You can do that by running the command:\n"
+"    rpm --import public.gpg.key\n"
+"\n"
+"\n"
+"Alternatively you can specify the url to the key you would like to use\n"
+"for a repository in the 'gpgkey' option in a repository section and yum \n"
+"will install it for you.\n"
+"\n"
+"For more information contact your distribution or package provider.\n"
+msgstr ""
+"\n"
+"你已经激活通过GPG密钥验证包,这是个好东西。 \n"
+"然而,你没有安装任何的GPG公钥,你需要下载:\n"
+"如果你要安装包的密钥\n"
+"你可以执行下面的命令:\n"
+"    rpm --import public.gpg.key\n"
+"\n"
+"\n"
+"Alternatively you can specify the url to the key you would like to use\n"
+"for a repository in the 'gpgkey' option in a repository section and yum \n"
+"will install it for you.\n"
+"\n"
+"For more information contact your distribution or package provider.\n"
+
+msgid ""
+"     replacing  %s.%s %s\n"
+"\n"
+msgstr ""
+"     替代中 %s.%s %s\n"
+"\n"
+
+msgid "    %s from %s"
+msgstr "    %s 从 %s"
+
+msgid "   Unsatisfied dependency"
+msgstr "  不能满意的依赖性"
+
+msgid "  At least %dMB needed on the %s filesystem.\n"
+msgstr " 至少 需要%d MB ,但前的 %s 文件系统.\n"
+
+msgid "  No dependencies for this package"
+msgstr "此包无任何的依赖"
+
+msgid "  dependency: %s"
+msgstr "   依赖: %s"
+
+msgid " Conditional Packages:"
+msgstr " 包条件:"
+
+msgid " Default Packages:"
+msgstr " 默认的包:"
+
+msgid " Description: %s"
+msgstr " 描述: %s"
+
+msgid " Mandatory Packages:"
+msgstr " 托管的包是:"
+
+msgid " Optional Packages:"
+msgstr "  包的属性:"
+
+msgid "\"%s\" plugin is disabled"
+msgstr "\"%s\" 此插件已被禁掉"
+
+msgid "%d %s files removed"
+msgstr "%d %s 文件已移除"
+
+msgid "%d Package(s) to Install"
+msgstr "%d 个包将安装"
+
+msgid "%d Package(s) to remove"
+msgstr "%d 个包将删除"
+
+msgid "%d packages marked for Update"
+msgstr "%d 个包已标志为升级"
+
+msgid "%d packages marked for removal"
+msgstr "%d 个包已标志为删除"
+
+msgid "%s"
+msgstr "%s"
+
+msgid "%s already in ts, skipping this one"
+msgstr "%s 已在处理中, 忽略此项"
+
+msgid "%s converted to install"
+msgstr "%s 已转换的将安装"
+
+msgid "%s file %s removed"
+msgstr "%s 文件 %s 已移除"
+
+msgid "%s from %s has depsolving problems"
+msgstr "%s 已从%s  解决了问题"
+
+msgid "%s is in providing packages but it is already installed, removing."
+msgstr "%s 在假设的包中,但是已经安装,删除中...."
+
+msgid "%s removed"
+msgstr "%s 已删除"
+
+msgid "%s requires: %s"
+msgstr "%s 需要: %s"
+
+msgid "%s: does not update installed package."
+msgstr "%s: 没有可供升级的包."
+
+msgid "---> Downloading header for %s to pack into transaction set."
+msgstr "--->为 %s下载头文件以便于设置处理."
+
+msgid "---> Package %s.%s %s:%s-%s set to be %s"
+msgstr "---> 包 %s.%s %s:%s-%s 设置为 %s "
+
+msgid "--> Finished Dependency Resolution"
+msgstr "--> 完成依赖性检查"
+
+msgid "--> Populating transaction set with selected packages. Please wait."
+msgstr "--> 正在处理已选择的包,请稍候。"
+
+msgid "--> Processing Conflict: %s conflicts %s"
+msgstr "--> 过程冲突: %s 冲突于 %s"
+
+msgid "--> Processing Dependency: %s for package: %s"
+msgstr "--> 过程依赖: %s 依赖于包: %s"
+
+msgid "--> Restarting Dependency Resolution with new changes."
+msgstr "--> 为新包重新启动解决依赖问题"
+
+msgid "--> Running transaction check"
+msgstr "-->运行处理检查"
+
+msgid "--> Unresolved Dependency: %s"
+msgstr "--> 没有解决的依赖: %s"
+
+msgid "Adding Package %s in mode %s"
+msgstr "添加包 %s 在 %s 的模式下"
+
+msgid "Adding group file from repository: %s"
+msgstr "从仓库: %s 中添加组文件"
+
+msgid "Adding package %s from group %s"
+msgstr "添加包 %s 从组 %s 中"
+
+msgid "Another app is currently holding the yum lock; waiting for it to exit..."
+msgstr "另外一个应用程序正在适用yum锁;等待其退出 ... ..."
+
+msgid "Apr"
+msgstr "Apr"
+
+msgid "Arch"
+msgstr "架构"
+
+msgid "Arch       : %s"
+msgstr "架构 : %s"
+
+msgid "Aug"
+msgstr "Aug"
+
+msgid "Available Groups:"
+msgstr "有效的组:"
+
+msgid "Available Packages"
+msgstr "已经提供的包"
+
+msgid "Building updates object"
+msgstr "建立升级对象"
+
+msgid "Cannot find an update path for dep for: %s"
+msgstr "Cannot find an update path for dep for: %s"
+
+msgid "Cannot open file: %s. Skipping."
+msgstr "不能打开文件: %s. 跳过."
+
+msgid "Cannot remove %s"
+msgstr "无法删除 %s "
+
+msgid "Cannot remove %s file %s"
+msgstr "无法删除 %s 文件 %s"
+
+msgid "Check for available package updates"
+msgstr "检查可提供的包升级"
+
+msgid "Checking deps for %s"
+msgstr "为 %s 检查依赖性"
+
+msgid "Checking for virtual provide or file-provide for %s"
+msgstr "Checking for virtual provide or file-provide for %s"
+
+msgid "Cleaning up Everything"
+msgstr "清理一切"
+
+msgid "Cleaning up Headers"
+msgstr "Räume Header auf"
+
+msgid "Cleaning up Packages"
+msgstr "清理包"
+
+msgid "Cleaning up database cache"
+msgstr "清理数据库缓存"
+
+msgid "Cleaning up plugins"
+msgstr "清理插件"
+
+msgid "Cleaning up xml metadata"
+msgstr "清理XML元数据"
+
+msgid "Cleanup"
+msgstr "清理"
+
+msgid "Command \"%s\" already defined"
+msgstr "命令 \"%s\" 早已经被定义"
+
+msgid "Command line error: %s"
+msgstr "命令行错误: %s"
+
+msgid "Committer  : %s"
+msgstr "Ãœbermittler  : %s"
+
+msgid "Comparing best: %s to po: %s"
+msgstr "Vergleiche besseres: %s zu po: %s"
+
+msgid "Complete!"
+msgstr "恭喜你!成功完成!"
+
+msgid "Config Error: %s"
+msgstr "配置错误: %s"
+
+msgid "Configuration file %s not found"
+msgstr "配置文件 %s 不能被找到"
+
+msgid "Could not find update match for %s"
+msgstr "不能找到和 %s 匹配的升级"
+
+msgid "Could not open RPM database for reading. Perhaps it is already in use?"
+msgstr "不能以读的方式打开RPM数据库,或许是它已经在被用?"
+
+msgid "Could not perform checksum"
+msgstr "无法执行校验和"
+
+msgid "Damaged Header %s"
+msgstr "损坏的头文件 %s"
+
+msgid "Dec"
+msgstr "Dec"
+
+msgid "Dependency Installed"
+msgstr "依赖安装"
+
+msgid "Dependency Process ending"
+msgstr "依赖进程完成中"
+
+msgid "Dependency Removed"
+msgstr "依赖删除"
+
+msgid "Dependency Updated"
+msgstr "依赖升级"
+
+msgid "Description: "
+msgstr "升级:"
+
+msgid "Determine which package provides the given dependency"
+msgstr "决定哪个包提供了给定的依赖"
+
+msgid "Discarding non-comparable pkg %s.%s"
+msgstr " 丢弃无对照的包%s.%s"
+
+msgid "Disk Requirements:\n"
+msgstr "磁盘要求:\n"
+
+msgid "Display a helpful usage message"
+msgstr "显示帮助用法信息"
+
+msgid "Display details about a package group"
+msgstr "显示关于包组的细节"
+
+msgid "Display details about a package or group of packages"
+msgstr "显示关于包或一组包的细节信息"
+
+msgid "Display the configured software repositories"
+msgstr "显示软件仓库的配置"
+
+msgid "Done"
+msgstr "完成"
+
+msgid "Downloading Packages:"
+msgstr "下载软件包:"
+
+msgid "ERROR with rpm_check_debug vs depsolve:"
+msgstr "错误 rpm_check_debug 和 depsolve:"
+
+msgid "Epoch      : %s"
+msgstr "Epoch      : %s"
+
+msgid "Erased"
+msgstr "已删除"
+
+msgid "Erased: %s"
+msgstr "已删除: %s"
+
+msgid "Erasing"
+msgstr "正在删除"
+
+msgid "Error Downloading Packages:\n"
+msgstr "下载包错误:\n"
+
+msgid ""
+"Error Summary\n"
+"-------------\n"
+msgstr ""
+"错误的语法\n"
+"-------------\n"
+
+msgid "Error opening rpm %s - error %s"
+msgstr "打开 RPM %s 错误 - 错误 %s"
+
+msgid "Error: %s"
+msgstr "错误: %s"
+
+msgid "Error: Need a group or list of groups"
+msgstr "错误:需要组或组的列表"
+
+msgid "Error: Need an item to match"
+msgstr "错误:需要细微的匹配"
+
+msgid "Error: Need to pass a list of pkgs to %s"
+msgstr "错误: 需要传输在列表的包到%s"
+
+msgid "Error: clean requires an option: %s"
+msgstr "Error: clean requires an option: %s"
+
+msgid "Error: invalid clean argument: %r"
+msgstr "Error: invalid clean argument: %r"
+
+msgid "Error: invalid output state: %s for %s"
+msgstr "Error: invalid output state: %s for %s"
+
+msgid "Error: more than one file given as argument to shell."
+msgstr "Error: more than one file given as argument to shell."
+
+msgid "Errors were encountered while downloading packages."
+msgstr "Errors were encountered while downloading packages."
+
+msgid "Examining %s: %s"
+msgstr " 诊断 %s: %s"
+
+msgid "Excluding %s"
+msgstr "不包括 %s"
+
+msgid "Excluding Packages from %s"
+msgstr "在 %s 中排除的包"
+
+msgid "Excluding Packages in global exclude list"
+msgstr "不包适包在全局的排除的列表中"
+
+msgid "Existing lock %s: another copy is running as pid %s."
+msgstr "锁已被用 %s:  另外的一个复制正在运行在 PID为 %s."
+
+msgid "Exiting on user Command"
+msgstr "在用户的命令下退出"
+
+msgid "Extra Packages"
+msgstr "扩展的包"
+
+msgid "Failed to add groups file for repository: %s - %s"
+msgstr "为仓库添加组失败: %s - %s"
+
+msgid "Failed to remove transaction file %s"
+msgstr "移除处理文件%s 失败"
+
+msgid "Failure finding best provider of %s for %s, exceeded maximum loop length"
+msgstr "Failure finding best provider of %s for %s, exceeded maximum loop length"
+
+msgid "Feb"
+msgstr "二月"
+
+msgid "File %s given as argument to shell does not exist."
+msgstr "File %s given as argument to shell does not exist."
+
+msgid "Filename passed to shell: %s"
+msgstr "Filename passed to shell: %s"
+
+msgid "Find what package provides the given value"
+msgstr "Find what package provides the given value"
+
+msgid "Finding dependencies: "
+msgstr "找到依赖:"
+
+msgid "Finished"
+msgstr "完成"
+
+msgid "Finished Transaction Test"
+msgstr "传输测试完成"
+
+msgid "GPG key at %s (0x%s) is already installed"
+msgstr "GPG密钥在 %s (0x%s) 已经安装"
+
+msgid "GPG key parsing failed: "
+msgstr "分析GPG密钥失败: "
+
+msgid "GPG key retrieval failed: "
+msgstr "GPG密钥修复失败:"
+
+msgid "Generate the metadata cache"
+msgstr "生成原数据缓存"
+
+msgid "Getting group metadata"
+msgstr "获得组元数据"
+
+msgid "Got an empty Header, something has gone wrong"
+msgstr "得到空的头文件,有错误发生"
+
+msgid "Header cannot be opened or does not match %s, %s."
+msgstr "Header 不能打开或对 %s, %s不匹配."
+
+msgid "Header is not complete."
+msgstr "Header 不是完整的."
+
+msgid "Header not in local cache and caching-only mode enabled. Cannot download %s"
+msgstr "Header并不在本地缓存而且caching-only 模式被激活。不能下载 %s"
+
+msgid "Import of key(s) didn't help, wrong key(s)?"
+msgstr "导入密钥时没有求助,错误的密钥?"
+
+msgid "Importing GPG key 0x%s \"%s\" from %s"
+msgstr "导入GPG密钥 0x%s \"%s\" ,来自 %s"
+
+msgid "Importing additional filelist information"
+msgstr "正在导入额外的文件列表信息"
+
+msgid "Install a local RPM"
+msgstr "安装本地 RPM"
+
+msgid "Install a package or packages on your system"
+msgstr "安装一个或多个软件包在你的系统"
+
+msgid "Install the packages in a group on your system"
+msgstr "从组里安装软件包到你的系统"
+
+msgid "Installed"
+msgstr "已安装"
+
+msgid "Installed Groups:"
+msgstr "已安装组:"
+
+msgid "Installed Packages"
+msgstr "已经安装的包"
+
+msgid "Installing"
+msgstr "正在安装"
+
+msgid "Installing for dependencies"
+msgstr "为依赖而安装"
+
+msgid "Insufficient space in download directory %s to download"
+msgstr "目录 %s没有足够的空间下载文件"
+
+msgid "Invalid tsflag in config file: %s"
+msgstr "配置文件: %s中的tsflag是无效的"
+
+msgid "Invalid version flag"
+msgstr "无效的版本标志"
+
+msgid "Invalid versioned dependency string, try quoting it."
+msgstr "无效的依赖字符串,尝试重新引用."
+
+msgid "Is this ok [y/N]: "
+msgstr "确定是这样吗? [y/N]: "
+
+msgid "Jan"
+msgstr "一月"
+
+msgid "Jul"
+msgstr "Jul"
+
+msgid "Jun"
+msgstr "Jun"
+
+msgid "Keeping included package %s"
+msgstr "保持已包含的包 %s"
+
+msgid "Key import failed (code %d)"
+msgstr "导入密钥失败 (代号 %d)"
+
+msgid "Key imported successfully"
+msgstr "导入密钥成功"
+
+msgid "License    : %s"
+msgstr "许可证    : %s"
+
+msgid "List a package or groups of packages"
+msgstr "列出一个包或某组的包"
+
+msgid "List a package's dependencies"
+msgstr "列出包依赖相关"
+
+msgid "List available package groups"
+msgstr "列出当前的组"
+
+msgid "Loaded plugins: "
+msgstr "载入插件: "
+
+msgid "Loading \"%s\" plugin"
+msgstr "载入 \"%s\" 插件"
+
+msgid "Making cache files for all metadata files."
+msgstr "将所有的元数据文件生成缓存文件."
+
+msgid "Mar"
+msgstr "Mar"
+
+msgid "Marking %s as an update to %s"
+msgstr "标志 %s 将被更新为 %s"
+
+msgid "Marking %s to be installed"
+msgstr "标志 %s 将被安装"
+
+msgid "Matched %s to require for %s"
+msgstr "标志%s 要求 %s"
+
+msgid "Matched from:"
+msgstr "匹配来自于:"
+
+msgid "Matching packages for package list to user args"
+msgstr "从用户的包列表中匹配包"
+
+msgid "May"
+msgstr "Mai"
+
+msgid "Member: %s"
+msgstr "成员: %s"
+
+msgid "Metadata Cache Created"
+msgstr "原数据缓存已建立"
+
+msgid "Missing Dependency: %s is needed by package %s"
+msgstr "丢失的依赖相关: %s 被包 %s 所需要"
+
+msgid "Mode for pkg providing %s: %s"
+msgstr "Mode for pkg providing %s: %s"
+
+msgid "Mode is %s for provider of %s: %s"
+msgstr "Mode is %s for provider of %s: %s"
+
+msgid "More than one identical match in sack for %s"
+msgstr "More than one identical match in sack for %s"
+
+msgid "Name       : %s"
+msgstr "名称       : %s"
+
+msgid "Needed Require has already been looked up, cheating"
+msgstr "Needed Require has already been looked up, cheating"
+
+msgid "Needed Require is not a package name. Looking up: %s"
+msgstr "Needed Require is not a package name. Looking up: %s"
+
+msgid "No Group named %s exists"
+msgstr "没有发现组 %s "
+
+msgid "No Groups Available in any repository"
+msgstr "在现有的仓库中没有组可被提供"
+
+msgid "No Groups on which to run command"
+msgstr "没有组可以运行的命令"
+
+msgid "No Match for argument: %s"
+msgstr "没有匹配的参数: %s"
+
+msgid "No Matches found"
+msgstr "没有匹配发现"
+
+msgid "No Package Found for %s"
+msgstr "没有发现包 %s"
+
+msgid "No Package found for %s"
+msgstr "没有发现包 %s"
+
+msgid "No Packages Provided"
+msgstr "没有可提供的包"
+
+msgid "No Packages marked for Update"
+msgstr "没有包标志为升级"
+
+msgid "No Packages marked for removal"
+msgstr "没有包标志为删除"
+
+msgid "No argument to shell"
+msgstr "没有参数提供给shell"
+
+msgid "No group named %s exists"
+msgstr "没有组名为 %s "
+
+msgid "No header - huh?"
+msgstr "没有头文件--:)?"
+
+msgid "No help available for %s"
+msgstr "没有关于 %s 的帮助"
+
+msgid "No matching Packages to list"
+msgstr "列表中没有匹配的包"
+
+msgid "No other %s installed, adding to list for potential install"
+msgstr "No other %s installed, adding to list for 潜在的install"
+
+msgid "No package %s available."
+msgstr "包 %s 不可提供."
+
+msgid "No package matched to remove"
+msgstr "没有匹配的包删除"
+
+msgid "No package named %s available to be installed"
+msgstr "没有名称为 %s 包可供安装"
+
+msgid "No package(s) available to install"
+msgstr "没有包可供安装."
+
+msgid "No packages in any requested group available to install or update"
+msgstr "没有包在所要求的组中可提供安装或升级"
+
+msgid "No packages to remove from groups"
+msgstr "No packages to remove from groups"
+
+msgid "No plugin match for: %s"
+msgstr "没有插件可匹配: %s"
+
+msgid "Not Updating Package that is already obsoleted: %s.%s %s:%s-%s"
+msgstr "不可更新早已被废弃的包: %s.%s %s:%s-%s"
+
+msgid "Not installing key"
+msgstr "没有安装密钥"
+
+msgid "Nothing matches %s.%s %s:%s-%s from update"
+msgstr "无法匹配  %s.%s %s:%s-%s 从更新中"
+
+msgid "Nothing specified to install"
+msgstr "没有指定安装"
+
+msgid "Nothing to do"
+msgstr "无事可做"
+
+msgid "Nov"
+msgstr "Nov"
+
+msgid "Obsoleted"
+msgstr "已废弃"
+
+msgid "Obsoleting Packages"
+msgstr "废弃中的包"
+
+msgid "Oct"
+msgstr "十月"
+
+msgid "Options Error: %s"
+msgstr "属性错误: %s"
+
+msgid "PACKAGE..."
+msgstr "包..."
+
+msgid "Package"
+msgstr "包"
+
+msgid "Package %s already installed and latest version"
+msgstr "包 %s 已安装并且是最新版本"
+
+msgid "Package %s is allowed multiple installs, skipping"
+msgstr "包 %s 被允许多方式安装,忽略"
+
+msgid "Package %s is already installed, skipping"
+msgstr "包 %s 早已安装,忽略"
+
+msgid "Package %s is not signed"
+msgstr "包 %s 无签名认证"
+
+msgid "Package %s not installed, cannot update it. Run yum install to install it instead."
+msgstr "包 %s 没有安装, 不能安装。请适用yum install 安装它。"
+
+msgid "Package Object was not a package object instance"
+msgstr "Package Object was not a package object instance"
+
+msgid "Package does not match checksum"
+msgstr "包不匹配校验结果"
+
+msgid "Package does not match intended download"
+msgstr "Package does not match intended download."
+
+msgid "Package is already obsoleted: %s.%s %s:%s-%s"
+msgstr "包已经废弃: %s.%s %s:%s-%s"
+
+msgid "Package matching %s already installed. Checking for update."
+msgstr "匹配包 %s 已经安装. 检查更新."
+
+msgid "Package tuple %s could not be found in packagesack"
+msgstr "包元组 %s 不能在packagesack中发现"
+
+msgid "Package(s) to install"
+msgstr "包将安装"
+
+msgid "Package: %s  - already in transaction set"
+msgstr "安装包: %s - 事务处理已设置"
+
+msgid "Parsing package install arguments"
+msgstr "分析安装参数的语法"
+
+msgid "Please report this error in bugzilla"
+msgstr "请报告这个错误给 Bugzilla"
+
+msgid "Plugin \"%s\" doesn't specify required API version"
+msgstr "Plugin \"%s\" 没有指定必要的API版本"
+
+msgid "Plugin \"%s\" requires API %s. Supported API is %s."
+msgstr "Plugin \"%s\" 需要 API %s. 支持的 API 为 %s."
+
+msgid "Potential Provider: %s"
+msgstr " 潜在的提供者: %s"
+
+msgid "Potential match for %s from %s"
+msgstr "Potential match for %s from %s"
+
+msgid "Potential resolving package %s has newer instance in ts."
+msgstr "Potential resolving package %s has newer instance in ts."
+
+msgid "Potential resolving package %s has newer instance installed."
+msgstr "Potential resolving package %s has newer instance installed."
+
+msgid "Problem in reinstall: no package matched to install"
+msgstr "Problem in reinstall: no package matched to install"
+
+msgid "Problem in reinstall: no package matched to remove"
+msgstr "Problem in reinstall: no package matched to remove"
+
+msgid "Problem opening package %s"
+msgstr "打开包 %s 出现问题"
+
+msgid "Provides-match: %s"
+msgstr "Provides-match: %s"
+
+msgid "Public key for %s is not installed"
+msgstr "给 %s 的公钥没有安装"
+
+msgid "Public key for %s is not trusted"
+msgstr "给 %s 的公钥不可信任"
+
+msgid "RPM %s fails md5 check"
+msgstr "RPM %s md5码校验失败"
+
+msgid "Reading Local RPMDB"
+msgstr "读入本地RPMDB"
+
+msgid "Reading repository metadata in from local files"
+msgstr "从本地文件读入仓库元数据"
+
+msgid "Recently Added Packages"
+msgstr "近期添加的包"
+
+msgid "Reducing %s to included packages only"
+msgstr "减少 %s 所仅包含的包"
+
+msgid ""
+"Refusing to automatically import keys when running unattended.\n"
+"Use \"-y\" to override."
+msgstr ""
+"当运行unattended时拒绝自动导入密钥.\n"
+"用 \"-y\" 来覆盖"
+
+msgid "Release    : %s"
+msgstr "发行    : %s"
+
+msgid "Remove a package or packages from your system"
+msgstr "移除一个或多个包从你的系统"
+
+msgid "Remove cached data"
+msgstr "删除缓存数据"
+
+msgid "Remove the packages in a group from your system"
+msgstr "在一个组中移除包从您的系统"
+
+msgid "Removed"
+msgstr "已删除"
+
+msgid "Removing"
+msgstr "正在删除"
+
+msgid "Removing Package %s"
+msgstr "正在删除包 %s"
+
+msgid "Removing for dependencies"
+msgstr "为依赖移除"
+
+msgid "Removing unmatched package %s"
+msgstr "移除不匹配的包: %s"
+
+msgid "Repackage"
+msgstr "重新打包"
+
+msgid "Replaced"
+msgstr "替代"
+
+msgid "Repo       : %s"
+msgstr "Repo       : %s"
+
+msgid "Repository"
+msgstr "仓库"
+
+msgid "Repository %r is missing name in configuration, using id"
+msgstr "仓库 %r 丢失了名字在配置文件中,用id代替"
+
+msgid "Resolving Dependencies"
+msgstr "解决依赖相关"
+
+msgid "Restarting Loop"
+msgstr "重新启动环回"
+
+msgid "Retrieving GPG key from %s"
+msgstr "从 %s 中恢复GPG密钥"
+
+msgid "Run an interactive yum shell"
+msgstr "运行交互式的yum shell"
+
+msgid "Running Transaction"
+msgstr "运行事务处理"
+
+msgid "Running Transaction Test"
+msgstr "运行测试事务处理"
+
+msgid "Running rpm_check_debug"
+msgstr "运行 rpm_check_debug "
+
+msgid "Same: best %s == po: %s"
+msgstr "Same: best %s == po: %s"
+
+msgid "Search package details for the given string"
+msgstr "查找包细节居给定的字符串"
+
+msgid "Searching %d packages"
+msgstr "查询 %d 个包"
+
+msgid "Searching Packages for Dependency:"
+msgstr "为依赖相关查找包:"
+
+msgid "Searching Packages: "
+msgstr "查询包:"
+
+msgid "Searching pkgSack for dep: %s"
+msgstr "查找pkgSack 为依赖: %s"
+
+msgid "Sep"
+msgstr "Sep"
+
+msgid "Setting up Group Process"
+msgstr "设置组进程"
+
+msgid "Setting up Install Process"
+msgstr "设置安装进程"
+
+msgid "Setting up Local Package Process"
+msgstr "设置本地包进程"
+
+msgid "Setting up Package Sacks"
+msgstr "设置包麻袋"
+
+msgid "Setting up Reinstall Process"
+msgstr "设置重新安装进程"
+
+msgid "Setting up Remove Process"
+msgstr "设置删除进程"
+
+msgid "Setting up TransactionSets before config class is up"
+msgstr "在config类启用之前设置事务处理"
+
+msgid "Setting up Update Process"
+msgstr "设置更新进程"
+
+msgid "Setting up Upgrade Process"
+msgstr "设置升级进程"
+
+msgid "Setting up Yum Shell"
+msgstr "设置Yum-Shell yum交互式环境"
+
+msgid "Setting up repositories"
+msgstr "设置仓库"
+
+msgid "Size"
+msgstr "大小"
+
+msgid "Size       : %s"
+msgstr "大小    : %s"
+
+msgid "Skip-broken round %i"
+msgstr "Skip-broken round %i"
+
+msgid "Skip-broken took %i rounds "
+msgstr "Skip-broken took %i rounds"
+
+msgid "Success - deps resolved"
+msgstr "成功 --依赖性解决"
+
+msgid "Success - empty transaction"
+msgstr "成功 --空的事务处理"
+
+msgid "Summary    : "
+msgstr "语法    : "
+
+msgid "TSINFO: %s package requiring %s marked as erase"
+msgstr "TSINFO: %s package requiring %s marked as erase"
+
+msgid "TSINFO: Marking %s as install for %s"
+msgstr "TSINFO: Marking %s as install for %s"
+
+msgid "TSINFO: Marking %s as update for %s"
+msgstr "TSINFO: Marking %s as update for %s"
+
+msgid "TSINFO: Obsoleting %s with %s to resolve dep."
+msgstr "TSINFO: Obsoleting %s with %s to resolve dep."
+
+msgid "TSINFO: Updating %s to resolve dep."
+msgstr "TSINFO: Updating %s to resolve dep."
+
+msgid "Test Transaction Errors: "
+msgstr "测试事务处理错误"
+
+msgid ""
+"The GPG keys listed for the \"%s\" repository are already installed but they are not correct for this package.\n"
+"Check that the correct key URLs are configured for this repository."
+msgstr ""
+"The GPG keys listed for the \"%s\" repository are already installed but they are not correct for this package.\n"
+"Check that the correct key URLs are configured for this repository."
+
+msgid "There was an error calculating total download size"
+msgstr "There was an error calculating total download size"
+
+msgid "This may take a while depending on the speed of this computer"
+msgstr "这会占用一段时间,具体将取决于这台计算机的速度"
+
+msgid "Total download size: %s"
+msgstr "总共下载大小: %s"
+
+msgid "Total size: %s"
+msgstr "总大小: %s"
+
+msgid "Transaction Check Error:\n"
+msgstr "处理检查错误:\n"
+
+msgid "Transaction Test Succeeded"
+msgstr "事务处理测试成功"
+
+msgid "Trying other mirror."
+msgstr "尝试其他镜像."
+
+msgid "Trying to run the transaction but nothing to do. Exiting."
+msgstr "尝试运行事务处理但是什么也做不成,退出."
+
+msgid "Two or more plugins with the name \"%s\" exist in the plugin search path"
+msgstr "Two or more plugins with the name \"%s\" exist in the plugin search path"
+
+msgid "URL        : %s"
+msgstr "统一资源定位符       : %s"
+
+msgid "Unable to check if PID %s is active"
+msgstr "不能检查到PID %s是否激活"
+
+msgid "Unable to find a suitable mirror."
+msgstr "不能发现合适的镜像."
+
+msgid "Unable to find configuration file for plugin %s"
+msgstr "不能找到插件 %s 的配置文件 "
+
+msgid "Unknown Error(s): Exit Code: %d:"
+msgstr "莫名的错误:  退出代码为: %d:"
+
+msgid "Unresolvable requirement %s for %s"
+msgstr "没有解决的需求 %s 为 %s"
+
+msgid "Update a package or packages on your system"
+msgstr "更新一个或多个包在你的系统"
+
+msgid "Update packages taking obsoletes into account"
+msgstr "Update packages taking obsoletes into account"
+
+msgid "Updated"
+msgstr "更新完毕"
+
+msgid "Updated Packages"
+msgstr "更新过的包"
+
+msgid "Updating"
+msgstr "正在升级"
+
+msgid "Updating Everything"
+msgstr "全部升级"
+
+msgid "Updating for dependencies"
+msgstr "更新依赖性"
+
+msgid "Version"
+msgstr "版本"
+
+msgid "Version    : %s"
+msgstr "版本    : %s"
+
+msgid "Warning: Group %s does not exist."
+msgstr "提示: 组 %s 不存在."
+
+msgid "Warning: No matches found for: %s"
+msgstr "提示 : 没有发现和: %s 匹配"
+
+msgid "You need to be root to perform this command."
+msgstr "你需要root身份执行此命令."
+
+msgid "You need to give some command"
+msgstr "你需要给出命令"
+
+msgid "[PACKAGE...]"
+msgstr "[包 ...]"
+
+msgid "answer yes for all questions"
+msgstr "回答所有的问题为是"
+
+msgid "be tolerant of errors"
+msgstr "be tolerant of errors"
+
+msgid "best %s obsoletes po: %s"
+msgstr "best %s obsoletes po: %s"
+
+msgid "best %s shares a sourcerpm with %s"
+msgstr "best %s shares a sourcerpm with %s"
+
+msgid "bestpkg %s shares more of the name prefix with %s"
+msgstr "bestpkg %s shares more of the name prefix with %s"
+
+msgid "better arch in po %s"
+msgstr "better arch in po %s"
+
+msgid "config file location"
+msgstr "config file location"
+
+msgid "debugging output level"
+msgstr "调试输出级别"
+
+msgid "disable Yum plugins"
+msgstr "禁掉yum插件"
+
+msgid "disable exclude from main, for a repo or for everything"
+msgstr "disable exclude from main, for a repo or for everything"
+
+msgid "disable gpg signature checking"
+msgstr "禁掉GPG验证检查"
+
+msgid "disable one or more repositories (wildcards allowed)"
+msgstr "禁掉一个或多个仓库(支持通配符)"
+
+msgid "disable plugins by name"
+msgstr "用名称禁掉插件"
+
+msgid "disabled"
+msgstr "禁掉"
+
+msgid "doConfigSetup() will go away in a future version of Yum.\n"
+msgstr "doConfigSetup() 将在未来的YUM版本中消失.\n"
+
+msgid "doGroupSetup() will go away in a future version of Yum.\n"
+msgstr "doGroupSetup()将在未来的YUM版本中消失.\n"
+
+msgid "doRepoSetup() will go away in a future version of Yum.\n"
+msgstr "doRepoSetup() 将在未来的YUM版本中消失.\n"
+
+msgid "doRpmDBSetup() will go away in a future version of Yum.\n"
+msgstr "doRpmDBSetup() 将在未来的YUM版本中消失.\n"
+
+msgid "doSackSetup() will go away in a future version of Yum.\n"
+msgstr "doSackSetup() 将在未来的YUM版本中消失.\n"
+
+msgid "doTsSetup() will go away in a future version of Yum.\n"
+msgstr "doTsSetup() 将在未来的YUM版本中消失.\n"
+
+msgid "doUpdateSetup() will go away in a future version of Yum.\n"
+msgstr "doUpdateSetup() wird verschwinden in zukünfigen Version von Yum.\n"
+
+msgid "enable obsoletes processing during updates"
+msgstr "enable obsoletes processing during updates"
+
+msgid "enable one or more repositories (wildcards allowed)"
+msgstr "激活一个或多个仓库(支持通配符)"
+
+msgid "enabled"
+msgstr "激活"
+
+msgid "erased"
+msgstr "删除"
+
+msgid "error output level"
+msgstr "错误输出级别"
+
+msgid "exclude package(s) by name or glob"
+msgstr "在名称或glob不包含包。"
+
+msgid "excluding for cost: %s from %s"
+msgstr "excluding for cost: %s from %s"
+
+msgid "installed"
+msgstr "已安装"
+
+msgid "looking for %s as a requirement of %s"
+msgstr "查找 %s 在要求的 %s 下"
+
+msgid "maximum command wait time"
+msgstr "最大化的命令等待时间"
+
+msgid "n"
+msgstr "n"
+
+msgid "no"
+msgstr "否"
+
+msgid "obsoleted"
+msgstr "已废弃"
+
+msgid "package %s was not marked in group %s"
+msgstr "包 %s 在组 %s中没有被标志"
+
+msgid "package fails checksum but caching is enabled for %s"
+msgstr "包校验失败但是缓存已为 %s激活"
+
+msgid "package: %s"
+msgstr "包: %s"
+
+msgid "plugins already initialised"
+msgstr "插件已经initialised"
+
+msgid "po %s has a shorter name than best %s"
+msgstr "po %s has a shorter name than best %s"
+
+msgid "po %s obsoletes best: %s"
+msgstr "po %s obsoletes best: %s"
+
+msgid "po %s shares a sourcerpm with %s"
+msgstr "po %s shares a sourcerpm with %s"
+
+msgid "po %s shares more of the name prefix with %s"
+msgstr "po %s shares more of the name prefix with %s"
+
+msgid "quiet operation"
+msgstr "安静的操作"
+
+msgid "registration of commands not supported"
+msgstr "注册命令不支持"
+
+msgid "reinstall a package"
+msgstr "重新安装一个包"
+
+msgid "repo id"
+msgstr "Repo-号"
+
+msgid "repo name"
+msgstr "Repo-名称:"
+
+msgid "repo object for repo %s lacks a _resetSack method\n"
+msgstr "repo对象for repo  %s 缺少 a _resetSack 方法\n"
+
+msgid "run entirely from cache, don't update cache"
+msgstr "从缓冲中运行,而不是升级缓存"
+
+msgid "searchPackages() will go away in a future version of Yum.                      Use searchGenerator() instead. \n"
+msgstr "searchPackages() 将在YUM未来的版本中消失.                     用 searchGenerator()替代. \n"
+
+msgid "searching in file entries"
+msgstr "searching in file entries"
+
+msgid "searching in provides entries"
+msgstr "在可提供的入口查询"
+
+msgid "searching package %s"
+msgstr "查询包: %s"
+
+msgid "set install root"
+msgstr "设置为root安装"
+
+msgid "show Yum version and exit"
+msgstr "显示 YUM版本信息并退出"
+
+msgid "show duplicates, in repos, in list/search commands"
+msgstr "显示复制, 在repo,list/search命令下"
+
+msgid "skip packages with depsolving problems"
+msgstr "忽略包的依赖问题"
+
+msgid "status"
+msgstr "状态"
+
+msgid "therefore this repo cannot be reset.\n"
+msgstr "因此此repo不能复位.\n"
+
+msgid "updated"
+msgstr "升级"
+
+msgid "user interrupt"
+msgstr "用户中断"
+
+msgid "using local copy of %s"
+msgstr "在本地复制 %s"
+
+msgid "y"
+msgstr "Y"
+
+msgid "yes"
+msgstr "是"
+
commit c0775d5862db6cf5a2db38e5816d205a10a9f0ea
Author: tla at dk.ibm.com <tla at naboo.local>
Date:   Wed Jul 16 15:59:13 2008 +0200

    Added Catalan translation by Xavier Conde

diff --git a/po/ca.po b/po/ca.po
new file mode 100644
index 0000000..0e21ad5
--- /dev/null
+++ b/po/ca.po
@@ -0,0 +1,1933 @@
+# Catalan translations for yum package.
+# Copyright (C) 2008 Red Hat, Inc.
+# This file is distributed under the same license as the
+#  yum package.
+#
+# Josep Maria Brunetti Fernández <josepb at gmail.com>, 2008
+#
+# This file is translated according to the glossary and style guide of
+#   Softcatalà. If you plan to modify this file, please read first the page
+#   of the Catalan translation team for the Fedora project at:
+#   http://www.softcatala.org/projectes/fedora/
+#   and contact the previous translator
+#
+# Aquest fitxer s'ha de traduir d'acord amb el recull de termes i la guia
+#   d'estil de Softcatalà. Si voleu modificar aquest fitxer, llegiu si
+#   us plau la pàgina de catalanització del projecte Fedora a:
+#   http://www.softcatala.org/projectes/fedora/
+#   i contacteu l'anterior traductor/a.
+msgid ""
+msgstr ""
+"Project-Id-Version: yum\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2008-03-25 11:29+0100\n"
+"PO-Revision-Date: 2008-06-26 19:39+0200\n"
+"Last-Translator: Josep Maria Brunetti Fernández <josepb at gmail.com>\n"
+"Language-Team: Language-Team: Catalan <fedora at softcatala.net>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=n != 1;"
+
+#: ../callback.py:48 ../output.py:512
+msgid "Updating"
+msgstr "S'està actualitzant"
+
+#: ../callback.py:49
+msgid "Erasing"
+msgstr "S'està esborrant"
+
+#: ../callback.py:50 ../callback.py:51 ../callback.py:53 ../output.py:511
+msgid "Installing"
+msgstr "S'està instal·lant"
+
+#: ../callback.py:52 ../callback.py:58
+msgid "Obsoleted"
+msgstr "Obsolet"
+
+#: ../callback.py:54 ../output.py:558
+msgid "Updated"
+msgstr "Actualitzat"
+
+#: ../callback.py:55
+msgid "Erased"
+msgstr "Esborrat"
+
+#: ../callback.py:56 ../callback.py:57 ../callback.py:59 ../output.py:556
+msgid "Installed"
+msgstr "Instal·lat"
+
+#: ../callback.py:130
+msgid "No header - huh?"
+msgstr "No hi ha capçalera"
+
+#: ../callback.py:168
+msgid "Repackage"
+msgstr "Reempaqueta"
+
+#: ../callback.py:189
+#, python-format
+msgid "Error: invalid output state: %s for %s"
+msgstr "Error: estat de sortida invàlid: %s per a %s"
+
+#: ../callback.py:212
+#, python-format
+msgid "Erased: %s"
+msgstr "Esborrat: %s"
+
+#: ../callback.py:217 ../output.py:513
+msgid "Removing"
+msgstr "S'està esborrant"
+
+#: ../callback.py:219
+msgid "Cleanup"
+msgstr "Neteja"
+
+#: ../cli.py:103
+#, python-format
+msgid "Command \"%s\" already defined"
+msgstr "L'ordre «%s» ja està definida"
+
+#: ../cli.py:115
+msgid "Setting up repositories"
+msgstr "Configurant repositoris"
+
+#: ../cli.py:126
+msgid "Reading repository metadata in from local files"
+msgstr "S'estan llegint les metadades de repositoris des de fitxers locals"
+
+#: ../cli.py:183 ../utils.py:72
+#, python-format
+msgid "Config Error: %s"
+msgstr "Error de configuració: %s"
+
+#: ../cli.py:186 ../cli.py:1068 ../utils.py:75
+#, python-format
+msgid "Options Error: %s"
+msgstr "Error d'opcions: %s"
+
+#: ../cli.py:229
+msgid "You need to give some command"
+msgstr "Cal que doneu alguna ordre"
+
+#: ../cli.py:271
+msgid "Disk Requirements:\n"
+msgstr "Requeriments de disc:\n"
+
+#: ../cli.py:273
+#, python-format
+msgid "  At least %dMB needed on the %s filesystem.\n"
+msgstr "  Es necessiten almenys %dMB al sistema de fitxers %s.\n"
+
+#. TODO: simplify the dependency errors?
+#. Fixup the summary
+#: ../cli.py:278
+msgid ""
+"Error Summary\n"
+"-------------\n"
+msgstr "Resum d'errors\n"
+"-------------\n"
+
+#: ../cli.py:317
+msgid "Trying to run the transaction but nothing to do. Exiting."
+msgstr "S'ha intentat executar la transacció però no hi ha res a fer. S'està sortint."
+
+#: ../cli.py:347
+msgid "Exiting on user Command"
+msgstr "S'està sortint de l'ordre de l'usuari"
+
+#: ../cli.py:351
+msgid "Downloading Packages:"
+msgstr "S'estan descarregant els següents paquets:"
+
+#: ../cli.py:356
+msgid "Error Downloading Packages:\n"
+msgstr "S'ha produït un error descarregant els següents paquets:\n"
+
+#: ../cli.py:370 ../yum/__init__.py:2746
+msgid "Running rpm_check_debug"
+msgstr "S'està executant rpm_check_debug"
+
+#: ../cli.py:373 ../yum/__init__.py:2749
+msgid "ERROR with rpm_check_debug vs depsolve:"
+msgstr "ERROR amb rpm_check_debug vs depsolve:"
+
+#: ../cli.py:377 ../yum/__init__.py:2751
+msgid "Please report this error in bugzilla"
+msgstr "Siusplau, informeu d'aquest error al bugzilla"
+
+#: ../cli.py:383
+msgid "Running Transaction Test"
+msgstr "S'està executant la transacció de prova"
+
+#: ../cli.py:399
+msgid "Finished Transaction Test"
+msgstr "Ha acabat la transacció de prova"
+
+#: ../cli.py:401
+msgid "Transaction Check Error:\n"
+msgstr "S'ha produït un error en la transacció de prova:\n"
+
+#: ../cli.py:408
+msgid "Transaction Test Succeeded"
+msgstr "La transacció de prova ha acabat amb èxit"
+
+#: ../cli.py:429
+msgid "Running Transaction"
+msgstr "S'està executant la transacció"
+
+#: ../cli.py:459
+msgid ""
+"Refusing to automatically import keys when running unattended.\n"
+"Use \"-y\" to override."
+msgstr "No s'importaran automàticament les claus en una execució desatesa.\n"
+"Feu servir \"-y\" per a importar les claus."
+
+#: ../cli.py:491
+msgid "Parsing package install arguments"
+msgstr "S'estan analitzant els arguments del paquet a instal·lar"
+
+#: ../cli.py:501
+#, python-format
+msgid "No package %s available."
+msgstr "El paquet %s no està disponible"
+
+#: ../cli.py:505 ../cli.py:623 ../yumcommands.py:748
+msgid "Package(s) to install"
+msgstr "Paquets a instal·lar"
+
+#: ../cli.py:506 ../cli.py:624 ../yumcommands.py:146 ../yumcommands.py:749
+msgid "Nothing to do"
+msgstr "Res a fer"
+
+#: ../cli.py:536 ../yum/__init__.py:2232 ../yum/__init__.py:2311
+#: ../yum/__init__.py:2340
+#, python-format
+msgid "Not Updating Package that is already obsoleted: %s.%s %s:%s-%s"
+msgstr "No s'actualitzarà el paquet obsolet: %s.%s %s:%s-%s"
+
+#: ../cli.py:568
+#, python-format
+msgid "Could not find update match for %s"
+msgstr "No s'ha pogut trobar cap actualització per a %s"
+
+#: ../cli.py:580
+#, python-format
+msgid "%d packages marked for Update"
+msgstr "%d paquets marcats per a actualitzar"
+
+#: ../cli.py:583
+msgid "No Packages marked for Update"
+msgstr "No hi ha cap paquet marcat per a actualitzar"
+
+#: ../cli.py:599
+#, python-format
+msgid "%d packages marked for removal"
+msgstr "%d paquets marcats per a esborrar"
+
+#: ../cli.py:602
+msgid "No Packages marked for removal"
+msgstr "No hi ha cap paquet marcat per a esborrar"
+
+#: ../cli.py:614
+msgid "No Packages Provided"
+msgstr "No s'ha proporcionat cap paquet"
+
+#: ../cli.py:654
+msgid "Matching packages for package list to user args"
+msgstr "S'està comparant els paquets per a la llista de paquets amb els arguments de l'usuari"
+
+#: ../cli.py:701
+#, python-format
+msgid "Warning: No matches found for: %s"
+msgstr "Avís: no s'ha trobat cap coincidència per a: %s"
+
+#: ../cli.py:704
+msgid "No Matches found"
+msgstr "No s'ha trobat cap coincidència"
+
+#: ../cli.py:745
+#, python-format
+msgid "No Package Found for %s"
+msgstr "No s'ha trobat cap paquet per a %s"
+
+#: ../cli.py:757
+msgid "Cleaning up Everything"
+msgstr "S'està netejant tot"
+
+#: ../cli.py:771
+msgid "Cleaning up Headers"
+msgstr "S'estan netejant les capçaleres"
+
+#: ../cli.py:774
+msgid "Cleaning up Packages"
+msgstr "S'estan netejant els paquets"
+
+#: ../cli.py:777
+msgid "Cleaning up xml metadata"
+msgstr "S'estan netejant les metadades xml"
+
+#: ../cli.py:780
+msgid "Cleaning up database cache"
+msgstr "S'està netejant la memòria cau de la base de dades"
+
+#: ../cli.py:783
+msgid "Cleaning up expire-cache metadata"
+msgstr "S'està netejant la memòria cau de metadades que han vençut"
+
+#: ../cli.py:786
+msgid "Cleaning up plugins"
+msgstr "S'estan netejant les extensions"
+
+#: ../cli.py:807
+msgid "Installed Groups:"
+msgstr "Grups instal·lats:"
+
+#: ../cli.py:814
+msgid "Available Groups:"
+msgstr "Grups disponibles:"
+
+#: ../cli.py:820
+msgid "Done"
+msgstr "Fet"
+
+#: ../cli.py:829 ../cli.py:841 ../cli.py:847
+#, python-format
+msgid "Warning: Group %s does not exist."
+msgstr "Avís: El grup %s no existeix"
+
+#: ../cli.py:853
+msgid "No packages in any requested group available to install or update"
+msgstr "No hi ha cap paquet disponible per a instal·lar o actualitzar en els grups sol·licitats"
+
+#: ../cli.py:855
+#, python-format
+msgid "%d Package(s) to Install"
+msgstr "%d paquets a instal·lar"
+
+#: ../cli.py:865
+#, python-format
+msgid "No group named %s exists"
+msgstr "No existeix cap grup anomenat %s"
+
+#: ../cli.py:871
+msgid "No packages to remove from groups"
+msgstr "No hi ha cap paquet a esborrar dels grups"
+
+#: ../cli.py:873
+#, python-format
+msgid "%d Package(s) to remove"
+msgstr "%d paquets a esborrar"
+
+#: ../cli.py:915
+#, python-format
+msgid "Package %s is already installed, skipping"
+msgstr "El paquet %s ja està instal·lat, s'ometrà"
+
+#: ../cli.py:926
+#, python-format
+msgid "Discarding non-comparable pkg %s.%s"
+msgstr "S'està descartant el paquet no comparable %s.%s"
+
+#. we've not got any installed that match n or n+a
+#: ../cli.py:952
+#, python-format
+msgid "No other %s installed, adding to list for potential install"
+msgstr "No hi ha cap altre %s instal·lat, s'afegeix a la llista per a una possible instal·lació"
+
+#: ../cli.py:971
+#, python-format
+msgid "Command line error: %s"
+msgstr "Error en la línia d'ordres: %s"
+
+#: ../cli.py:1101
+msgid "be tolerant of errors"
+msgstr "sigues tolerant a errors"
+
+#: ../cli.py:1103
+msgid "run entirely from cache, don't update cache"
+msgstr "executa totalment des de la memòria cau, no actualitzis la memòria cau"
+
+#: ../cli.py:1105
+msgid "config file location"
+msgstr "ubicació del fitxer de configuració"
+
+#: ../cli.py:1107
+msgid "maximum command wait time"
+msgstr "temps màxim d'espera d'ordres"
+
+#: ../cli.py:1109
+msgid "debugging output level"
+msgstr "nivell de sortida de depuració"
+
+#: ../cli.py:1113
+msgid "show duplicates, in repos, in list/search commands"
+msgstr "mostra duplicats, en repositoris, en les ordres llista i cerca"
+
+#: ../cli.py:1115
+msgid "error output level"
+msgstr "error en el nivell de sortida"
+
+#: ../cli.py:1118
+msgid "quiet operation"
+msgstr "operació silenciosa"
+
+#: ../cli.py:1122
+msgid "answer yes for all questions"
+msgstr "respon sí a totes les preguntes"
+
+#: ../cli.py:1124
+msgid "show Yum version and exit"
+msgstr "mostra la versió de Yum i surt"
+
+#: ../cli.py:1125
+msgid "set install root"
+msgstr "estableix l'arrel de la instal·lació"
+
+#: ../cli.py:1129
+msgid "enable one or more repositories (wildcards allowed)"
+msgstr "habilita un o més repositoris (es permeten caràcters de reemplaçament)"
+
+#: ../cli.py:1133
+msgid "disable one or more repositories (wildcards allowed)"
+msgstr "deshabilita un o més repositoris (es permeten caràcters de reemplaçament)"
+
+#: ../cli.py:1136
+msgid "exclude package(s) by name or glob"
+msgstr "exclou els paquets per nom o expressió regular del glob"
+
+#: ../cli.py:1138
+msgid "disable exclude from main, for a repo or for everything"
+msgstr "deshabilita l'exclusió des de l'inici, per a un repositori o per a tot"
+
+#: ../cli.py:1141
+msgid "enable obsoletes processing during updates"
+msgstr "habilita el processament d'obsolets durant les actualitzacions"
+
+#: ../cli.py:1143
+msgid "disable Yum plugins"
+msgstr "deshabilita les extensions de Yum"
+
+#: ../cli.py:1145
+msgid "disable gpg signature checking"
+msgstr "deshabilita la comprobació de signatures gpg"
+
+#: ../cli.py:1147
+msgid "disable plugins by name"
+msgstr "deshabilita extensions per nom"
+
+#: ../cli.py:1150
+msgid "skip packages with depsolving problems"
+msgstr "omet paquets amb problemes de resolució de dependències"
+
+#: ../output.py:229
+msgid "Jan"
+msgstr "Gen"
+
+#: ../output.py:229
+msgid "Feb"
+msgstr "Feb"
+
+#: ../output.py:229
+msgid "Mar"
+msgstr "Mar"
+
+#: ../output.py:229
+msgid "Apr"
+msgstr "Abr"
+
+#: ../output.py:229
+msgid "May"
+msgstr "Mai"
+
+#: ../output.py:229
+msgid "Jun"
+msgstr "Jun"
+
+#: ../output.py:230
+msgid "Jul"
+msgstr "Jul"
+
+#: ../output.py:230
+msgid "Aug"
+msgstr "Ago"
+
+#: ../output.py:230
+msgid "Sep"
+msgstr "Set"
+
+#: ../output.py:230
+msgid "Oct"
+msgstr "Oct"
+
+#: ../output.py:230
+msgid "Nov"
+msgstr "Nov"
+
+#: ../output.py:230
+msgid "Dec"
+msgstr "Des"
+
+#: ../output.py:240
+msgid "Trying other mirror."
+msgstr "S'està intentant un altre servidor rèplica"
+
+#: ../output.py:293
+#, python-format
+msgid "Name       : %s"
+msgstr "Nom       : %s"
+
+#: ../output.py:294
+#, python-format
+msgid "Arch       : %s"
+msgstr "Arq       : %s"
+
+#: ../output.py:296
+#, python-format
+msgid "Epoch      : %s"
+msgstr "Època      : %s"
+
+#: ../output.py:297
+#, python-format
+msgid "Version    : %s"
+msgstr "Versió    : %s"
+
+#: ../output.py:298
+#, python-format
+msgid "Release    : %s"
+msgstr "Release    : %s"
+
+#: ../output.py:299
+#, python-format
+msgid "Size       : %s"
+msgstr "Mida       : %s"
+
+#: ../output.py:300
+#, python-format
+msgid "Repo       : %s"
+msgstr "Repo       : %s"
+
+#: ../output.py:302
+#, python-format
+msgid "Committer  : %s"
+msgstr "Desenvolupador  : %s"
+
+#: ../output.py:303
+msgid "Summary    : "
+msgstr "Resum    : "
+
+#: ../output.py:305
+#, python-format
+msgid "URL        : %s"
+msgstr "URL        : %s"
+
+#: ../output.py:306
+#, python-format
+msgid "License    : %s"
+msgstr "Llicència    : %s"
+
+#: ../output.py:307
+msgid "Description: "
+msgstr "Descripció: "
+
+#: ../output.py:351
+# REMEMBER to Translate [Y/N] to the current locale
+msgid "Is this ok [y/N]: "
+msgstr "És correcte [s/N]: "
+
+#: ../output.py:357 ../output.py:360
+msgid "y"
+msgstr "s"
+
+#: ../output.py:357
+msgid "n"
+msgstr "n"
+
+#: ../output.py:357 ../output.py:360
+msgid "yes"
+msgstr "sí"
+
+#: ../output.py:357
+msgid "no"
+msgstr "no"
+
+#: ../output.py:367
+#, python-format
+msgid ""
+"\n"
+"Group: %s"
+msgstr ""
+"\n"
+"Grup: %s"
+
+#: ../output.py:369
+#, python-format
+msgid " Description: %s"
+msgstr " Descripció: %s"
+
+#: ../output.py:371
+msgid " Mandatory Packages:"
+msgstr " Paquets obligatoris:"
+
+#: ../output.py:376
+msgid " Default Packages:"
+msgstr " Paquets per defecte:"
+
+#: ../output.py:381
+msgid " Optional Packages:"
+msgstr " Paquets opcionals:"
+
+#: ../output.py:386
+msgid " Conditional Packages:"
+msgstr " Paquets condicionals:"
+
+#: ../output.py:394
+#, python-format
+msgid "package: %s"
+msgstr "paquet: %s"
+
+#: ../output.py:396
+msgid "  No dependencies for this package"
+msgstr "  No hi ha dependències per a aquest paquet"
+
+#: ../output.py:401
+#, python-format
+msgid "  dependency: %s"
+msgstr "  dependència: %s"
+
+#: ../output.py:403
+msgid "   Unsatisfied dependency"
+msgstr "   Dependència insatisfeta"
+
+#: ../output.py:461
+msgid "Matched from:"
+msgstr "Coincidències amb:"
+
+#: ../output.py:487
+msgid "There was an error calculating total download size"
+msgstr "S'ha produït un error en calcular la mida total de la descàrrega"
+
+#: ../output.py:492
+#, python-format
+msgid "Total size: %s"
+msgstr "Mida total: %s"
+
+#: ../output.py:495
+#, python-format
+msgid "Total download size: %s"
+msgstr "Mida total de la descàrrega: %s"
+
+#: ../output.py:507
+msgid "Package"
+msgstr "Paquet"
+
+#: ../output.py:507
+msgid "Arch"
+msgstr "Arq"
+
+#: ../output.py:507
+msgid "Version"
+msgstr "Versió"
+
+#: ../output.py:507
+msgid "Repository"
+msgstr "Repositori"
+
+#: ../output.py:507
+msgid "Size"
+msgstr "Mida"
+
+#: ../output.py:514
+msgid "Installing for dependencies"
+msgstr "S'està instal·lant per dependències"
+
+#: ../output.py:515
+msgid "Updating for dependencies"
+msgstr "S'està actualitzant per dependències"
+
+#: ../output.py:516
+msgid "Removing for dependencies"
+msgstr "S'està esborrant per dependències"
+
+#: ../output.py:528
+#, python-format
+msgid ""
+"     replacing  %s.%s %s\n"
+"\n"
+msgstr ""
+"     s'està reemplaçant  %s.%s %s\n"
+"\n"
+
+#: ../output.py:536
+#, python-format
+msgid ""
+"\n"
+"Transaction Summary\n"
+"=============================================================================\n"
+"Install  %5.5s Package(s)         \n"
+"Update   %5.5s Package(s)         \n"
+"Remove   %5.5s Package(s)         \n"
+msgstr ""
+"\n"
+"Resum de transaccions\n"
+"=============================================================================\n"
+"Instal·la  %5.5s paquets\n"
+"Actualitza %5.5s paquets\n"
+"Esborra    %5.5s paquets\n"
+""
+
+#: ../output.py:554
+msgid "Removed"
+msgstr "Esborrat"
+
+#: ../output.py:555
+msgid "Dependency Removed"
+msgstr "Dependència esborrada"
+
+#: ../output.py:557
+msgid "Dependency Installed"
+msgstr "Dependència instal·lada"
+
+#: ../output.py:559
+msgid "Dependency Updated"
+msgstr "Dependència actualitzada"
+
+#: ../output.py:560
+msgid "Replaced"
+msgstr "Reemplaçat"
+
+#: ../output.py:618
+#, python-format
+msgid ""
+"\n"
+" Current download cancelled, %sinterrupt (ctrl-c) again%s within %s%s%s "
+"seconds to exit.\n"
+msgstr ""
+"\n"
+"S'ha cancel·lat la descàrrega actual, %sinterromp (crtl-c) de nou%s en %s%s%s "
+"segons per a sortir.\n"
+
+#: ../output.py:628
+msgid "user interrupt"
+msgstr "interrupció de l'usuari"
+
+#: ../output.py:639
+msgid "installed"
+msgstr "instal·lat"
+
+#: ../output.py:640
+msgid "updated"
+msgstr "actualitzat"
+
+#: ../output.py:641
+msgid "obsoleted"
+msgstr "obsolet"
+
+#: ../output.py:642
+msgid "erased"
+msgstr "esborrat"
+
+#: ../output.py:646
+#, python-format
+msgid "---> Package %s.%s %s:%s-%s set to be %s"
+msgstr "---> Paquet %s.%s %s:%s-%s passarà a ser %s"
+
+#: ../output.py:653
+msgid "--> Running transaction check"
+msgstr "--> S'està executant la transacció de prova"
+
+#: ../output.py:658
+msgid "--> Restarting Dependency Resolution with new changes."
+msgstr "--> Tornant a calcular la resolució de dependències amb els nous canvis."
+
+#: ../output.py:663
+msgid "--> Finished Dependency Resolution"
+msgstr "--> Ha finalitzat la resolució de dependències"
+
+#: ../output.py:668
+#, python-format
+msgid "--> Processing Dependency: %s for package: %s"
+msgstr "--> S'està processant la dependència %s per al paquet: %s"
+
+#: ../output.py:673
+#, python-format
+msgid "--> Unresolved Dependency: %s"
+msgstr "--> Dependència no resolta: %s"
+
+#: ../output.py:679
+#, python-format
+msgid "--> Processing Conflict: %s conflicts %s"
+msgstr "--> S'està processant el conflicte: %s té un conflicte amb %s"
+
+#: ../output.py:682
+msgid "--> Populating transaction set with selected packages. Please wait."
+msgstr "--> S'està poblant la transacció amb els paquets sel·leccionats. Si us plau, espereu."
+
+#: ../output.py:686
+#, python-format
+msgid "---> Downloading header for %s to pack into transaction set."
+msgstr "---> S'està descarregant la capçalera per a %s per a empaquetar dins de la transacció de prova."
+
+#: ../yumcommands.py:36
+msgid "You need to be root to perform this command."
+msgstr "Heu de ser root per a executar aquesta ordre."
+
+#: ../yumcommands.py:43
+msgid ""
+"\n"
+"You have enabled checking of packages via GPG keys. This is a good thing. \n"
+"However, you do not have any GPG public keys installed. You need to "
+"download\n"
+"the keys for packages you wish to install and install them.\n"
+"You can do that by running the command:\n"
+"    rpm --import public.gpg.key\n"
+"\n"
+"\n"
+"Alternatively you can specify the url to the key you would like to use\n"
+"for a repository in the 'gpgkey' option in a repository section and yum \n"
+"will install it for you.\n"
+"\n"
+"For more information contact your distribution or package provider.\n"
+msgstr ""
+"\n"
+"Heu habilitat la comprovació de paquets utilitzant claus GPG. És una bona opció. \n"
+"No obstant, no teniu cap clau pública GPG instal·lada. Necessiteu "
+"descarregar\n"
+"les claus per als paquets paquets que desitdeu instal·lar i instal·lar-les.\n"
+"Podeu fer-ho executant l'ordre:\n"
+"    rpm --import clau.pública.gpg\n"
+"\n"
+"\n"
+"També podeu especificar la url de la clau que voleu utilitzar\n"
+"per a un repositori en l'opció 'gpgkey' en la secció d'un repositori i yum \n"
+"la instal·larà per vosaltres.\n"
+"\n"
+"Per a més informació contacteu el vostre distribuidor o proveïdor de paquets.\n"
+
+#: ../yumcommands.py:63
+#, python-format
+msgid "Error: Need to pass a list of pkgs to %s"
+msgstr "Error: es necessita passar una llista de paquets a %s"
+
+#: ../yumcommands.py:69
+msgid "Error: Need an item to match"
+msgstr "Error: es necessita algun element per comparar"
+
+#: ../yumcommands.py:75
+msgid "Error: Need a group or list of groups"
+msgstr "Error: es necessita un grup o una llista de grups"
+
+#: ../yumcommands.py:84
+#, python-format
+msgid "Error: clean requires an option: %s"
+msgstr "Error: la neteja requereix una opció: %s"
+
+#: ../yumcommands.py:89
+#, python-format
+msgid "Error: invalid clean argument: %r"
+msgstr "Error: argument invàlid per a la neteja: %r"
+
+#: ../yumcommands.py:102
+msgid "No argument to shell"
+msgstr "No hi ha arguments per a l'intèrpret d'ordres"
+
+#: ../yumcommands.py:105
+#, python-format
+msgid "Filename passed to shell: %s"
+msgstr "Nom del fitxer passat a l'intèrpret d'ordres: %s"
+
+#: ../yumcommands.py:109
+#, python-format
+msgid "File %s given as argument to shell does not exist."
+msgstr "El fitxer %s donat com a argument a l'intèrpret d'ordres no existeix."
+
+#: ../yumcommands.py:115
+msgid "Error: more than one file given as argument to shell."
+msgstr "Error: s'ha donat més d'un fitxer com a arguments per a l'intèrpret d'ordres."
+
+#: ../yumcommands.py:156
+msgid "PACKAGE..."
+msgstr "PAQUET..."
+
+#: ../yumcommands.py:159
+msgid "Install a package or packages on your system"
+msgstr "Instal·la un o més paquets al vostre sistema"
+
+#: ../yumcommands.py:168
+msgid "Setting up Install Process"
+msgstr "S'està preparant el procés d'instal·lació"
+
+#: ../yumcommands.py:179
+msgid "[PACKAGE...]"
+msgstr "[PAQUET...]"
+
+#: ../yumcommands.py:182
+msgid "Update a package or packages on your system"
+msgstr "S'ha actualitzat un o més paquets al vostre sistema"
+
+#: ../yumcommands.py:190
+msgid "Setting up Update Process"
+msgstr "S'està preparant el procés d'actualització"
+
+#: ../yumcommands.py:204
+msgid "Display details about a package or group of packages"
+msgstr "Mostra detalls sobre un paquet o un grup de paquets"
+
+#: ../yumcommands.py:212
+msgid "Installed Packages"
+msgstr "Paquets instal·lats"
+
+#: ../yumcommands.py:213
+msgid "Available Packages"
+msgstr "Paquets disponibles"
+
+#: ../yumcommands.py:214
+msgid "Extra Packages"
+msgstr "Paquets extra"
+
+#: ../yumcommands.py:215
+msgid "Updated Packages"
+msgstr "Paquets actualitzats"
+
+#: ../yumcommands.py:221 ../yumcommands.py:225
+msgid "Obsoleting Packages"
+msgstr "Paquets fets obsolets"
+
+#: ../yumcommands.py:226
+msgid "Recently Added Packages"
+msgstr "Paquets recentment afegits"
+
+#: ../yumcommands.py:232
+msgid "No matching Packages to list"
+msgstr "No hi ha paquets coincidents per llistar"
+
+#: ../yumcommands.py:246
+msgid "List a package or groups of packages"
+msgstr "Llista un paquet o un grup de paquets"
+
+#: ../yumcommands.py:258
+msgid "Remove a package or packages from your system"
+msgstr "Esborra un o més paquets del vostre sistema"
+
+#: ../yumcommands.py:266
+msgid "Setting up Remove Process"
+msgstr "S'està preparant el procés d'esborrat"
+
+#: ../yumcommands.py:278
+msgid "Setting up Group Process"
+msgstr "S'està preparant el procés de grup"
+
+#: ../yumcommands.py:284
+msgid "No Groups on which to run command"
+msgstr "No hi ha cap grup on executar l'ordre"
+
+#: ../yumcommands.py:297
+msgid "List available package groups"
+msgstr "Llista els grups de paquets disponibles"
+
+#: ../yumcommands.py:314
+msgid "Install the packages in a group on your system"
+msgstr "Instal·la els paquets en un grup en el vostre sistema"
+
+#: ../yumcommands.py:336
+msgid "Remove the packages in a group from your system"
+msgstr "Esborra els paquets en un grup en el vostre sistema"
+
+#: ../yumcommands.py:360
+msgid "Display details about a package group"
+msgstr "Mostra detalls sobre un grup de paquets"
+
+#: ../yumcommands.py:384
+msgid "Generate the metadata cache"
+msgstr "Genera les metadades de la memòria cau"
+
+#: ../yumcommands.py:390
+msgid "Making cache files for all metadata files."
+msgstr "S'estan fent els fitxers de memòria cau per a tots els fitxers de metadades."
+
+#: ../yumcommands.py:391
+msgid "This may take a while depending on the speed of this computer"
+msgstr "Això pot trigar una estona depenent de la velocitat d'aquest ordinador"
+
+#: ../yumcommands.py:412
+msgid "Metadata Cache Created"
+msgstr "S'han creat les metadades per a la memòria cau"
+
+#: ../yumcommands.py:426
+msgid "Remove cached data"
+msgstr "S'han esborrat les dades de la memòria cau"
+
+#: ../yumcommands.py:447
+msgid "Find what package provides the given value"
+msgstr "Troba quin paquet proporciona el valor donat"
+
+#: ../yumcommands.py:467
+msgid "Check for available package updates"
+msgstr "Comprova si hi ha actualitzacions de paquets disponibles"
+
+#: ../yumcommands.py:490
+msgid "Search package details for the given string"
+msgstr "Busca detalls del paquet per la cadena donada"
+
+#: ../yumcommands.py:496
+msgid "Searching Packages: "
+msgstr "S'estan buscant paquets: "
+
+#: ../yumcommands.py:513
+msgid "Update packages taking obsoletes into account"
+msgstr "Actualitza paquets tenint en compte els obsolets"
+
+#: ../yumcommands.py:522
+msgid "Setting up Upgrade Process"
+msgstr "S'està preparant el procés d'actualització"
+
+#: ../yumcommands.py:536
+msgid "Install a local RPM"
+msgstr "Instal·la un RPM local"
+
+#: ../yumcommands.py:545
+msgid "Setting up Local Package Process"
+msgstr "S'està configurant el procés local de paquets"
+
+#: ../yumcommands.py:564
+msgid "Determine which package provides the given dependency"
+msgstr "Determina quin paquet satisfà la dependència donada"
+
+#: ../yumcommands.py:567
+msgid "Searching Packages for Dependency:"
+msgstr "S'estan buscant paquets per a la dependència:"
+
+#: ../yumcommands.py:581
+msgid "Run an interactive yum shell"
+msgstr "Executa un intèrpret d'ordres interactiu de yum"
+
+#: ../yumcommands.py:587
+msgid "Setting up Yum Shell"
+msgstr "S'està preparant l'intèrpret d'ordres de yum"
+
+#: ../yumcommands.py:605
+msgid "List a package's dependencies"
+msgstr "Llista les dependències d'un paquet"
+
+#: ../yumcommands.py:611
+msgid "Finding dependencies: "
+msgstr "S'estan trobant dependències: "
+
+#: ../yumcommands.py:627
+msgid "Display the configured software repositories"
+msgstr "Mostra els repositoris de programari configurats"
+
+#: ../yumcommands.py:645
+msgid "repo id"
+msgstr "id repo"
+
+#: ../yumcommands.py:645
+msgid "repo name"
+msgstr "nom repo"
+
+#: ../yumcommands.py:645
+msgid "status"
+msgstr "estat"
+
+#: ../yumcommands.py:651
+msgid "enabled"
+msgstr "habilitat"
+
+#: ../yumcommands.py:654
+msgid "disabled"
+msgstr "deshabilitat"
+
+#: ../yumcommands.py:671
+msgid "Display a helpful usage message"
+msgstr "Mostra un missatge d'ajuda d'ús"
+
+#: ../yumcommands.py:705
+#, python-format
+msgid "No help available for %s"
+msgstr "No hi ha ajuda disponible per a %s"
+
+#: ../yumcommands.py:710
+msgid ""
+"\n"
+"\n"
+"aliases: "
+msgstr ""
+"\n"
+"\n"
+"àlies: "
+
+#: ../yumcommands.py:712
+msgid ""
+"\n"
+"\n"
+"alias: "
+msgstr ""
+"\n"
+"\n"
+"àlies: "
+
+#: ../yumcommands.py:741
+msgid "Setting up Reinstall Process"
+msgstr "S'està preparant el procés de reinstal·lació"
+
+#: ../yumcommands.py:755
+msgid "reinstall a package"
+msgstr "reinstal·la un paquet"
+
+#: ../yummain.py:41
+msgid ""
+"\n"
+"\n"
+"Exiting on user cancel"
+msgstr ""
+"\n"
+"\n"
+"S'està sortint per la cancel·lació de l'usuari"
+
+#: ../yummain.py:47
+msgid ""
+"\n"
+"\n"
+"Exiting on Broken Pipe"
+msgstr ""
+"\n"
+"\n"
+"S'està sortint en trobar la canonada trencada"
+
+#: ../yummain.py:105
+msgid ""
+"Another app is currently holding the yum lock; waiting for it to exit..."
+msgstr ""
+"Alguna altra aplicació té el bloqueig del yum; s'està esperant a que surti..."
+
+#: ../yummain.py:132 ../yummain.py:171
+#, python-format
+msgid "Error: %s"
+msgstr "Error: %s"
+
+#: ../yummain.py:142 ../yummain.py:178
+#, python-format
+msgid "Unknown Error(s): Exit Code: %d:"
+msgstr "Errors desconeguts: Codi de sortida: %d:"
+
+#. Depsolve stage
+#: ../yummain.py:149
+msgid "Resolving Dependencies"
+msgstr "S'estan resolent dependències"
+
+#: ../yummain.py:184
+msgid ""
+"\n"
+"Dependencies Resolved"
+msgstr ""
+"\n"
+"Dependències resoltes"
+
+#: ../yummain.py:198
+msgid "Complete!"
+msgstr "Completat!"
+
+#: ../yummain.py:245
+msgid ""
+"\n"
+"\n"
+"Exiting on user cancel."
+msgstr ""
+"\n"
+"\n"
+"S'està sortint de l'ordre de l'usuari."
+
+#: ../yum/depsolve.py:82
+msgid "doTsSetup() will go away in a future version of Yum.\n"
+msgstr "doTsSetup() desapareixerà en una futura versió de Yum.\n"
+
+#: ../yum/depsolve.py:95
+msgid "Setting up TransactionSets before config class is up"
+msgstr "S'està configurant TransactionSets abans que la classe de configuració "
+"estigui iniciada"
+
+#: ../yum/depsolve.py:136
+#, python-format
+msgid "Invalid tsflag in config file: %s"
+msgstr "Tsflag invàlid en el fitxer de configuració: %s"
+
+#: ../yum/depsolve.py:147
+#, python-format
+msgid "Searching pkgSack for dep: %s"
+msgstr "S'està buscant pkgSack per a la dependència: %s"
+
+#: ../yum/depsolve.py:170
+#, python-format
+msgid "Potential match for %s from %s"
+msgstr "Coincidència potencial per a %s de %s"
+
+#: ../yum/depsolve.py:178
+#, python-format
+msgid "Matched %s to require for %s"
+msgstr "La coincidència %s es requereix per a %s"
+
+#: ../yum/depsolve.py:219
+#, python-format
+msgid "Member: %s"
+msgstr "Membre: %s"
+
+#: ../yum/depsolve.py:233 ../yum/depsolve.py:696
+#, python-format
+msgid "%s converted to install"
+msgstr "%s convertits per a instal·lar"
+
+#: ../yum/depsolve.py:240
+#, python-format
+msgid "Adding Package %s in mode %s"
+msgstr "S'està afegint el paquet %s en mode %s"
+
+#: ../yum/depsolve.py:250
+#, python-format
+msgid "Removing Package %s"
+msgstr "S'està esborrant el paquet %s"
+
+#: ../yum/depsolve.py:261
+#, python-format
+msgid "%s requires: %s"
+msgstr "%s requereix: %s"
+
+#: ../yum/depsolve.py:312
+msgid "Needed Require has already been looked up, cheating"
+msgstr "El requeriment necessari ja s'ha buscat anteriorment, s'estan fent trampes"
+
+#: ../yum/depsolve.py:322
+#, python-format
+msgid "Needed Require is not a package name. Looking up: %s"
+msgstr "El requeriment necessari no és un nom de paquet. S'està buscant: %s"
+
+#: ../yum/depsolve.py:329
+#, python-format
+msgid "Potential Provider: %s"
+msgstr "Proveïdor potencial: %s"
+
+#: ../yum/depsolve.py:352
+#, python-format
+msgid "Mode is %s for provider of %s: %s"
+msgstr "El mode és %s per al proveïdor de %s: %s"
+
+#: ../yum/depsolve.py:356
+#, python-format
+msgid "Mode for pkg providing %s: %s"
+msgstr "Mode per al paquet que proporciona %s: %s"
+
+#: ../yum/depsolve.py:360
+#, python-format
+msgid "TSINFO: %s package requiring %s marked as erase"
+msgstr "TSINFO: el paquet %s requereix %s marcat per a esborrar"
+
+#: ../yum/depsolve.py:372
+#, python-format
+msgid "TSINFO: Obsoleting %s with %s to resolve dep."
+msgstr "TSINFO: S'està marcant com a obsolet %s amb %s per resoldre dependències."
+
+#: ../yum/depsolve.py:375
+#, python-format
+msgid "TSINFO: Updating %s to resolve dep."
+msgstr "TSINFO: S'està actualitzant %s per a resoldre dependències."
+
+#: ../yum/depsolve.py:378
+#, python-format
+msgid "Cannot find an update path for dep for: %s"
+msgstr "No es pot trobar un camí d'actualització de dependències per a: %s"
+
+#: ../yum/depsolve.py:388
+#, python-format
+msgid "Unresolvable requirement %s for %s"
+msgstr "No es pot resoldre el requeriment %s per a %s"
+
+#. is it already installed?
+#: ../yum/depsolve.py:434
+#, python-format
+msgid "%s is in providing packages but it is already installed, removing."
+msgstr "%s es troba en els paquets proporcionats però ja es troba instal·lat, s'està esborrant."
+
+#: ../yum/depsolve.py:449
+#, python-format
+msgid "Potential resolving package %s has newer instance in ts."
+msgstr "El paquet potencial que resol dependències %s té una instància nova a ts"
+
+#: ../yum/depsolve.py:460
+#, python-format
+msgid "Potential resolving package %s has newer instance installed."
+msgstr "El paquet potencial que resol dependències %s té una nova instància insta·lada."
+
+#: ../yum/depsolve.py:468 ../yum/depsolve.py:527
+#, python-format
+msgid "Missing Dependency: %s is needed by package %s"
+msgstr "La dependència que falta: %s es necessita per al paquet %s"
+
+#: ../yum/depsolve.py:481
+#, python-format
+msgid "%s already in ts, skipping this one"
+msgstr "%s ja es troba en ts, s'està ometent"
+
+#: ../yum/depsolve.py:510
+#, python-format
+msgid ""
+"Failure finding best provider of %s for %s, exceeded maximum loop length"
+msgstr ""
+"S'ha produït un error trobant el millor proveïdor de %s per a %s, el bucle ha excedit la longitud màxima"
+
+#: ../yum/depsolve.py:537
+#, python-format
+msgid "TSINFO: Marking %s as update for %s"
+msgstr "TSINFO: S'està marcant %s com a actualització per a %s"
+
+#: ../yum/depsolve.py:544
+#, python-format
+msgid "TSINFO: Marking %s as install for %s"
+msgstr "TSINFO: S'està marcant %s com a instal·lació per a %s"
+
+#: ../yum/depsolve.py:635 ../yum/depsolve.py:714
+msgid "Success - empty transaction"
+msgstr "Èxit - transacció buida"
+
+#: ../yum/depsolve.py:673 ../yum/depsolve.py:686
+msgid "Restarting Loop"
+msgstr "S'està recomençant el bucle"
+
+#: ../yum/depsolve.py:702
+msgid "Dependency Process ending"
+msgstr "Està acabant el procés de dependències"
+
+#: ../yum/depsolve.py:708
+#, python-format
+msgid "%s from %s has depsolving problems"
+msgstr "%s de %s té problemes resolent dependències"
+
+#: ../yum/depsolve.py:715
+msgid "Success - deps resolved"
+msgstr "Èxit - dependències resoltes"
+
+#: ../yum/depsolve.py:729
+#, python-format
+msgid "Checking deps for %s"
+msgstr "S'estan comprobant les dependències per a %s"
+
+#: ../yum/depsolve.py:782
+#, python-format
+msgid "looking for %s as a requirement of %s"
+msgstr "s'està buscant %s com a requeriment de %s"
+
+#: ../yum/depsolve.py:933
+#, python-format
+msgid "Comparing best: %s to po: %s"
+msgstr "S'està comparant el millor: %s amb po: %s"
+
+#: ../yum/depsolve.py:937
+#, python-format
+msgid "Same: best %s == po: %s"
+msgstr "Igual: el millor %s == po: %s"
+
+#: ../yum/depsolve.py:952 ../yum/depsolve.py:963
+#, python-format
+msgid "best %s obsoletes po: %s"
+msgstr "el millor %s deixa com a obsolet el po: %s"
+
+#: ../yum/depsolve.py:955
+#, python-format
+msgid "po %s obsoletes best: %s"
+msgstr "el po %s deixa com a obsolet el millor: %s"
+
+#: ../yum/depsolve.py:972 ../yum/depsolve.py:979 ../yum/depsolve.py:1036
+#, python-format
+msgid "better arch in po %s"
+msgstr "millor arq en el po %s"
+
+#: ../yum/depsolve.py:988 ../yum/depsolve.py:1010
+#, python-format
+msgid "po %s shares a sourcerpm with %s"
+msgstr "el po %s comparteix un rpm origen amb %s"
+
+#: ../yum/depsolve.py:992 ../yum/depsolve.py:1015
+#, python-format
+msgid "best %s shares a sourcerpm with %s"
+msgstr "el millor %s comparteix un rpm origen amb %s"
+
+#: ../yum/depsolve.py:999 ../yum/depsolve.py:1020
+#, python-format
+msgid "po %s shares more of the name prefix with %s"
+msgstr "el po %s comparteix més que el prefix del nom amb %s"
+
+#: ../yum/depsolve.py:1003 ../yum/depsolve.py:1029
+#, python-format
+msgid "po %s has a shorter name than best %s"
+msgstr "el po %s té un nom més curt que el millor %s"
+
+#: ../yum/depsolve.py:1025
+#, python-format
+msgid "bestpkg %s shares more of the name prefix with %s"
+msgstr "el millor paquet %s comparteix més el prefix del nom amb %s"
+
+#: ../yum/__init__.py:119
+msgid "doConfigSetup() will go away in a future version of Yum.\n"
+msgstr "doConfigsetup() desapareixerà en una futura versió de Yum.\n"
+
+#: ../yum/__init__.py:296
+#, python-format
+msgid "Repository %r is missing name in configuration, using id"
+msgstr "Falta el nom del repositori %r en la configuració, s'utilitzarà l'id"
+
+#: ../yum/__init__.py:332
+msgid "plugins already initialised"
+msgstr "els connectors ja estan inicialitzats"
+
+#: ../yum/__init__.py:339
+msgid "doRpmDBSetup() will go away in a future version of Yum.\n"
+msgstr "doRpmDBSetup() desapareixerà en una futura versió de Yum.\n"
+
+#: ../yum/__init__.py:349
+msgid "Reading Local RPMDB"
+msgstr "S'està llegint un RPMDB local"
+
+#: ../yum/__init__.py:367
+msgid "doRepoSetup() will go away in a future version of Yum.\n"
+msgstr "doRepoSetup() desapareixerà en una futura versió de Yum.\n"
+
+#: ../yum/__init__.py:387
+msgid "doSackSetup() will go away in a future version of Yum.\n"
+msgstr "doSackSetup() desapareixerà en una versió futura de Yum.\n"
+
+#: ../yum/__init__.py:404
+msgid "Setting up Package Sacks"
+msgstr "S'estan configurant els sacs de paquets"
+
+#: ../yum/__init__.py:447
+#, python-format
+msgid "repo object for repo %s lacks a _resetSack method\n"
+msgstr "l'objecte repositori per al repositori %s no té un mètode _resetSack\n"
+
+#: ../yum/__init__.py:448
+msgid "therefore this repo cannot be reset.\n"
+msgstr "Aquest repositori no es pot reiniciar.\n"
+
+#: ../yum/__init__.py:453
+msgid "doUpdateSetup() will go away in a future version of Yum.\n"
+msgstr "doUpdateSetup() desapareixerà en una futura versió de Yum.\n"
+
+#: ../yum/__init__.py:465
+msgid "Building updates object"
+msgstr "S'està construint l'objecte d'actualitzacions"
+
+#: ../yum/__init__.py:496
+msgid "doGroupSetup() will go away in a future version of Yum.\n"
+msgstr "doGroupSetup() desapareixerà en una futura versió de Yum.\n"
+
+#: ../yum/__init__.py:520
+msgid "Getting group metadata"
+msgstr "S'estan obtenint les metadades del grup"
+
+#: ../yum/__init__.py:546
+#, python-format
+msgid "Adding group file from repository: %s"
+msgstr "S'està afegint el fitxer del grup des del repositori: %s"
+
+#: ../yum/__init__.py:555
+#, python-format
+msgid "Failed to add groups file for repository: %s - %s"
+msgstr "No s'ha pogut afegir el fitxer dels grups des del repositori: %s - %s"
+
+#: ../yum/__init__.py:561
+msgid "No Groups Available in any repository"
+msgstr "No hi ha cap grup disponible en cap repositori"
+
+#: ../yum/__init__.py:611
+msgid "Importing additional filelist information"
+msgstr "S'està important informació adicional de la llista de fitxers"
+
+#: ../yum/__init__.py:657
+#, python-format
+msgid "Skip-broken round %i"
+msgstr "Intent %i d'omissió dels trencats"
+
+#: ../yum/__init__.py:680
+#, python-format
+msgid "Skip-broken took %i rounds "
+msgstr "L'omisió dels trencats ha necessitat %i intents"
+
+#: ../yum/__init__.py:681
+msgid ""
+"\n"
+"Packages skipped because of dependency problems:"
+msgstr ""
+"\n"
+"Paquets omesos degut a problemes de dependències:"
+
+#: ../yum/__init__.py:685
+#, python-format
+msgid "    %s from %s"
+msgstr "    %s des de %s"
+
+#: ../yum/__init__.py:774
+#, python-format
+msgid "Failed to remove transaction file %s"
+msgstr "No s'ha pogut esborrar el fitxer de transaccions %s"
+
+#: ../yum/__init__.py:814
+#, python-format
+msgid "excluding for cost: %s from %s"
+msgstr "s'està excloent per cost: %s de %s"
+
+#: ../yum/__init__.py:845
+msgid "Excluding Packages in global exclude list"
+msgstr "S'estan excloent paquets en la llista global d'exclusió"
+
+#: ../yum/__init__.py:847
+#, python-format
+msgid "Excluding Packages from %s"
+msgstr "S'estan excloent paquets de %s"
+
+#: ../yum/__init__.py:875
+#, python-format
+msgid "Reducing %s to included packages only"
+msgstr "S'està reduint %s únicament a paquets inclosos."
+
+#: ../yum/__init__.py:880
+#, python-format
+msgid "Keeping included package %s"
+msgstr "S'està mantenint el paquet inclòs %s"
+
+#: ../yum/__init__.py:886
+#, python-format
+msgid "Removing unmatched package %s"
+msgstr "S'està esborrant el paquet sense coincidències %s"
+
+#: ../yum/__init__.py:889
+msgid "Finished"
+msgstr "Finalitzat"
+
+#. Whoa. What the heck happened?
+#: ../yum/__init__.py:919
+#, python-format
+msgid "Unable to check if PID %s is active"
+msgstr "No s'ha pogut comprovar si el PID %s es troba actiu"
+
+#. Another copy seems to be running.
+#: ../yum/__init__.py:923
+#, python-format
+msgid "Existing lock %s: another copy is running as pid %s."
+msgstr "Bloqueig existent %s: una altra còpia s'està executant amb pid %s."
+
+#: ../yum/__init__.py:970 ../yum/__init__.py:977
+msgid "Package does not match intended download"
+msgstr "El paquet no coincideix amb la descàrrega intentada"
+
+#: ../yum/__init__.py:991
+msgid "Could not perform checksum"
+msgstr "No s'ha pogut realitzar la suma de verificació"
+
+#: ../yum/__init__.py:994
+msgid "Package does not match checksum"
+msgstr "No coincideix la suma de verificació del paquet"
+
+#: ../yum/__init__.py:1036
+#, python-format
+msgid "package fails checksum but caching is enabled for %s"
+msgstr "la suma de verificació del paquet falla però l'ús de memòria cau està habilitat per a %s"
+
+#: ../yum/__init__.py:1042
+#, python-format
+msgid "using local copy of %s"
+msgstr "s'està utilitzant la còpia local de %s"
+
+#: ../yum/__init__.py:1061
+#, python-format
+msgid "Insufficient space in download directory %s to download"
+msgstr "No hi ha espai suficient al directori de descàrregues %s per a descarregar"
+
+#: ../yum/__init__.py:1094
+msgid "Header is not complete."
+msgstr "La capçalera no està completa."
+
+#: ../yum/__init__.py:1134
+#, python-format
+msgid ""
+"Header not in local cache and caching-only mode enabled. Cannot download %s"
+msgstr ""
+"La capçalera no es troba en la memòria cau local i està habilitat el mode de només memòria cau. No es pot descarregar %s"
+
+#: ../yum/__init__.py:1189
+#, python-format
+msgid "Public key for %s is not installed"
+msgstr "La clau pública per a %s no està instal·lada"
+
+#: ../yum/__init__.py:1193
+#, python-format
+msgid "Problem opening package %s"
+msgstr "Hi ha hagut un problema obrint el paquet %s"
+
+#: ../yum/__init__.py:1201
+#, python-format
+msgid "Public key for %s is not trusted"
+msgstr "La clau pública per a %s no és de confiança"
+
+#: ../yum/__init__.py:1205
+#, python-format
+msgid "Package %s is not signed"
+msgstr "El paquet %s no està signat"
+
+#: ../yum/__init__.py:1243
+#, python-format
+msgid "Cannot remove %s"
+msgstr "No es pot esborrar %s"
+
+#: ../yum/__init__.py:1247
+#, python-format
+msgid "%s removed"
+msgstr "S'ha esborrat %s"
+
+#: ../yum/__init__.py:1283
+#, python-format
+msgid "Cannot remove %s file %s"
+msgstr "No es pot esborrar %s fitxer %s"
+
+#: ../yum/__init__.py:1287
+#, python-format
+msgid "%s file %s removed"
+msgstr "%s fitxer %s esborrat"
+
+#: ../yum/__init__.py:1289
+#, python-format
+msgid "%d %s files removed"
+msgstr "%d %s fitxers esborrats"
+
+#: ../yum/__init__.py:1329
+#, python-format
+msgid "More than one identical match in sack for %s"
+msgstr "Hi ha més d'una coincidència idèntica en el sac per a %s"
+
+#: ../yum/__init__.py:1335
+#, python-format
+msgid "Nothing matches %s.%s %s:%s-%s from update"
+msgstr "No hi ha coincidències %s.%s-%s:%s-%s de l'actualització"
+
+#: ../yum/__init__.py:1543
+msgid ""
+"searchPackages() will go away in a future version of "
+"Yum.                      Use searchGenerator() instead. \n"
+msgstr ""
+"searchPackages() desapareixerà en una futura versió de "
+"Yum.                      Useu searchGenerator(). \n"
+
+#: ../yum/__init__.py:1580
+#, python-format
+msgid "Searching %d packages"
+msgstr "S'estan buscant %d paquets"
+
+#: ../yum/__init__.py:1584
+#, python-format
+msgid "searching package %s"
+msgstr "s'està buscant el paquet %s"
+
+#: ../yum/__init__.py:1596
+msgid "searching in file entries"
+msgstr "s'està buscant en les entrades de fitxers"
+
+#: ../yum/__init__.py:1603
+msgid "searching in provides entries"
+msgstr "s'està buscant en les entrades proporcionades"
+
+#: ../yum/__init__.py:1633
+#, python-format
+msgid "Provides-match: %s"
+msgstr "Proporciona-coincideix: %s"
+
+#: ../yum/__init__.py:1702 ../yum/__init__.py:1720 ../yum/__init__.py:1748
+#: ../yum/__init__.py:1753 ../yum/__init__.py:1808 ../yum/__init__.py:1812
+#, python-format
+msgid "No Group named %s exists"
+msgstr "No existeix cap grup anomenat %s"
+
+#: ../yum/__init__.py:1731 ../yum/__init__.py:1824
+#, python-format
+msgid "package %s was not marked in group %s"
+msgstr "el paquet %s no estava marcat en el grup %s"
+
+#: ../yum/__init__.py:1770
+#, python-format
+msgid "Adding package %s from group %s"
+msgstr "S'està afegint el paquet %s del grup %s"
+
+#: ../yum/__init__.py:1774
+#, python-format
+msgid "No package named %s available to be installed"
+msgstr "No hi ha cap paquet anomenat %s disponible per a ser instal·lat"
+
+#: ../yum/__init__.py:1849
+#, python-format
+msgid "Package tuple %s could not be found in packagesack"
+msgstr "No s'ha pogut trobar la tupla de paquets %s al sac de paquets"
+
+#: ../yum/__init__.py:1917 ../yum/__init__.py:1960
+msgid "Invalid versioned dependency string, try quoting it."
+msgstr "La cadena de versió de dependència és invàlida, proveu-ho entre cometes."
+
+#: ../yum/__init__.py:1919 ../yum/__init__.py:1962
+msgid "Invalid version flag"
+msgstr "Versió de flag invàlida"
+
+#: ../yum/__init__.py:1934 ../yum/__init__.py:1938
+#, python-format
+msgid "No Package found for %s"
+msgstr "No s'ha trobat cap paquet per a %s"
+
+#: ../yum/__init__.py:2066
+msgid "Package Object was not a package object instance"
+msgstr "L'objecte paquet no era una instància d'objecte paquet"
+
+#: ../yum/__init__.py:2070
+msgid "Nothing specified to install"
+msgstr "No hi ha res especificat per a instal·lar"
+
+#. only one in there
+#: ../yum/__init__.py:2085
+#, python-format
+msgid "Checking for virtual provide or file-provide for %s"
+msgstr "S'està verificant si hi ha un proveïdor virtual o un fitxer proveïdor per a %s"
+
+#: ../yum/__init__.py:2091 ../yum/__init__.py:2380
+#, python-format
+msgid "No Match for argument: %s"
+msgstr "No hi ha cap coincidència per a l'argument: %s"
+
+#. FIXME - this is where we could check to see if it already installed
+#. for returning better errors
+#: ../yum/__init__.py:2146
+msgid "No package(s) available to install"
+msgstr "No hi ha cap paquet disponible per a instal·lar"
+
+#: ../yum/__init__.py:2158
+#, python-format
+msgid "Package: %s  - already in transaction set"
+msgstr "El paquet: %s  - ja està en la transacció"
+
+#: ../yum/__init__.py:2171
+#, python-format
+msgid "Package %s already installed and latest version"
+msgstr "El paquet %s ja es troba instal·lat i en l'última versió."
+
+#: ../yum/__init__.py:2178
+#, python-format
+msgid "Package matching %s already installed. Checking for update."
+msgstr "El paquet coincident %s ja es troba instal·lat. S'està buscant una actualització."
+
+#. update everything (the easy case)
+#: ../yum/__init__.py:2220
+msgid "Updating Everything"
+msgstr "S'està actualitzant tot"
+
+#: ../yum/__init__.py:2304
+#, python-format
+msgid "Package is already obsoleted: %s.%s %s:%s-%s"
+msgstr "El paquet és obsolet: %s.%s. %s:%s-%s"
+
+#: ../yum/__init__.py:2377
+#, python-format
+msgid "%s"
+msgstr "%s"
+
+#: ../yum/__init__.py:2392
+msgid "No package matched to remove"
+msgstr "No hi ha cap paquet coincident per a esborrar"
+
+#: ../yum/__init__.py:2426
+#, python-format
+msgid "Cannot open file: %s. Skipping."
+msgstr "No es pot obrir el fitxer %s. S'ometrà."
+
+#: ../yum/__init__.py:2429
+#, python-format
+msgid "Examining %s: %s"
+msgstr "S'està examinant %s: %s"
+
+#: ../yum/__init__.py:2436
+#, python-format
+msgid ""
+"Package %s not installed, cannot update it. Run yum install to install it "
+"instead."
+msgstr "El paquet %s no està instal·lat; no es pot actualitzar. Executa yum install per a instal·lar-lo."
+
+#: ../yum/__init__.py:2468
+#, python-format
+msgid "Excluding %s"
+msgstr "S'està excloent %s"
+
+#: ../yum/__init__.py:2473
+#, python-format
+msgid "Marking %s to be installed"
+msgstr "S'està marcant %s per a ser instal·lat"
+
+#: ../yum/__init__.py:2479
+#, python-format
+msgid "Marking %s as an update to %s"
+msgstr "S'està marcant %s com a actualització de %s"
+
+#: ../yum/__init__.py:2486
+#, python-format
+msgid "%s: does not update installed package."
+msgstr "%s no actualitza el paquet instal·lat."
+
+#: ../yum/__init__.py:2504
+msgid "Problem in reinstall: no package matched to remove"
+msgstr "Hi ha un problema en reinstal·lar: no hi ha cap paquet marcat per a esborrar"
+
+#: ../yum/__init__.py:2515
+#, python-format
+msgid "Package %s is allowed multiple installs, skipping"
+msgstr "El paquet %s permet múltiples instal·lacions, s'està ometent"
+
+#: ../yum/__init__.py:2522
+msgid "Problem in reinstall: no package matched to install"
+msgstr "Hi ha un problema en reinstal·lar: no hi ha cap paquet marcat per a instal·lar"
+
+#: ../yum/__init__.py:2570
+#, python-format
+msgid "Retrieving GPG key from %s"
+msgstr "S'està recuperant la clau GPG des de %s"
+
+#: ../yum/__init__.py:2576
+msgid "GPG key retrieval failed: "
+msgstr "La recuperació de la clau GPG ha fallat: "
+
+#: ../yum/__init__.py:2589
+msgid "GPG key parsing failed: "
+msgstr "L'ànalisi de la clau GPG ha fallat: "
+
+#: ../yum/__init__.py:2593
+#, python-format
+msgid "GPG key at %s (0x%s) is already installed"
+msgstr "La clau GPG de %s (0x%s) ja està instal·lada"
+
+#. Try installing/updating GPG key
+#: ../yum/__init__.py:2598
+#, python-format
+msgid "Importing GPG key 0x%s \"%s\" from %s"
+msgstr "S'està important la clau GPG 0x%s \"%s\" des de %s"
+
+#: ../yum/__init__.py:2610
+msgid "Not installing key"
+msgstr "No s'està instal·lant la clau"
+
+#: ../yum/__init__.py:2616
+#, python-format
+msgid "Key import failed (code %d)"
+msgstr "L'importació de la clau ha fallat (codi %d)"
+
+#: ../yum/__init__.py:2619
+msgid "Key imported successfully"
+msgstr "La clau s'ha importat amb èxit"
+
+#: ../yum/__init__.py:2624
+#, python-format
+msgid ""
+"The GPG keys listed for the \"%s\" repository are already installed but they "
+"are not correct for this package.\n"
+"Check that the correct key URLs are configured for this repository."
+msgstr ""
+"Les claus GPG llistades pel repositori \"%s\" ja estan instal·lades però "
+"no són correctes per a aquest paquet.\n"
+"Comproveu que les URL de clau correctes estan configurades per a aquest repositori."
+
+#: ../yum/__init__.py:2633
+msgid "Import of key(s) didn't help, wrong key(s)?"
+msgstr "La importació de claus no ha ajudat, eren claus incorrectes?"
+
+#: ../yum/__init__.py:2707
+msgid "Unable to find a suitable mirror."
+msgstr "No s'ha pogut trobar un servidor rèplica vàlid."
+
+#: ../yum/__init__.py:2709
+msgid "Errors were encountered while downloading packages."
+msgstr "S'han trobat errors descarregant paquets."
+
+#: ../yum/__init__.py:2774
+msgid "Test Transaction Errors: "
+msgstr "Errors en la transacció de prova: "
+
+#. Mostly copied from YumOutput._outKeyValFill()
+#: ../yum/plugins.py:195
+msgid "Loaded plugins: "
+msgstr "Connectors carregats: "
+
+#: ../yum/plugins.py:206
+#, python-format
+msgid "No plugin match for: %s"
+msgstr "No hi ha cap connector que coincideixi amb: %s"
+
+#: ../yum/plugins.py:219
+#, python-format
+msgid "\"%s\" plugin is disabled"
+msgstr "El connector \"%s\" està deshabilitat"
+
+#: ../yum/plugins.py:231
+#, python-format
+msgid "Plugin \"%s\" doesn't specify required API version"
+msgstr "El connector \"%s\" no especifica la versió de l'API requerida."
+
+#: ../yum/plugins.py:235
+#, python-format
+msgid "Plugin \"%s\" requires API %s. Supported API is %s."
+msgstr "El connector \"%s\" requereix l'API %s. L'API disponible és %s"
+
+#: ../yum/plugins.py:264
+#, python-format
+msgid "Loading \"%s\" plugin"
+msgstr "S'està carregant el connector \"%s\""
+
+#: ../yum/plugins.py:271
+#, python-format
+msgid ""
+"Two or more plugins with the name \"%s\" exist in the plugin search path"
+msgstr ""
+"Existeixen dos o més connectors amb el mateix nom \"%s\" en el camí de cerca de connectors"
+
+#: ../yum/plugins.py:291
+#, python-format
+msgid "Configuration file %s not found"
+msgstr "No s'ha trobat el fitxer de configuració %s"
+
+#. for
+#. Configuration files for the plugin not found
+#: ../yum/plugins.py:294
+#, python-format
+msgid "Unable to find configuration file for plugin %s"
+msgstr "No s'ha pogut trobar un fitxer de configuració per al connector %s"
+
+#: ../yum/plugins.py:448
+msgid "registration of commands not supported"
+msgstr "l'enregistrament d'ordres no està suportat"
+
+#: ../rpmUtils/oldUtils.py:26
+#, python-format
+msgid "Header cannot be opened or does not match %s, %s."
+msgstr "La capçalera no es pot obrir o no coincideix amb %s, %s"
+
+#: ../rpmUtils/oldUtils.py:46
+#, python-format
+msgid "RPM %s fails md5 check"
+msgstr "falla la comprobació md5 per al RPM %s"
+
+#: ../rpmUtils/oldUtils.py:144
+msgid "Could not open RPM database for reading. Perhaps it is already in use?"
+msgstr "No s'ha pogut obrir la base de dades RPM per a llegir-la. Potser ja està en ús?"
+
+#: ../rpmUtils/oldUtils.py:174
+msgid "Got an empty Header, something has gone wrong"
+msgstr "S'ha obtingut una capçalera buida, alguna cosa ha anat malament"
+
+#: ../rpmUtils/oldUtils.py:244 ../rpmUtils/oldUtils.py:251
+#: ../rpmUtils/oldUtils.py:254 ../rpmUtils/oldUtils.py:257
+#, python-format
+msgid "Damaged Header %s"
+msgstr "Capçalera danyada %s"
+
+#: ../rpmUtils/oldUtils.py:272
+#, python-format
+msgid "Error opening rpm %s - error %s"
+msgstr "Error en obrir rpm %s - error %s"
+
commit d84125bc4f203a2a3de9fd6c3b861c529aae0bdd
Author: Tim Lauridsen <tla at rasmil.dk>
Date:   Wed Jun 25 20:44:55 2008 +0200

    Add a testcase for the libBCD case studie, just for the fun of it

diff --git a/test/misc-tests.py b/test/misc-tests.py
new file mode 100644
index 0000000..4709ce1
--- /dev/null
+++ b/test/misc-tests.py
@@ -0,0 +1,124 @@
+import unittest
+import logging
+import sys
+from testbase import *
+
+class MiscTests(DepsolveTests):
+    ''' Test cases to test skip-broken'''
+    
+    def setUp(self):
+        DepsolveTests.setUp(self)
+        self.xrepo = FakeRepo("TestRepository", self.xsack)
+        setup_logging()
+
+    def repoPackage(self, name, version='1', release='0', epoch='0', arch='noarch'):
+        po = FakePackage(name, version, release, epoch, arch, repo=self.xrepo)
+        self.xsack.addPackage(po)
+        return po
+    
+    def instPackage(self, name, version='1', release='0', epoch='0', arch='noarch'):
+        po = FakePackage(name, version, release, epoch, arch, repo=self.repo)
+        self.rpmdb.addPackage(po)
+        return po
+           
+        
+    def testLibBCD(self):
+        '''
+        The libABC test
+        http://svn.labix.org/smart/trunk/README 
+        (Case Studies - Case 2)
+
+        The issue is, a package named `A` requires package `BCD` explicitly, and
+        RPM detects implicit dependencies between `A` and `libB`, `libC`, and `libD`.
+        Package `BCD` provides `libB`, `libC`, and `libD`, but additionally there
+        is a package `B` providing `libB`, a package `C` providing `libC`, and
+        a package `D` providing `libD`.
+
+        In other words, there's a package `A` which requires four different symbols,
+        and one of these symbols is provided by a single package `BCD`, which happens
+        to provide all symbols needed by `A`. There are also packages `B`, `C`, and `D`,
+        that provide some of the symbols required by `A`, but can't satisfy all
+        dependencies without `BCD`.
+
+        The expected behavior for an operation asking to install `A` is obviously
+        selecting `BCD` to satisfy `A`'s dependencies
+        
+        This fails in yum because, yum selects the packages with the shortest name
+        if multiple packages provides the same requirements
+    
+        '''
+        A = self.repoPackage('A', '1',arch='i386')
+        A.addRequires('LibB')
+        A.addRequires('LibC')
+        A.addRequires('LibD')
+        A.addRequires('BCD')
+        BCD = self.repoPackage('BCD', '1',arch='i386')
+        BCD.addProvides('LibB')        
+        BCD.addProvides('LibC')        
+        BCD.addProvides('LibD')
+        B = self.repoPackage('B', '1',arch='i386')
+        B.addProvides('LibB')        
+        C = self.repoPackage('C', '1',arch='i386')
+        C.addProvides('LibC')        
+        D = self.repoPackage('D', '1',arch='i386')
+        D.addProvides('LibD')        
+        self.tsInfo.addInstall(A)
+        self.assertEquals('ok', *self.resolveCode(skip=False))
+        # This one is disabled because, we no it fails, but we dont want it to bail out in the each testcase run
+        # Just enable it to do the test
+        # self.assertResult([A,BCD])
+        
+    def testLibBCD2(self):
+        '''
+        Same as above, but in this cases it is ok, because the BCD names is shorter than LibB,LibC and LibD    
+        '''
+        A = self.repoPackage('A', '1',arch='i386')
+        A.addRequires('LibB')
+        A.addRequires('LibC')
+        A.addRequires('LibD')
+        A.addRequires('BCD')
+        BCD = self.repoPackage('BCD', '1',arch='i386')
+        BCD.addProvides('LibB')        
+        BCD.addProvides('LibC')        
+        BCD.addProvides('LibD')
+        B = self.repoPackage('LibB', '1',arch='i386')
+        B.addProvides('LibB')        
+        C = self.repoPackage('LibC', '1',arch='i386')
+        C.addProvides('LibC')        
+        D = self.repoPackage('LibD', '1',arch='i386')
+        D.addProvides('LibD')        
+        self.tsInfo.addInstall(A)
+        self.assertEquals('ok', *self.resolveCode(skip=False))
+        self.assertResult([A,BCD])
+    
+    def resolveCode(self,skip = False):
+        solver = YumBase()
+        solver.conf = FakeConf()
+        solver.conf.skip_broken = skip
+        solver.tsInfo = solver._tsInfo = self.tsInfo
+        solver.rpmdb = self.rpmdb
+        solver.pkgSack = self.xsack
+        
+        for po in self.rpmdb:
+            po.repoid = po.repo.id = "installed"
+        for po in self.xsack:
+            po.repoid = po.repo.id = "TestRepository"
+        for txmbr in solver.tsInfo:
+            if txmbr.ts_state in ('u', 'i'):
+                txmbr.po.repoid = txmbr.po.repo.id = "TestRepository"
+            else:
+                txmbr.po.repoid = txmbr.po.repo.id = "installed"
+
+        res, msg = solver.buildTransaction()
+        return self.res[res], msg
+
+def setup_logging():
+    logging.basicConfig()    
+    plainformatter = logging.Formatter("%(message)s")    
+    console_stdout = logging.StreamHandler(sys.stdout)
+    console_stdout.setFormatter(plainformatter)
+    verbose = logging.getLogger("yum.verbose")
+    verbose.propagate = False
+    verbose.addHandler(console_stdout)
+    verbose.setLevel(2)
+
commit fa7da837e8da9a43cc4bbb2179339224d336cdbf
Author: Florian Festi <ffesti at redhat.com>
Date:   Mon Jun 23 17:23:24 2008 +0200

    Fix unicode traceback
    If error message contains non UTF-8 characters yum bails out in this line
    May be this should (also) be fixed in the rpmlib Python bindings.

diff --git a/cli.py b/cli.py
index 15fae6c..96e92af 100644
--- a/cli.py
+++ b/cli.py
@@ -403,7 +403,7 @@ class YumBaseCli(yum.YumBase, output.YumOutput):
         if len(tserrors) > 0:
             errstring = _('Transaction Check Error:\n')
             for descr in tserrors:
-                errstring += '  %s\n' % descr 
+                errstring += '  %s\n' % to_unicode(descr)
             
             raise yum.Errors.YumBaseError, errstring + '\n' + \
                  self.errorSummary(errstring)
commit f9e13855851feb25056ddbe4412415d09a854eed
Author: Seth Vidal <skvidal at fedoraproject.org>
Date:   Fri Jun 20 15:04:52 2008 -0400

    make sure url's end in '/' otherwise our urlparse.urljoin() won't be correct

diff --git a/yum/yumRepo.py b/yum/yumRepo.py
index b3c07ba..a286de1 100644
--- a/yum/yumRepo.py
+++ b/yum/yumRepo.py
@@ -528,6 +528,8 @@ class YumRepository(Repository, config.RepoConf):
         skipped = None
         for url in url_list:
             url = parser.varReplace(url, self.yumvar)
+            if url[-1] != '/':
+                url = url + '/'
             (s,b,p,q,f,o) = urlparse.urlparse(url)
             if s not in ['http', 'ftp', 'file', 'https']:
                 skipped = url
commit b0d33e52ed062d5a88f455b954a89dd825c82cd6
Author: Seth Vidal <skvidal at fedoraproject.org>
Date:   Wed Jun 18 15:16:32 2008 -0400

    move .gz and .bz2 comps file support into comps, out of yum.

diff --git a/yum/__init__.py b/yum/__init__.py
index d727dcd..5786816 100644
--- a/yum/__init__.py
+++ b/yum/__init__.py
@@ -571,10 +571,6 @@ class YumBase(depsolve.Depsolve):
                 
             vdebug1(_('Adding group file from repository: %s'), repo)
             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)
-                
             try:
                 self._comps.add(groupfile)
             except (Errors.GroupsError,Errors.CompsException), e:
diff --git a/yum/comps.py b/yum/comps.py
index 1dc303e..951789b 100755
--- a/yum/comps.py
+++ b/yum/comps.py
@@ -25,6 +25,8 @@ from Errors import CompsException
 # switch all compsexceptions to grouperrors after api break
 import fnmatch
 import re
+import gzip
+import bz2
 from yum.misc import to_unicode
 
 lang_attr = '{http://www.w3.org/XML/1998/namespace}lang'
@@ -51,7 +53,7 @@ class Group(object):
         self.optional_packages = {}
         self.default_packages = {}
         self.conditional_packages = {}
-        self.langonly = None ## what the hell is this?
+        self.langonly = None 
         self.groupid = None
         self.display_order = 1024
         self.installed = False
@@ -431,7 +433,12 @@ class Comps(object):
             
         if type(srcfile) == type('str'):
             # srcfile is a filename string
-            infile = open(srcfile, 'rt')
+            if srcfile.endswith('.gz'):
+                infile = gzip.open(srcfile, 'r')
+            elif srcfile.endswith('.bz2'):
+                infile = bz2.BZ2File(srcfile, 'r')
+            else:
+                infile = open(srcfile, 'rt')
         else:
             # srcfile is a file object
             infile = srcfile
commit f9f7e5006722b7c3d41b6aae01c9be91468f1649
Author: Seth Vidal <skvidal at fedoraproject.org>
Date:   Fri Jun 13 16:52:09 2008 -0400

    make sure we don't accidentally install any incompatible architectures (especially things
    like local-install src rpms)

diff --git a/yum/__init__.py b/yum/__init__.py
index 1d26d38..d727dcd 100644
--- a/yum/__init__.py
+++ b/yum/__init__.py
@@ -2501,6 +2501,13 @@ class YumBase(depsolve.Depsolve):
                 return result
             vdebug2(_('Examining %s: %s'), po.localpath, po)
 
+        # if by any chance we're a noncompat arch rpm - bail and throw out an error
+        # FIXME -our archlist should be stored somewhere so we don't have to
+        # do this: but it's not a config file sort of thing
+        if po.arch not in rpmUtils.arch.getArchList():
+            critical(_('Cannot add package %s to transaction. Not a compatible architecture: %s'), pkg, po.arch)
+            return result
+        
         # everything installed that matches the name
         installedByKey = self.rpmdb.searchNevra(name=po.name)
         # go through each package
commit fac204e4219f1a29ce01cd833e4ab383fe974fcb
Author: Jeremy Katz <katzj at redhat.com>
Date:   Thu Jun 12 15:04:55 2008 -0400

    Give a nicer error message if there are no groups configured (#446613)

diff --git a/yum/__init__.py b/yum/__init__.py
index 0232c79..1d26d38 100644
--- a/yum/__init__.py
+++ b/yum/__init__.py
@@ -1716,6 +1716,9 @@ class YumBase(depsolve.Depsolve):
         
         installed = []
         available = []
+
+        if self.comps.compscount == 0:
+            raise Errors.GroupsError, _('No group data available for configured repositories')
         
         for grp in self.comps.groups:
             if grp.installed:
commit 2aa42053c55f1191dd8af91bf95076cc8bc77b4b
Author: Jeremy Katz <katzj at redhat.com>
Date:   Thu Jun 12 14:43:29 2008 -0400

    Log formatters use localized bits, but logs should use C locale (#433091)

diff --git a/yummain.py b/yummain.py
index 15b505d..2935fb6 100755
--- a/yummain.py
+++ b/yummain.py
@@ -38,6 +38,8 @@ def main(args):
     # does setlocale(LC_CTYPE, "")
     try:
         locale.setlocale(locale.LC_ALL, '')
+        # set time to C so that we output sane things in the logs (#433091)
+        locale.setlocale(locale.LC_TIME, 'C')
     except locale.Error, e:
         # default to C locale if we get a failure.
         print >> sys.stderr, 'Failed to set locale, defaulting to C'
commit e49c53a2e831dce43b2b1492177a589753117552
Author: Tim Lauridsen <tla at rasmil.dk>
Date:   Thu Jun 12 12:40:58 2008 +0200

    Cleanup some typo's in EasyLogger

diff --git a/yum/logginglevels.py b/yum/logginglevels.py
index 3e00a4e..8b1d233 100644
--- a/yum/logginglevels.py
+++ b/yum/logginglevels.py
@@ -249,7 +249,7 @@ class EasyLogger:
 
         now = time.time()
         out = msg % args
-        self.debug("%s: time=%.4f" (out, now - old_tm))
+        self.debug("%s: time=%.4f" % (out, now - oldtm))
 
     def debug1(self, msg, *args):
         """ Log a message as log.DEBUG_1. """
commit 90845c15d260d7916aa79800ccf054bed7ed81e3
Author: James Antill <james at and.org>
Date:   Thu Jun 12 02:26:10 2008 -0400

    Fix the stupid namespace import mismatches

diff --git a/cli.py b/cli.py
index f5e4767..15fae6c 100644
--- a/cli.py
+++ b/cli.py
@@ -167,10 +167,10 @@ class YumBaseCli(yum.YumBase, output.YumOutput):
         root = self.optparser.getRoot(opts)
 
         if opts.quiet:
-            opts.debuglevel = logginglevels.DEBUG_QUIET_LEVEL
+            opts.debuglevel = yum.logginglevels.DEBUG_QUIET_LEVEL
         if opts.verbose:
-            opts.debuglevel = logginglevels.DEBUG_VERBOSE_LEVEL
-            opts.errorlevel = logginglevels.ERROR_VERBOSE_LEVEL
+            opts.debuglevel = yum.logginglevels.DEBUG_VERBOSE_LEVEL
+            opts.errorlevel = yum.logginglevels.ERROR_VERBOSE_LEVEL
        
         # Read up configuration options and initialise plugins
         try:
diff --git a/yum/config.py b/yum/config.py
index b2d5d59..01604a3 100644
--- a/yum/config.py
+++ b/yum/config.py
@@ -31,6 +31,7 @@ from iniparse.compat import ParsingError
 import rpmUtils.transaction
 import rpmUtils.arch
 import Errors
+import logginglevels
 
 class Option(object):
     '''
commit ea5fe7201097c0507bcb1fc9d18c43f8d3c83ce0
Author: James Antill <james at and.org>
Date:   Thu Jun 12 02:10:38 2008 -0400

    Remove self.logger and self.verbose_logger from just __init__

diff --git a/yum/__init__.py b/yum/__init__.py
index 36a99c2..0232c79 100644
--- a/yum/__init__.py
+++ b/yum/__init__.py
@@ -211,7 +211,7 @@ class YumBase(depsolve.Depsolve):
         
         
         self.doFileLogSetup(self.conf.uid, self.conf.logfile)
-        self.verbose_logger.debug('Config time: %0.3f' % (time.time() - conf_st))
+        vdebug_tm(conf_st, 'Config time')
         self.plugins.run('init')
         return self._conf
         
@@ -262,14 +262,14 @@ class YumBase(depsolve.Depsolve):
                 break
 
             if bad:
-                self.logger.warning("Bad id for repo: %s, byte = %s %d" %
-                                    (section, bad, section.find(byte)))
+                warning("Bad id for repo: %s, byte = %s %d",
+                        section, bad, section.find(byte))
                 continue
 
             try:
                 thisrepo = self.readRepoConfig(parser, section)
             except (Errors.RepoError, Errors.ConfigError), e:
-                self.logger.warning(e)
+                warning(e)
                 continue
             else:
                 thisrepo.repo_config_age = repo_age
@@ -283,7 +283,7 @@ class YumBase(depsolve.Depsolve):
             try:
                 self._repos.add(thisrepo)
             except Errors.RepoError, e:
-                self.logger.warning(e)
+                warning(e)
         
     def getReposFromConfig(self):
         """read in repositories from config main and .repo files"""
@@ -319,8 +319,9 @@ class YumBase(depsolve.Depsolve):
         # Ensure that the repo name is set
         if not repo.name:
             repo.name = section
-            self.logger.error(_('Repository %r is missing name in configuration, '
-                    'using id') % section)
+            # FIXME: Use critical? or exception?
+            log.error(_('Repository %r is missing name in configuration, '
+                        'using id'), section)
 
         # Set attributes not from the config file
         repo.basecachedir = self.conf.cachedir
@@ -372,9 +373,9 @@ class YumBase(depsolve.Depsolve):
 
         if self._rpmdb is None:
             rpmdb_st = time.time()
-            self.verbose_logger.debug(_('Reading Local RPMDB'))
+            vdebug(_('Reading Local RPMDB'))
             self._rpmdb = rpmsack.RPMDBPackageSack(root=self.conf.installroot)
-            self.verbose_logger.debug('rpmdb time: %0.3f' % (time.time() - rpmdb_st))
+            vdebug_tm(rpmdb_st, 'rpmdb time')
         return self._rpmdb
 
     def closeRpmDB(self):
@@ -402,7 +403,7 @@ class YumBase(depsolve.Depsolve):
         if doSetup:
             repo_st = time.time()        
             self._repos.doSetup(thisrepo)
-            self.verbose_logger.debug('repo time: %0.3f' % (time.time() - repo_st))        
+            vdebug_tm(repo_st, 'repo time')
         return self._repos
 
     def _delRepos(self):
@@ -427,7 +428,7 @@ class YumBase(depsolve.Depsolve):
         else:
             repos = self.repos.findRepos(thisrepo)
         
-        self.verbose_logger.debug(_('Setting up Package Sacks'))
+        vdebug(_('Setting up Package Sacks'))
         sack_st = time.time()
         if not archlist:
             archlist = rpmUtils.arch.getArchList()
@@ -454,7 +455,7 @@ class YumBase(depsolve.Depsolve):
 
         # now go through and kill pkgs based on pkg.repo.cost()
         self.costExcludePackages()
-        self.verbose_logger.debug('pkgsack time: %0.3f' % (time.time() - sack_st))
+        vdebug_tm(sack_st, 'pkgsack time')
         return self._pkgSack
     
     
@@ -488,7 +489,7 @@ class YumBase(depsolve.Depsolve):
         if self._up:
             return self._up
         
-        self.verbose_logger.debug(_('Building updates object'))
+        vdebug(_('Building updates object'))
 
         up_st = time.time()
 
@@ -499,23 +500,23 @@ class YumBase(depsolve.Depsolve):
         if self.conf.obsoletes:
             obs_init = time.time()    
             self._up.rawobsoletes = self.pkgSack.returnObsoletes(newest=True)
-            self.verbose_logger.debug('up:Obs Init time: %0.3f' % (time.time() - obs_init))
+            vdebug_tm(obs_init, 'up:Obs Init time')
             
         self._up.exactarch = self.conf.exactarch
         self._up.exactarchlist = self.conf.exactarchlist
         up_pr_st = time.time()
         self._up.doUpdates()
-        self.verbose_logger.debug('up:simple updates time: %0.3f' % (time.time() - up_pr_st))
+        vdebug_tm(up_pr_st, 'up:simple updates time')
 
         if self.conf.obsoletes:
             obs_st = time.time()
             self._up.doObsoletes()
-            self.verbose_logger.debug('up:obs time: %0.3f' % (time.time() - obs_st))
+            vdebug_tm(obs_st, 'up:obs time')
 
         cond_up_st = time.time()                    
         self._up.condenseUpdates()
-        self.verbose_logger.debug('up:condense time: %0.3f' % (time.time() - cond_up_st))
-        self.verbose_logger.debug('updates time: %0.3f' % (time.time() - up_st))        
+        vdebug_tm(cond_up_st, 'up:condense time')
+        vdebug_tm(up_st, 'updates time')
         return self._up
     
     def doGroupSetup(self):
@@ -543,7 +544,7 @@ class YumBase(depsolve.Depsolve):
             return self._comps
 
         group_st = time.time()            
-        self.verbose_logger.debug(_('Getting group metadata'))
+        vdebug(_('Getting group metadata'))
         reposWithGroups = []
         self.repos.doSetup()
         for repo in self.repos.listGroupsEnabled():
@@ -568,8 +569,7 @@ class YumBase(depsolve.Depsolve):
             if repo.groups_added: # already added the groups from this repo
                 continue
                 
-            self.verbose_logger.log(logginglevels.DEBUG_1,
-                _('Adding group file from repository: %s'), repo)
+            vdebug1(_('Adding group file from repository: %s'), repo)
             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'):
@@ -579,7 +579,7 @@ class YumBase(depsolve.Depsolve):
                 self._comps.add(groupfile)
             except (Errors.GroupsError,Errors.CompsException), e:
                 msg = _('Failed to add groups file for repository: %s - %s') % (repo, str(e))
-                self.logger.critical(msg)
+                critical(msg)
             else:
                 repo.groups_added = True
 
@@ -587,7 +587,7 @@ class YumBase(depsolve.Depsolve):
             raise Errors.GroupsError, _('No Groups Available in any repository')
 
         self._comps.compile(self.rpmdb.simplePkgList())
-        self.verbose_logger.debug('group time: %0.3f' % (time.time() - group_st))                
+        vdebug_tm(group_st, 'group time')
         return self._comps
     
     # properties so they auto-create themselves with defaults
@@ -634,8 +634,7 @@ class YumBase(depsolve.Depsolve):
                     necessary = True
 
         if necessary:
-            msg = _('Importing additional filelist information')
-            self.verbose_logger.log(logginglevels.INFO_2, msg)
+            vinfo2(_('Importing additional filelist information'))
             self.repos.populateSack(mdtype='filelists')
            
     def buildTransaction(self):
@@ -664,7 +663,7 @@ class YumBase(depsolve.Depsolve):
         if self.conf.skip_broken and rescode==1:
             rescode, restring = self._skipPackagesWithProblems(rescode, restring)
 
-        self.verbose_logger.debug('Depsolve time: %0.3f' % (time.time() - ds_st))
+        vdebug_tm(ds_st, 'Depsolve time')
         return rescode, restring
 
     def _skipPackagesWithProblems(self, rescode, restring):
@@ -686,7 +685,7 @@ class YumBase(depsolve.Depsolve):
         orig_restring = restring    # Keep the old error messages
         while len(self.po_with_problems) > 0 and rescode == 1:
             count += 1
-            self.verbose_logger.debug(_("Skip-broken round %i"), count)
+            vdebug(_("Skip-broken round %i"), count)
             depTree = self._buildDepTree()
             startTs = set(self.tsInfo)
             toRemove = set()
@@ -709,16 +708,15 @@ class YumBase(depsolve.Depsolve):
             if startTs-endTs == set():
                 break    # bail out
         if rescode != 1:
-            self.verbose_logger.debug(_("Skip-broken took %i rounds "), count)
-            self.verbose_logger.info(_('\nPackages skipped because of dependency problems:'))
+            vdebug(_("Skip-broken took %i rounds "), count)
+            vinfo(_('\nPackages skipped because of dependency problems:'))
             skipped_list = [p for p in skipped_po]
             skipped_list.sort()
             for po in skipped_list:
-                msg = _("    %s from %s") % (str(po),po.repo.id)
-                self.verbose_logger.info(msg)
+                vinfo(_("    %s from %s"), str(po),po.repo.id)
         else:
             # If we cant solve the problems the show the original error messages.
-            self.verbose_logger.info("Skip-broken could not solve problems")
+            vinfo("Skip-broken could not solve problems")
             return 1, orig_restring
         
         return rescode, restring
@@ -796,7 +794,7 @@ class YumBase(depsolve.Depsolve):
             pass
         elif len(errors) == 0:
             errstring = _('Warning: scriptlet or other non-fatal errors occurred during transaction.')
-            self.verbose_logger.debug(errstring)
+            vdebug(errstring)
         else:
             raise Errors.YumBaseError, errors
                           
@@ -810,7 +808,7 @@ class YumBase(depsolve.Depsolve):
                     try:
                         os.unlink(fn)
                     except (IOError, OSError), e:
-                        self.logger.critical(_('Failed to remove transaction file %s') % fn)
+                        critical(_('Failed to remove transaction file %s'), fn)
 
         self.plugins.run('posttrans')
     
@@ -850,8 +848,8 @@ class YumBase(depsolve.Depsolve):
             #print '%s : %s : %s' % (pkgs[0], pkgs[0].repo, pkgs[0].repo.cost)
             for pkg in pkgs[1:]:
                 if pkg.repo.cost > lowcost:
-                    msg = _('excluding for cost: %s from %s') % (pkg, pkg.repo.id)
-                    self.verbose_logger.log(logginglevels.DEBUG_3, msg)
+                    vdebug3(_('excluding for cost: %s from %s'),
+                            pkg, pkg.repo.id)
                     pkg.repo.sack.delPackage(pkg)
             
 
@@ -881,21 +879,20 @@ class YumBase(depsolve.Depsolve):
             return
 
         if not repo:
-            self.verbose_logger.log(logginglevels.INFO_2, _('Excluding Packages in global exclude list'))
+            vinfo2(_('Excluding Packages in global exclude list'))
         else:
-            self.verbose_logger.log(logginglevels.INFO_2, _('Excluding Packages from %s'),
-                repo.name)
+            vinfo2(_('Excluding Packages from %s'), repo.name)
 
         pkgs = self._pkgSack.returnPackages(repoid, patterns=excludelist)
         exactmatch, matched, unmatched = \
            parsePackages(pkgs, excludelist, casematch=1, unique='repo-pkgkey')
 
         for po in exactmatch + matched:
-            self.verbose_logger.debug('Excluding %s', po)
+            vdebug('Excluding %s', po)
             po.repo.sack.delPackage(po)
             
         
-        self.verbose_logger.log(logginglevels.INFO_2, 'Finished')
+        vinfo2('Finished')
 
     def includePackages(self, repo):
         """removes packages from packageSacks based on list of packages, to include.
@@ -910,22 +907,21 @@ class YumBase(depsolve.Depsolve):
         exactmatch, matched, unmatched = \
            parsePackages(pkglist, includelist, casematch=1)
         
-        self.verbose_logger.log(logginglevels.INFO_2,
-            _('Reducing %s to included packages only'), repo.name)
+        vinfo2(_('Reducing %s to included packages only'), repo.name)
         rmlist = []
         
         for po in pkglist:
             if po in exactmatch + matched:
-                self.verbose_logger.debug(_('Keeping included package %s'), po)
+                vdebug(_('Keeping included package %s'), po)
                 continue
             else:
                 rmlist.append(po)
         
         for po in rmlist:
-            self.verbose_logger.debug(_('Removing unmatched package %s'), po)
+            vdebug(_('Removing unmatched package %s'), po)
             po.repo.sack.delPackage(po)
             
-        self.verbose_logger.log(logginglevels.INFO_2, _('Finished'))
+        vinfo2(_('Finished'))
         
     def doLock(self, lockfile = YUM_PID_FILE):
         """perform the yum locking, raise yum-based exceptions, not OSErrors"""
@@ -1087,7 +1083,7 @@ class YumBase(depsolve.Depsolve):
                         adderror(po, _('package fails checksum but caching is '
                             'enabled for %s') % po.repo.id)
                 else:
-                    self.verbose_logger.debug(_("using local copy of %s") %(po,))
+                    vdebug(_("using local copy of %s"), po)
                     continue
                         
             remote_pkgs.append(po)
@@ -1294,11 +1290,10 @@ class YumBase(depsolve.Depsolve):
             try:
                 os.unlink(fn)
             except OSError, e:
-                self.logger.warning(_('Cannot remove %s'), fn)
+                warning(_('Cannot remove %s'), fn)
                 continue
             else:
-                self.verbose_logger.log(logginglevels.DEBUG_4,
-                    _('%s removed'), fn)
+                vdebug4(_('%s removed'), fn)
         
     def cleanHeaders(self):
         exts = ['hdr']
@@ -1334,11 +1329,10 @@ class YumBase(depsolve.Depsolve):
             try:
                 os.unlink(item)
             except OSError, e:
-                self.logger.critical(_('Cannot remove %s file %s'), filetype, item)
+                critical(_('Cannot remove %s file %s'), filetype, item)
                 continue
             else:
-                self.verbose_logger.log(logginglevels.DEBUG_4,
-                    _('%s file %s removed'), filetype, item)
+                vdebug4(_('%s file %s removed'), filetype, item)
                 removed+=1
         msg = _('%d %s files removed') % (removed, filetype)
         return 0, [msg]
@@ -1393,14 +1387,13 @@ class YumBase(depsolve.Depsolve):
                                                    ver=v, rel=r)
                 if len(matches) > 1:
                     updates.append(matches[0])
-                    self.verbose_logger.log(logginglevels.DEBUG_1,
-                        _('More than one identical match in sack for %s'), 
-                        matches[0])
+                    vdebug1(_('More than one identical match in sack for %s'), 
+                            matches[0])
                 elif len(matches) == 1:
                     updates.append(matches[0])
                 else:
-                    self.verbose_logger.log(logginglevels.DEBUG_1,
-                        _('Nothing matches %s.%s %s:%s-%s from update'), n,a,e,v,r)
+                    vdebug1(_('Nothing matches %s.%s %s:%s-%s from update'),
+                            n,a,e,v,r)
 
         # installed only
         elif pkgnarrow == 'installed':
@@ -1629,12 +1622,10 @@ class YumBase(depsolve.Depsolve):
             else:
                 usedDepString = False
                 where = self.pkgSack.searchAll(arg, False)
-            self.verbose_logger.log(logginglevels.DEBUG_1,
-                _('Searching %d packages'), len(where))
+            vdebug1(_('Searching %d packages'), len(where))
             
             for po in where:
-                self.verbose_logger.log(logginglevels.DEBUG_2,
-                    _('searching package %s'), po)
+                vdebug2(_('searching package %s'), po)
                 tmpvalues = []
                 
                 if usedDepString:
@@ -1645,15 +1636,13 @@ class YumBase(depsolve.Depsolve):
                     tmpvalues.append(arg)
                     
                 if isglob:
-                    self.verbose_logger.log(logginglevels.DEBUG_2,
-                        _('searching in file entries'))
+                    vdebug2(_('searching in file entries'))
                     for thisfile in po.dirlist + po.filelist + po.ghostlist:
                         if fnmatch.fnmatch(thisfile, arg):
                             tmpvalues.append(thisfile)
                 
 
-                self.verbose_logger.log(logginglevels.DEBUG_2,
-                    _('searching in provides entries'))
+                vdebug2(_('searching in provides entries'))
                 for (p_name, p_flag, (p_e, p_v, p_r)) in po.provides:
                     prov = misc.prco_tuple_to_string((p_name, p_flag, (p_e, p_v, p_r)))
                     if not usedDepString:
@@ -1782,9 +1771,8 @@ class YumBase(depsolve.Depsolve):
                         try:
                             txmbr.groups.remove(grpid)
                         except ValueError:
-                            self.verbose_logger.log(logginglevels.DEBUG_1,
-                               _("package %s was not marked in group %s"), txmbr.po,
-                                grpid)
+                            vdebug1(_("package %s was not marked in group %s"),
+                                    txmbr.po, grpid)
                             continue
                         
                         # if there aren't any other groups mentioned then remove the pkg
@@ -1821,13 +1809,13 @@ class YumBase(depsolve.Depsolve):
                 pkgs.extend(thisgroup.optional_packages)
 
             for pkg in pkgs:
-                self.verbose_logger.log(logginglevels.DEBUG_2,
-                    _('Adding package %s from group %s'), pkg, thisgroup.groupid)
+                vdebug2(_('Adding package %s from group %s'),
+                        pkg, thisgroup.groupid)
                 try:
                     txmbrs = self.install(name = pkg)
                 except Errors.InstallError, e:
-                    self.verbose_logger.debug(_('No package named %s available to be installed'),
-                        pkg)
+                    vdebug(_('No package named %s available to be installed'),
+                           pkg)
                 else:
                     txmbrs_used.extend(txmbrs)
                     for txmbr in txmbrs:
@@ -1876,9 +1864,8 @@ class YumBase(depsolve.Depsolve):
                         try: 
                             txmbr.groups.remove(grpid)
                         except ValueError:
-                            self.verbose_logger.log(logginglevels.DEBUG_1,
-                               _("package %s was not marked in group %s"), txmbr.po,
-                                grpid)
+                            vdebug1(_("package %s was not marked in group %s"),
+                                    txmbr.po, grpid)
                             continue
                         
                         # if there aren't any other groups mentioned then remove the pkg
@@ -2135,13 +2122,13 @@ class YumBase(depsolve.Depsolve):
                 
                 if len(unmatched) > 0:
                     arg = unmatched[0] #only one in there
-                    self.verbose_logger.debug(_('Checking for virtual provide or file-provide for %s'), 
-                        arg)
+                    vdebug(_('Checking for virtual provide or file-provide for %s'), 
+                           arg)
 
                     try:
                         mypkgs = self.returnPackagesByDep(arg)
                     except yum.Errors.YumBaseError, e:
-                        self.logger.critical(_('No Match for argument: %s') % arg)
+                        critical(_('No Match for argument: %s'), arg)
                     else:
                         if mypkgs:
                             pkgs.extend(self.bestPackagesFromList(mypkgs))
@@ -2209,8 +2196,7 @@ class YumBase(depsolve.Depsolve):
                 found = False
                 for txmbr in self.tsInfo.getMembersWithState(po.pkgtup, TS_INSTALL_STATES):
                     found = True
-                    self.verbose_logger.log(logginglevels.DEBUG_1,
-                        _('Package: %s  - already in transaction set'), po)
+                    vdebug1(_('Package: %s  - already in transaction set'), po)
                     result.addMember(txmbr) # XXX ERASE members???
                 if found:
                     continue
@@ -2224,14 +2210,14 @@ class YumBase(depsolve.Depsolve):
             # make sure it's not already installed
             if self.rpmdb.contains(po=po):
                 if not self.tsInfo.getMembersWithState(po.pkgtup, TS_REMOVE_STATES):
-                    self.verbose_logger.warning(_('Package %s already installed and latest version'), po)
+                    vwarning(_('Package %s already installed and latest version'), po)
                     continue
 
             # make sure we don't have a name.arch of this already installed
             # if so pass it to update b/c it should be able to figure it out
             if self.rpmdb.contains(name=po.name, arch=po.arch) and not self.allowedMultipleInstalls(po):
                 if not self.tsInfo.getMembersWithState(po.pkgtup, TS_REMOVE_STATES):
-                    self.verbose_logger.warning(_('Package matching %s already installed. Checking for update.'), po)            
+                    vwarning(_('Package matching %s already installed. Checking for update.'), po)            
                     res = self.update(po=po)
                     result.add(res)
                     continue
@@ -2242,7 +2228,7 @@ class YumBase(depsolve.Depsolve):
             if thispkgobsdict.has_key(po.pkgtup):
                 obsoleting = thispkgobsdict[po.pkgtup][0]
                 obsoleting_pkg = self.getPackageObject(obsoleting)
-                self.verbose_logger.warning(_('Package %s is obsoleted by %s, trying to install %s instead'),
+                vwarning(_('Package %s is obsoleted by %s, trying to install %s instead'),
                     po.name, obsoleting_pkg.name, obsoleting_pkg)               
                 self.install(po=obsoleting_pkg) # XXX result???
                 continue
@@ -2275,7 +2261,7 @@ class YumBase(depsolve.Depsolve):
 
         result = transactioninfo.AdditionResult()
         if not po and not kwargs: # update everything (the easy case)
-            self.verbose_logger.log(logginglevels.DEBUG_2, _('Updating Everything'))
+            vdebug2(_('Updating Everything'))
             for (obsoleting, installed) in obsoletes:
                 obsoleting_pkg = self.getPackageObject(obsoleting)
                 installed_pkg =  self.rpmdb.searchPkgTuple(installed)[0]
@@ -2287,7 +2273,7 @@ class YumBase(depsolve.Depsolve):
                 
             for (new, old) in updates:
                 if self.tsInfo.isObsoleted(pkgtup=old):
-                    self.verbose_logger.log(logginglevels.DEBUG_2, _('Not Updating Package that is already obsoleted: %s.%s %s:%s-%s'), 
+                    vdebug2(_('Not Updating Package that is already obsoleted: %s.%s %s:%s-%s'), 
                         old)
                 else:
                     updating_pkg = self.getPackageObject(new)
@@ -2378,7 +2364,7 @@ class YumBase(depsolve.Depsolve):
                         res.primary.setAsDep(requiringPo)
                     result.add(res)
                     if self.tsInfo.isObsoleted(obsoleted):
-                        self.verbose_logger.log(logginglevels.DEBUG_2, _('Package is already obsoleted: %s.%s %s:%s-%s'), obsoleted)
+                        vdebug2(_('Package is already obsoleted: %s.%s %s:%s-%s'), obsoleted)
                     else:
                         res = self.tsInfo.addObsoleted(obsoleted_pkg, available_pkg)
                         result.add(res)
@@ -2387,8 +2373,8 @@ class YumBase(depsolve.Depsolve):
             for updating in self.up.updatesdict.get(installed_pkg.pkgtup, []):
                 updating_pkg = self.getPackageObject(updating)
                 if self.tsInfo.isObsoleted(installed_pkg.pkgtup):
-                    self.verbose_logger.log(logginglevels.DEBUG_2, _('Not Updating Package that is already obsoleted: %s.%s %s:%s-%s'), 
-                                            installed_pkg.pkgtup)                                               
+                    vdebug2(_('Not Updating Package that is already obsoleted: %s.%s %s:%s-%s'), 
+                            installed_pkg.pkgtup)
                 else:
                     res = self.tsInfo.addUpdate(updating_pkg, installed_pkg)
                     if requiringPo:
@@ -2399,11 +2385,11 @@ class YumBase(depsolve.Depsolve):
         for available_pkg in availpkgs:
             for updated in self.up.updating_dict.get(available_pkg.pkgtup, []):
                 if self.tsInfo.isObsoleted(updated):
-                    self.verbose_logger.log(logginglevels.DEBUG_2, _('Not Updating Package that is already obsoleted: %s.%s %s:%s-%s'), 
-                                            updated)
+                    vdebug2(_('Not Updating Package that is already obsoleted: %s.%s %s:%s-%s'), 
+                            updated)
                 elif self.tsInfo.getMembersWithState(updated, [TS_UPDATED]):
-                    self.verbose_logger.log(logginglevels.DEBUG_2, _('Not Updating Package that is already updated: %s.%s %s:%s-%s'), 
-                                            updated)
+                    vdebug2(_('Not Updating Package that is already updated: %s.%s %s:%s-%s'), 
+                            updated)
                 
                 else:
                     updated_pkg =  self.rpmdb.searchPkgTuple(updated)[0]
@@ -2455,10 +2441,10 @@ class YumBase(depsolve.Depsolve):
                     try:
                         depmatches = self.returnInstalledPackagesByDep(arg)
                     except yum.Errors.YumBaseError, e:
-                        self.logger.critical(_('%s') % e)
+                        critical(_('%s'), e)
                     
                     if not depmatches:
-                        self.logger.critical(_('No Match for argument: %s') % arg)
+                        critical(_('No Match for argument: %s'), arg)
                     else:
                         pkgs.extend(depmatches)
                 
@@ -2474,7 +2460,7 @@ class YumBase(depsolve.Depsolve):
                     # probably just a kwarg of 'silence_warnings' or something
                     # b/c when this is called from groupRemove() it makes a lot of
                     # garbage noise
-                    self.logger.warning(_("No package matched to remove"))
+                    warning(_("No package matched to remove"))
 
         for po in pkgs:
             res = self.tsInfo.addErase(po)
@@ -2508,17 +2494,16 @@ class YumBase(depsolve.Depsolve):
             try:
                 po = YumLocalPackage(ts=self.rpmdb.readOnlyTS(), filename=pkg)
             except Errors.MiscError:
-                self.logger.critical(_('Cannot open file: %s. Skipping.'), pkg)
+                critical(_('Cannot open file: %s. Skipping.'), pkg)
                 return result
-            self.verbose_logger.log(logginglevels.INFO_2,
-                _('Examining %s: %s'), po.localpath, po)
+            vdebug2(_('Examining %s: %s'), po.localpath, po)
 
         # everything installed that matches the name
         installedByKey = self.rpmdb.searchNevra(name=po.name)
         # go through each package
         if len(installedByKey) == 0: # nothing installed by that name
             if updateonly:
-                self.logger.warning(_('Package %s not installed, cannot update it. Run yum install to install it instead.'), po.name)
+                warning(_('Package %s not installed, cannot update it. Run yum install to install it instead.'), po.name)
                 return result
             else:
                 installpkgs.append(po)
@@ -2551,24 +2536,21 @@ class YumBase(depsolve.Depsolve):
            toexc = exactmatch + matched
 
         if po in toexc:
-           self.verbose_logger.debug(_('Excluding %s'), po)
+           vdebug(_('Excluding %s'), po)
            return result
 
         for po in installpkgs:
-            self.verbose_logger.log(logginglevels.INFO_2,
-                _('Marking %s to be installed'), po.localpath)
+            vinfo2(_('Marking %s to be installed'), po.localpath)
             self.localPackages.append(po)
             result.add(self.install(po=po))
 
         for (po, oldpo) in updatepkgs:
-            self.verbose_logger.log(logginglevels.INFO_2,
-                _('Marking %s as an update to %s'), po.localpath, oldpo)
+            vinfo2(_('Marking %s as an update to %s'), po.localpath, oldpo)
             self.localPackages.append(po)
             result.add(self.tsInfo.addUpdate(po, oldpo))
 
         for po in donothingpkgs:
-            self.verbose_logger.log(logginglevels.INFO_2,
-                _('%s: does not update installed package.'), po.localpath)
+            vinfo2(_('%s: does not update installed package.'), po.localpath)
 
         return result
 
@@ -2596,8 +2578,8 @@ class YumBase(depsolve.Depsolve):
             # for now, banned and dropped.
             if self.allowedMultipleInstalls(item.po):
                 self.tsInfo.remove(item.pkgtup)
-                msg = _("Package %s is allowed multiple installs, skipping") % item.po
-                self.verbose_logger.log(logginglevels.INFO_2, msg)
+                vinfo2(_("Package %s is allowed multiple installs, skipping"),
+                       item.po)
                 continue
             
             members = self.install(name=item.name, arch=item.arch,
@@ -2650,7 +2632,7 @@ class YumBase(depsolve.Depsolve):
         ts = rpmUtils.transaction.TransactionWrapper(self.conf.installroot)
 
         for keyurl in keyurls:
-            self.logger.info(_('Retrieving GPG key from %s') % keyurl)
+            info(_('Retrieving GPG key from %s') % keyurl)
 
             # Go get the GPG key from the given URL
             try:
@@ -2676,12 +2658,13 @@ class YumBase(depsolve.Depsolve):
 
                 # Check if key is already installed
                 if misc.keyInstalled(ts, keyid, timestamp) >= 0:
-                    self.logger.info(_('GPG key at %s (0x%s) is already installed') % (
-                        keyurl, hexkeyid))
+                    info(_('GPG key at %s (0x%s) is already installed'),
+                         keyurl, hexkeyid)
                     continue
 
                 # Try installing/updating GPG key
-                self.logger.critical(_('Importing GPG key 0x%s "%s" from %s') % (hexkeyid, userid, keyurl.replace("file://","")))
+                critical(_('Importing GPG key 0x%s "%s" from %s'),
+                         hexkeyid, userid, keyurl.replace("file://",""))
                 rc = False
                 if self.conf.assumeyes:
                     rc = True
@@ -2702,7 +2685,7 @@ class YumBase(depsolve.Depsolve):
                           _('Key import failed (code %d)') % result
                 misc.import_key_to_pubring(rawkey, po.repo.cachedir)
                 
-                self.logger.info(_('Key imported successfully'))
+                info(_('Key imported successfully'))
                 key_installed = True
 
                 if not key_installed:
@@ -2716,7 +2699,7 @@ class YumBase(depsolve.Depsolve):
         # Check if the newly installed keys helped
         result, errmsg = self.sigCheckPkg(po)
         if result != 0:
-            self.logger.info(_("Import of key(s) didn't help, wrong key(s)?"))
+            info(_("Import of key(s) didn't help, wrong key(s)?"))
             raise Errors.YumBaseError, errmsg
 
     def _limit_installonly_pkgs(self):
@@ -2834,8 +2817,7 @@ class YumBase(depsolve.Depsolve):
         ''' Do the RPM test transaction '''
         # This can be overloaded by a subclass.    
         if self.conf.rpm_check_debug:
-            self.verbose_logger.log(logginglevels.INFO_2, 
-                 _('Running rpm_check_debug'))
+            vinfo2(_('Running rpm_check_debug'))
             msgs = self._run_rpm_check_debug()
             if msgs:
                 retmsgs = [_('ERROR with rpm_check_debug vs depsolve:')]
commit 869ae161bcf6ce79e3fd17105004c90c6a7f5c02
Author: James Antill <james at and.org>
Date:   Thu Jun 12 01:45:21 2008 -0400

     Hand merge of initial "kinda API breaking" logging.
    
      Mostly "full" but usable names.
      Add a level for a clean quiet/normal/verbose/debug* break.
      Add debug_tm() shortcut for timestamp based timing.
      Add constants to logging levels and get rid of magic numbers from elsewhere.
      Import everything into yum.* so plugins/etc. can use it easily
    
     Nothing uses the actual functions, yet.

diff --git a/cli.py b/cli.py
index dcb8e96..f5e4767 100644
--- a/cli.py
+++ b/cli.py
@@ -167,9 +167,10 @@ class YumBaseCli(yum.YumBase, output.YumOutput):
         root = self.optparser.getRoot(opts)
 
         if opts.quiet:
-            opts.debuglevel = 0
+            opts.debuglevel = logginglevels.DEBUG_QUIET_LEVEL
         if opts.verbose:
-            opts.debuglevel = opts.errorlevel = 6
+            opts.debuglevel = logginglevels.DEBUG_VERBOSE_LEVEL
+            opts.errorlevel = logginglevels.ERROR_VERBOSE_LEVEL
        
         # Read up configuration options and initialise plugins
         try:
diff --git a/yum/__init__.py b/yum/__init__.py
index 1ec3890..36a99c2 100644
--- a/yum/__init__.py
+++ b/yum/__init__.py
@@ -27,8 +27,6 @@ import errno
 import time
 import glob
 import fnmatch
-import logging
-import logging.config
 import operator
 import gzip
 
@@ -80,6 +78,25 @@ __version__ = '3.2.16'
 # multiple YumBase() objects.
 default_grabber.opts.user_agent += " yum/" + __version__
 
+# Setup "yum" logging APIs. Can use via. "import yum; yum.log() ... "
+log  = logginglevels.EasyLogger("yum.YumBase")
+vlog = logginglevels.EasyLogger("yum.verbose.YumBase")
+
+# Quick functions ... so everything isn't prefxied with log.
+(info, warn, critical)   = (log.info, log.warn, log.critical)
+(info1, info2, info3)    = (log.info2, log.info1, log.info3)
+(debug, debug_tm)        = (log.debug, log.debug_tm)
+(debug1, debug2)         = (log.debug1, log.debug2)
+(debug3, debug4)         = (log.debug3, log.debug4)
+
+# dito. above, but for "verbose"
+(vinfo, vwarn, vcritical)   = (vlog.info, vlog.warn, vlog.critical)
+(vinfo1, vinfo2, vinfo3)    = (vlog.info2, vlog.info1, vlog.info3)
+(vdebug, vdebug_tm)         = (vlog.debug, vlog.debug_tm)
+(vdebug1, vdebug2)          = (vlog.debug1, vlog.debug2)
+(vdebug3, vdebug4)          = (vlog.debug3, vlog.debug4)
+verbose                     = vlog.verbose
+
 class YumBase(depsolve.Depsolve):
     """This is a primary structure and base class. It houses the objects and
        methods needed to perform most things in yum. It is almost an abstract
@@ -94,8 +111,10 @@ class YumBase(depsolve.Depsolve):
         self._up = None
         self._comps = None
         self._pkgSack = None
-        self.logger = logging.getLogger("yum.YumBase")
-        self.verbose_logger = logging.getLogger("yum.verbose.YumBase")
+        # FIXME: backwards compat. with plugins etc., remove?
+        self.logger         = log.logger
+        self.verbose_logger = vlog.logger
+
         self._repos = RepoStorage(self)
 
         # Start with plugins disabled
@@ -474,7 +493,7 @@ class YumBase(depsolve.Depsolve):
         up_st = time.time()
 
         self._up = rpmUtils.updates.Updates(self.rpmdb.simplePkgList(), self.pkgSack.simplePkgList())
-        if self.conf.debuglevel >= 6:
+        if self.conf.debuglevel >= logginglevels.DEBUG_UPDATES_LEVEL:
             self._up.debug = 1
         
         if self.conf.obsoletes:
diff --git a/yum/config.py b/yum/config.py
index eca8200..b2d5d59 100644
--- a/yum/config.py
+++ b/yum/config.py
@@ -558,8 +558,12 @@ class StartupConf(BaseConfig):
     required early in the initialisation process or before the other [main]
     options can be parsed. 
     '''
-    debuglevel = IntOption(2, 0, 10)
-    errorlevel = IntOption(2, 0, 10)
+    debuglevel = IntOption(logginglevels.DEBUG_NORMAL_LEVEL,
+                           logginglevels.DEBUG_MIN_LEVEL,
+                           logginglevels.DEBUG_MAX_LEVEL)
+    errorlevel = IntOption(logginglevels.ERROR_NORMAL_LEVEL,
+                           logginglevels.ERROR_MIN_LEVEL,
+                           logginglevels.ERROR_MAX_LEVEL)
 
     distroverpkg = Option('redhat-release')
     installroot = Option('/')
diff --git a/yum/logginglevels.py b/yum/logginglevels.py
index ce7a92c..3e00a4e 100644
--- a/yum/logginglevels.py
+++ b/yum/logginglevels.py
@@ -23,10 +23,17 @@ import socket
 import sys
 import logging
 import logging.handlers
+import time
 
-INFO_1 = 19
-INFO_2 = 18
+# logging.info() == 20
+INFO    = logging.INFO # Quiet
+assert INFO == 20
+INFO_1  = 19
+INFO_2  = 18 # Normal
+INFO_3  = 17 # Verbose
 
+DEBUG   = logging.DEBUG
+assert DEBUG == 10
 DEBUG_1 = 9
 DEBUG_2 = 8
 DEBUG_3 = 7
@@ -34,6 +41,7 @@ DEBUG_4 = 6
 
 logging.addLevelName(INFO_1, "INFO_1")
 logging.addLevelName(INFO_2, "INFO_2")
+logging.addLevelName(INFO_2, "INFO_3")
 
 logging.addLevelName(DEBUG_1, "DEBUG_1")
 logging.addLevelName(DEBUG_2, "DEBUG_2")
@@ -47,17 +55,37 @@ logging.raiseExceptions = False
 
 syslog = None
 
+DEBUG_QUIET_LEVEL   = 0
+DEBUG_NORMAL_LEVEL  = 2
+DEBUG_VERBOSE_LEVEL = 3
+DEBUG_DEBUG0_LEVEL  = 4
+DEBUG_DEBUG1_LEVEL  = 5
+DEBUG_DEBUG2_LEVEL  = 6
+DEBUG_DEBUG3_LEVEL  = 7
+DEBUG_DEBUG4_LEVEL  = 8
+DEBUG_UPDATES_LEVEL = DEBUG_DEBUG3_LEVEL
+
+DEBUG_MIN_LEVEL     = 0
+DEBUG_MAX_LEVEL     = DEBUG_DEBUG4_LEVEL
+
+ERROR_NORMAL_LEVEL  = 1
+ERROR_VERBOSE_LEVEL = 2
+
+ERROR_MIN_LEVEL     = 0
+ERROR_MAX_LEVEL     = ERROR_VERBOSE_LEVEL
+
 def logLevelFromErrorLevel(error_level):
     """ Convert an old-style error logging level to the new style. """
-    error_table = { -1 : __NO_LOGGING, 0 : logging.CRITICAL, 1 : logging.ERROR,
-        2 : logging.WARNING}
+    error_table = { -1 : __NO_LOGGING,
+                    0 : logging.CRITICAL, 1 : logging.ERROR, 2 :logging.WARNING}
     
     return __convertLevel(error_level, error_table)
 
 def logLevelFromDebugLevel(debug_level):
     """ Convert an old-style debug logging level to the new style. """
-    debug_table = {-1 : __NO_LOGGING, 0 : logging.INFO, 1 : INFO_1, 2 : INFO_2,
-        3 : logging.DEBUG, 4 : DEBUG_1, 5 : DEBUG_2, 6 : DEBUG_3, 7 : DEBUG_4}
+    debug_table = {-1 : __NO_LOGGING,
+                   0 : INFO,  1 : INFO_1,  2 : INFO_2,  3 : INFO_3,
+                   4 : DEBUG, 5 : DEBUG_1, 6 : DEBUG_2, 7 : DEBUG_3, 8 :DEBUG_4}
 
     return __convertLevel(debug_level, debug_table)
 
@@ -123,7 +151,7 @@ def doLoggingSetup(debuglevel, errorlevel):
     logger.addHandler(console_stderr)
    
     filelogger = logging.getLogger("yum.filelogging")
-    filelogger.setLevel(logging.INFO)
+    filelogger.setLevel(INFO)
     filelogger.propagate = False
 
     log_dev = '/dev/log'
@@ -167,3 +195,86 @@ def setLoggingApp(app):
     if syslog:
         syslogformatter = logging.Formatter("yum(%s): "% (app,) + "%(message)s")
         syslog.setFormatter(syslogformatter)
+
+class EasyLogger:
+    """ Smaller to use logger for yum, wraps "logging.getLogger" module. """
+
+    def __init__(self, name="main"):
+        self.name   = name
+        self.logger = logging.getLogger(name)
+
+    def info(self, msg, *args):
+        """ Log a message as info. Output even in quiet mode. """
+
+        self.logger.info(msg % args)
+
+    def info1(self, msg, *args):
+        """ Log a message as log.INFO_1. Output in normal/verbose mode. """
+
+        self.logger.log(INFO_1, msg % args)
+
+    def info2(self, msg, *args):
+        """ Log a message as log.INFO_2. Output in normal/verbose mode. """
+
+        self.logger.log(INFO_2, msg % args)
+
+    def info3(self, msg, *args):
+        """ Log a message as log.INFO_3. Output in verbose mode. """
+
+        self.logger.log(INFO_3, msg % args)
+
+    def warn(self, msg, *args):
+        """ Log a message as warning. """
+
+        self.logger.warning(msg % args)
+
+    # NOTE: Is "error" worthwhile, it's either warning, critical or an exception
+    def error(self, msg, *args):
+        """ Log a message as error. """
+
+        self.logger.error(msg % args)
+
+    def critical(self, msg, *args):
+        """ Log a message as critical. """
+
+        self.logger.critical(msg % args)
+
+    def debug(self, msg, *args):
+        """ Log a message as debug. """
+
+        self.logger.debug(msg % args)
+
+    def debug_tm(self, oldtm, msg, *args):
+        """ Log a message as debug, with a timestamp delta. """
+
+        now = time.time()
+        out = msg % args
+        self.debug("%s: time=%.4f" (out, now - old_tm))
+
+    def debug1(self, msg, *args):
+        """ Log a message as log.DEBUG_1. """
+
+        self.logger.log(DEBUG_1, msg % args)
+
+    def debug2(self, msg, *args):
+        """ Log a message as log.DEBUG_2. """
+
+        self.logger.log(DEBUG_2, msg % args)
+
+    def debug3(self, msg, *args):
+        """ Log a message as log.DEBUG_3. """
+
+        self.logger.log(DEBUG_3, msg % args)
+
+    def debug4(self, msg, *args):
+        """ Log a message as log.DEBUG_4. """
+
+        self.logger.log(DEBUG_4, msg % args)
+
+    def isEnabledFor(self, level):
+        """ Wrap self.logger.isEnabledFor() """
+        return self.logger.isEnabledFor(level)
+
+    def verbose(self):
+        """ Is this logger in "yum verbose" mode. """
+        return self.isEnabledFor(INFO_3)
commit fe3e3da989f112f9aaf4f2787d5abb20311684ed
Author: Seth Vidal <skvidal at fedoraproject.org>
Date:   Wed Jun 11 12:51:33 2008 -0400

    commit comment correction for config.py from Kulbir Saini

diff --git a/yum/config.py b/yum/config.py
index 2881709..eca8200 100644
--- a/yum/config.py
+++ b/yum/config.py
@@ -832,10 +832,8 @@ def writeRawRepoFile(repo,only=None):
     fp.close()
 
 #def main():
-#    mainconf = readMainConfig('/etc/yum/yum.conf', '/')
-#    repoconf = readRepoConfig(mainconf.cfg, 'core', mainconf)
-#
-#    print `repoconf.name`
+#    mainconf = readMainConfig(readStartupConfig('/etc/yum/yum.conf', '/'))
+#    print mainconf.cachedir
 #
 #if __name__ == '__main__':
 #    main()
commit d3042543daac4a536e066992cc3127b419ad3770
Author: Seth Vidal <skvidal at fedoraproject.org>
Date:   Wed Jun 11 10:12:01 2008 -0400

    de-api-compat it from yum-3.2.x

diff --git a/yum/__init__.py b/yum/__init__.py
index e0a927d..1ec3890 100644
--- a/yum/__init__.py
+++ b/yum/__init__.py
@@ -2641,7 +2641,7 @@ class YumBase(depsolve.Depsolve):
                                           unicode(str(e), 'UTF-8', 'replace'))
 
             # Parse the key
-            keys_info = misc.getgpgkeyinfo(rawkey, multiple=True)
+            keys_info = misc.getgpgkeyinfo(rawkey)
             
             for keyinfo in keys_info:
                 try: 
diff --git a/yum/misc.py b/yum/misc.py
index cc7221b..e6c22c2 100644
--- a/yum/misc.py
+++ b/yum/misc.py
@@ -233,10 +233,10 @@ def procgpgkey(rawkey):
     # Decode and return
     return base64.decodestring(block.getvalue())
 
-def getgpgkeyinfo(rawkey, multiple=False):
-    '''Return a dict of info for the given ASCII armoured key text
+def getgpgkeyinfo(rawkey):
+    '''Return a list of dicts of info for the given ASCII armoured key text
 
-    Returned dict will have the following keys: 'userid', 'keyid', 'timestamp'
+    Returned dicts will have the following keys: 'userid', 'keyid', 'timestamp'
 
     Will raise ValueError if there was a problem decoding the key.
     '''
@@ -275,10 +275,7 @@ def getgpgkeyinfo(rawkey, multiple=False):
                         info['timestamp'] = int(tspkt[1])
                         break
         key_info_objs.append(info)
-    if multiple:      
         return key_info_objs
-    else:
-        return key_info_objs[0]
         
 
 def keyIdToRPMVer(keyid):
commit 394772d9b3195e3ee33e5380515ef140c43b4d75
Author: Seth Vidal <skvidal at fedoraproject.org>
Date:   Mon Jun 9 13:08:14 2008 -0400

    make gpg key importing support muleiple keys per file

diff --git a/yum/__init__.py b/yum/__init__.py
index e26cd1d..e0a927d 100644
--- a/yum/__init__.py
+++ b/yum/__init__.py
@@ -2624,7 +2624,6 @@ class YumBase(depsolve.Depsolve):
                           of a key. Differs from askcb in that it gets passed
                           a dictionary so that we can expand the values passed.
         """
-        
         repo = self.repos.getRepo(po.repoid)
         keyurls = repo.gpgkey
         key_installed = False
@@ -2642,61 +2641,65 @@ class YumBase(depsolve.Depsolve):
                                           unicode(str(e), 'UTF-8', 'replace'))
 
             # Parse the key
-            try:
-                keyinfo = misc.getgpgkeyinfo(rawkey)
-                keyid = keyinfo['keyid']
-                hexkeyid = misc.keyIdToRPMVer(keyid).upper()
-                timestamp = keyinfo['timestamp']
-                userid = keyinfo['userid']
-                fingerprint = keyinfo['fingerprint']
-            except ValueError, e:
-                raise Errors.YumBaseError, \
-                      _('GPG key parsing failed: ') + str(e)
-
-            # Check if key is already installed
-            if misc.keyInstalled(ts, keyid, timestamp) >= 0:
-                self.logger.info(_('GPG key at %s (0x%s) is already installed') % (
-                    keyurl, hexkeyid))
-                continue
-
-            # Try installing/updating GPG key
-            self.logger.critical(_('Importing GPG key 0x%s "%s" from %s') % (hexkeyid, userid, keyurl.replace("file://","")))
-            rc = False
-            if self.conf.assumeyes:
-                rc = True
-            elif fullaskcb:
-                rc = fullaskcb({"po": po, "userid": userid,
-                                "hexkeyid": hexkeyid, "keyurl": keyurl,
-                                "fingerprint": fingerprint, "timestamp": timestamp})
-            elif askcb:
-                rc = askcb(po, userid, hexkeyid)
-
-            if not rc:
-                raise Errors.YumBaseError, _("Not installing key")
-            
-            # Import the key
-            result = ts.pgpImportPubkey(misc.procgpgkey(rawkey))
-            if result != 0:
-                raise Errors.YumBaseError, \
-                      _('Key import failed (code %d)') % result
-            misc.import_key_to_pubring(rawkey, po.repo.cachedir)
+            keys_info = misc.getgpgkeyinfo(rawkey, multiple=True)
             
-            self.logger.info(_('Key imported successfully'))
-            key_installed = True
+            for keyinfo in keys_info:
+                try: 
+                    keyid = keyinfo['keyid']
+                    hexkeyid = misc.keyIdToRPMVer(keyid).upper()
+                    timestamp = keyinfo['timestamp']
+                    userid = keyinfo['userid']
+                    fingerprint = keyinfo['fingerprint']
+                    raw_key = keyinfo['raw_key']
+                except ValueError, e:
+                    raise Errors.YumBaseError, \
+                          _('GPG key parsing failed: ') + str(e)
 
-            if not key_installed:
-                raise Errors.YumBaseError, \
-                      _('The GPG keys listed for the "%s" repository are ' \
-                      'already installed but they are not correct for this ' \
-                      'package.\n' \
-                      'Check that the correct key URLs are configured for ' \
-                      'this repository.') % (repo.name)
+                # Check if key is already installed
+                if misc.keyInstalled(ts, keyid, timestamp) >= 0:
+                    self.logger.info(_('GPG key at %s (0x%s) is already installed') % (
+                        keyurl, hexkeyid))
+                    continue
+
+                # Try installing/updating GPG key
+                self.logger.critical(_('Importing GPG key 0x%s "%s" from %s') % (hexkeyid, userid, keyurl.replace("file://","")))
+                rc = False
+                if self.conf.assumeyes:
+                    rc = True
+                elif fullaskcb:
+                    rc = fullaskcb({"po": po, "userid": userid,
+                                    "hexkeyid": hexkeyid, "keyurl": keyurl,
+                                    "fingerprint": fingerprint, "timestamp": timestamp})
+                elif askcb:
+                    rc = askcb(po, userid, hexkeyid)
+
+                if not rc:
+                    raise Errors.YumBaseError, _("Not installing key")
+                
+                # Import the key
+                result = ts.pgpImportPubkey(misc.procgpgkey(raw_key))
+                if result != 0:
+                    raise Errors.YumBaseError, \
+                          _('Key import failed (code %d)') % result
+                misc.import_key_to_pubring(rawkey, po.repo.cachedir)
+                
+                self.logger.info(_('Key imported successfully'))
+                key_installed = True
+
+                if not key_installed:
+                    raise Errors.YumBaseError, \
+                          _('The GPG keys listed for the "%s" repository are ' \
+                          'already installed but they are not correct for this ' \
+                          'package.\n' \
+                          'Check that the correct key URLs are configured for ' \
+                          'this repository.') % (repo.name)
 
         # Check if the newly installed keys helped
         result, errmsg = self.sigCheckPkg(po)
         if result != 0:
             self.logger.info(_("Import of key(s) didn't help, wrong key(s)?"))
             raise Errors.YumBaseError, errmsg
+
     def _limit_installonly_pkgs(self):
         if self.conf.installonly_limit < 1 :
             return 
diff --git a/yum/misc.py b/yum/misc.py
index 67b9171..cc7221b 100644
--- a/yum/misc.py
+++ b/yum/misc.py
@@ -233,7 +233,7 @@ def procgpgkey(rawkey):
     # Decode and return
     return base64.decodestring(block.getvalue())
 
-def getgpgkeyinfo(rawkey):
+def getgpgkeyinfo(rawkey, multiple=False):
     '''Return a dict of info for the given ASCII armoured key text
 
     Returned dict will have the following keys: 'userid', 'keyid', 'timestamp'
@@ -241,38 +241,45 @@ def getgpgkeyinfo(rawkey):
     Will raise ValueError if there was a problem decoding the key.
     '''
     # Catch all exceptions as there can be quite a variety raised by this call
+    key_info_objs = []
     try:
-        key = pgpmsg.decode_msg(rawkey)
+        keys = pgpmsg.decode_multiple_keys(rawkey)
     except Exception, e:
         raise ValueError(str(e))
-    if key is None:
+    if len(keys) == 0:
         raise ValueError('No key found in given key data')
-
-    keyid_blob = key.public_key.key_id()
-
-    info = {
-        'userid': key.user_id,
-        'keyid': struct.unpack('>Q', keyid_blob)[0],
-        'timestamp': key.public_key.timestamp,
-        'fingerprint' : key.public_key.fingerprint,
-    }
-
-    # Retrieve the timestamp from the matching signature packet 
-    # (this is what RPM appears to do) 
-    for userid in key.user_ids[0]:
-        if not isinstance(userid, pgpmsg.signature):
-            continue
-
-        if userid.key_id() == keyid_blob:
-            # Get the creation time sub-packet if available
-            if hasattr(userid, 'hashed_subpaks'):
-                tspkt = \
-                    userid.get_hashed_subpak(pgpmsg.SIG_SUB_TYPE_CREATE_TIME)
-                if tspkt != None:
-                    info['timestamp'] = int(tspkt[1])
-                    break
+    
+    for key in keys:    
+        keyid_blob = key.public_key.key_id()
+
+        info = {
+            'userid': key.user_id,
+            'keyid': struct.unpack('>Q', keyid_blob)[0],
+            'timestamp': key.public_key.timestamp,
+            'fingerprint' : key.public_key.fingerprint,
+            'raw_key' : key.raw_key,
+        }
+
+        # Retrieve the timestamp from the matching signature packet 
+        # (this is what RPM appears to do) 
+        for userid in key.user_ids[0]:
+            if not isinstance(userid, pgpmsg.signature):
+                continue
+
+            if userid.key_id() == keyid_blob:
+                # Get the creation time sub-packet if available
+                if hasattr(userid, 'hashed_subpaks'):
+                    tspkt = \
+                        userid.get_hashed_subpak(pgpmsg.SIG_SUB_TYPE_CREATE_TIME)
+                    if tspkt != None:
+                        info['timestamp'] = int(tspkt[1])
+                        break
+        key_info_objs.append(info)
+    if multiple:      
+        return key_info_objs
+    else:
+        return key_info_objs[0]
         
-    return info
 
 def keyIdToRPMVer(keyid):
     '''Convert an integer representing a GPG key ID to the hex version string
diff --git a/yum/pgpmsg.py b/yum/pgpmsg.py
index 72d3480..35a7801 100644
--- a/yum/pgpmsg.py
+++ b/yum/pgpmsg.py
@@ -1110,9 +1110,36 @@ def decode_msg(msg) :
             # turn it into a real cert
             cert = pgp_certificate()
             cert.load(pkt_list)
+            cert.raw_key = msg
             return cert
         
         # add the data to our buffer then
         block_buf.write(l)
 
     return None
+
+
+def decode_multiple_keys(msg):
+    #ditto of above - but handling multiple certs/keys per file
+    certs = []
+
+    pgpkey_lines = map(lambda x : x.rstrip(), msg.split('\n'))
+    in_block = 0
+    block = ''
+    for l in pgpkey_lines :
+        if not in_block :
+            if l == '-----BEGIN PGP PUBLIC KEY BLOCK-----' :
+                in_block = 1        
+                block += '%s\n' % l
+                continue
+
+        block += '%s\n' % l
+        if l == '-----END PGP PUBLIC KEY BLOCK-----':
+            in_block = 0
+            cert = decode_msg(block)
+            if cert:
+                certs.append(cert)
+            block = ''
+            continue
+
+    return certs
commit 917be73d81ae30a5605376bdd653b7c335ea2abc
Author: Seth Vidal <skvidal at fedoraproject.org>
Date:   Tue Jun 10 17:04:12 2008 -0400

    make sure the exceptions for 'no packages found' continue to be true

diff --git a/yum/packageSack.py b/yum/packageSack.py
index 4aeccbb..ac1984d 100644
--- a/yum/packageSack.py
+++ b/yum/packageSack.py
@@ -352,14 +352,20 @@ class MetaSack(PackageSackBase):
            foo.i386 will be compared"""
         calr = self._computeAggregateListResult
         pkgs = calr("returnNewestByNameArch", naTup, patterns)
-        return packagesNewestByNameArch(pkgs)
-        
+        pkgs = packagesNewestByNameArch(pkgs)
+        if not pkgs:
+            raise Errors.PackageSackError, 'No Package Matching %s' % name          
+        return pkgs
+                
     def returnNewestByName(self, name=None):
         """return list of newest packages based on name matching
            this means(in name.arch form): foo.i386 and foo.noarch will
            be compared to each other for highest version"""
         pkgs = self._computeAggregateListResult("returnNewestByName", name)
-        return packagesNewestByName(pkgs)
+        pkgs = packagesNewestByName(pkgs)
+        if not pkgs:
+            raise Errors.PackageSackError, 'No Package Matching %s' % name        
+        return pkgs
         
     def simplePkgList(self, patterns=None):
         """returns a list of pkg tuples (n, a, e, v, r)"""
commit 64f101dc4b288ccdea222dbc5c9bc585652c81df
Author: James Bowes <jbowes at redhat.com>
Date:   Sun Jun 8 14:31:26 2008 -0400

    Remove unused 'cheaterlookup' in depsolver

diff --git a/yum/depsolve.py b/yum/depsolve.py
index c738fe3..296ba57 100644
--- a/yum/depsolve.py
+++ b/yum/depsolve.py
@@ -536,7 +536,6 @@ class Depsolve(object):
 
             # check Requires
             while CheckDeps:
-                self.cheaterlookup = {}
                 if self.dsCallback: self.dsCallback.tscheck()
                 CheckDeps, checkinstalls, checkremoves, missing = self._resolveRequires(errors)
                 CheckInstalls |= checkinstalls
commit 0801c7cf79c95df649bfc005062799f3786d74f8
Author: Tim Lauridsen <tla at rasmil.dk>
Date:   Fri Jun 6 14:46:17 2008 +0200

    updated de translation by Jochen Schmitt

diff --git a/po/de.po b/po/de.po
index e766d20..ae1fa57 100644
--- a/po/de.po
+++ b/po/de.po
@@ -713,9 +713,9 @@ msgstr ""
 "\n"
 "Transaktionszusammenfassung\n"
 "=============================================================================\n"
-"Installieren      %5.5s Pakete(e)         \n"
-"Aktualisieren   %5.5s Pakete(e)         \n"
-"Enfernen           %5.5s Paket(e)         \n"
+"Installieren      %5.5s Paket(e)         \n"
+"Aktualisieren     %5.5s Paket(e)         \n"
+"Enfernen          %5.5s Paket(e)         \n"
 
 #: ../output.py:558
 msgid "Removed"
commit ca31584860a944d18095e9684e3672e4ee6e52d8
Author: Florian Festi <ffesti at redhat.com>
Date:   Mon Feb 18 13:33:47 2008 +0100

    Introduce AdditionResult class
    to report back the results of TransactionInfo.add*

diff --git a/test/transactiontests.py b/test/transactiontests.py
index 74a7666..724012f 100644
--- a/test/transactiontests.py
+++ b/test/transactiontests.py
@@ -48,7 +48,7 @@ class TransactionDataTests(unittest.TestCase):
         
     def testRemove(self):
         ''' test remove from transaction '''
-        txmbr = self.tsInfo.addInstall(self.foo1)
+        txmbr = self.tsInfo.addInstall(self.foo1).primary
         self.tsInfo.addInstall(self.bar2)
         self.tsInfo.remove(self.bar2.pkgtup)
         self.dumpTsInfo()
@@ -60,7 +60,7 @@ class TransactionDataTests(unittest.TestCase):
         txmbr2 = self.tsInfo.addUpdate(self.foogui2,self.foogui1)
         txmbr3 = self.tsInfo.getMembers(self.foogui1.pkgtup)[0]
         self.dumpTsInfo()
-        self.assertResult([txmbr1,txmbr2,txmbr3])
+        self.assertResult([txmbr1.primary,txmbr2.primary,txmbr3])
 
     def testGetFromTransaction(self):
         ''' test getting from Transaction '''
@@ -105,8 +105,8 @@ class TransactionDataTests(unittest.TestCase):
 
     def testAddUpdatesAndObsoletes(self):
         ''' test addUpdated,addObsoleted'''
-        txmbr1 = self.tsInfo.addUpdated(self.foo1,self.foo2)
-        txmbr2 = self.tsInfo.addObsoleted(self.bar1,self.bar2)
+        txmbr1 = self.tsInfo.addUpdated(self.foo1,self.foo2).primary
+        txmbr2 = self.tsInfo.addObsoleted(self.bar1,self.bar2).primary
         self.dumpTsInfo()
         self.assertResult([txmbr1,txmbr2])
         txmbr = self.tsInfo.getMembersWithState(output_states=[TS_UPDATED])[0]
diff --git a/yum/__init__.py b/yum/__init__.py
index 35b44d4..e26cd1d 100644
--- a/yum/__init__.py
+++ b/yum/__init__.py
@@ -2184,19 +2184,22 @@ class YumBase(depsolve.Depsolve):
         #  - better error handling/reporting
 
 
-        tx_return = []
+        result = transactioninfo.AdditionResult()
         for po in pkgs:
             if self.tsInfo.exists(pkgtup=po.pkgtup):
-                if self.tsInfo.getMembersWithState(po.pkgtup, TS_INSTALL_STATES):
+                found = False
+                for txmbr in self.tsInfo.getMembersWithState(po.pkgtup, TS_INSTALL_STATES):
+                    found = True
                     self.verbose_logger.log(logginglevels.DEBUG_1,
                         _('Package: %s  - already in transaction set'), po)
-                    tx_return.extend(self.tsInfo.getMembers(pkgtup=po.pkgtup))
+                    result.addMember(txmbr) # XXX ERASE members???
+                if found:
                     continue
             
             # make sure this shouldn't be passed to update:
             if self.up.updating_dict.has_key(po.pkgtup):
-                txmbrs = self.update(po=po)
-                tx_return.extend(txmbrs)
+                res = self.update(po=po)
+                result.add(res)
                 continue
             
             # make sure it's not already installed
@@ -2210,8 +2213,8 @@ class YumBase(depsolve.Depsolve):
             if self.rpmdb.contains(name=po.name, arch=po.arch) and not self.allowedMultipleInstalls(po):
                 if not self.tsInfo.getMembersWithState(po.pkgtup, TS_REMOVE_STATES):
                     self.verbose_logger.warning(_('Package matching %s already installed. Checking for update.'), po)            
-                    txmbrs = self.update(po=po)
-                    tx_return.extend(txmbrs)
+                    res = self.update(po=po)
+                    result.add(res)
                     continue
 
             # make sure we're not installing a package which is obsoleted by something
@@ -2222,13 +2225,13 @@ class YumBase(depsolve.Depsolve):
                 obsoleting_pkg = self.getPackageObject(obsoleting)
                 self.verbose_logger.warning(_('Package %s is obsoleted by %s, trying to install %s instead'),
                     po.name, obsoleting_pkg.name, obsoleting_pkg)               
-                self.install(po=obsoleting_pkg)
+                self.install(po=obsoleting_pkg) # XXX result???
                 continue
                 
-            txmbr = self.tsInfo.addInstall(po)
-            tx_return.append(txmbr)
+            res = self.tsInfo.addInstall(po)
+            result.add(res)
         
-        return tx_return
+        return result
 
     
     def update(self, po=None, requiringPo=None, **kwargs):
@@ -2251,17 +2254,17 @@ class YumBase(depsolve.Depsolve):
         else:
             obsoletes = []
 
-        tx_return = []
+        result = transactioninfo.AdditionResult()
         if not po and not kwargs: # update everything (the easy case)
             self.verbose_logger.log(logginglevels.DEBUG_2, _('Updating Everything'))
             for (obsoleting, installed) in obsoletes:
                 obsoleting_pkg = self.getPackageObject(obsoleting)
                 installed_pkg =  self.rpmdb.searchPkgTuple(installed)[0]
-                txmbr = self.tsInfo.addObsoleting(obsoleting_pkg, installed_pkg)
-                self.tsInfo.addObsoleted(installed_pkg, obsoleting_pkg)
+                res = self.tsInfo.addObsoleting(obsoleting_pkg, installed_pkg)
+                self.tsInfo.addObsoleted(installed_pkg, obsoleting_pkg) # XXX result???
                 if requiringPo:
-                    txmbr.setAsDep(requiringPo)
-                tx_return.append(txmbr)
+                    res.primary.setAsDep(requiringPo)
+                result.add(res)
                 
             for (new, old) in updates:
                 if self.tsInfo.isObsoleted(pkgtup=old):
@@ -2270,12 +2273,12 @@ class YumBase(depsolve.Depsolve):
                 else:
                     updating_pkg = self.getPackageObject(new)
                     updated_pkg = self.rpmdb.searchPkgTuple(old)[0]
-                    txmbr = self.tsInfo.addUpdate(updating_pkg, updated_pkg)
+                    res = self.tsInfo.addUpdate(updating_pkg, updated_pkg)
                     if requiringPo:
-                        txmbr.setAsDep(requiringPo)
-                    tx_return.append(txmbr)
+                        res.primary.setAsDep(requiringPo)
+                    result.add(res)
             
-            return tx_return
+            return result
 
         # complications
         # the user has given us something - either a package object to be
@@ -2343,23 +2346,23 @@ class YumBase(depsolve.Depsolve):
                 for obsoleting in self.up.obsoleted_dict.get(installed_pkg.pkgtup, []):
                     obsoleting_pkg = self.getPackageObject(obsoleting)
                     # FIXME check for what might be in there here
-                    txmbr = self.tsInfo.addObsoleting(obsoleting_pkg, installed_pkg)
-                    self.tsInfo.addObsoleted(installed_pkg, obsoleting_pkg)
+                    res = self.tsInfo.addObsoleting(obsoleting_pkg, installed_pkg)
+                    self.tsInfo.addObsoleted(installed_pkg, obsoleting_pkg) # XXX result???
                     if requiringPo:
-                        txmbr.setAsDep(requiringPo)
-                    tx_return.append(txmbr)
+                        res.primary.setAsDep(requiringPo)
+                    result.add(res)
             for available_pkg in availpkgs:
                 for obsoleted in self.up.obsoleting_dict.get(available_pkg.pkgtup, []):
                     obsoleted_pkg = self.getInstalledPackageObject(obsoleted)
-                    txmbr = self.tsInfo.addObsoleting(available_pkg, obsoleted_pkg)
+                    res = self.tsInfo.addObsoleting(available_pkg, obsoleted_pkg)
                     if requiringPo:
-                        txmbr.setAsDep(requiringPo)
-                    tx_return.append(txmbr)
+                        res.primary.setAsDep(requiringPo)
+                    result.add(res)
                     if self.tsInfo.isObsoleted(obsoleted):
                         self.verbose_logger.log(logginglevels.DEBUG_2, _('Package is already obsoleted: %s.%s %s:%s-%s'), obsoleted)
                     else:
-                        txmbr = self.tsInfo.addObsoleted(obsoleted_pkg, available_pkg)
-                        tx_return.append(txmbr)
+                        res = self.tsInfo.addObsoleted(obsoleted_pkg, available_pkg)
+                        result.add(res)
 
         for installed_pkg in instpkgs:
             for updating in self.up.updatesdict.get(installed_pkg.pkgtup, []):
@@ -2368,10 +2371,10 @@ class YumBase(depsolve.Depsolve):
                     self.verbose_logger.log(logginglevels.DEBUG_2, _('Not Updating Package that is already obsoleted: %s.%s %s:%s-%s'), 
                                             installed_pkg.pkgtup)                                               
                 else:
-                    txmbr = self.tsInfo.addUpdate(updating_pkg, installed_pkg)
+                    res = self.tsInfo.addUpdate(updating_pkg, installed_pkg)
                     if requiringPo:
-                        txmbr.setAsDep(requiringPo)
-                    tx_return.append(txmbr)
+                        res.primary.setAsDep(requiringPo)
+                    result.add(res)
                         
                         
         for available_pkg in availpkgs:
@@ -2385,10 +2388,10 @@ class YumBase(depsolve.Depsolve):
                 
                 else:
                     updated_pkg =  self.rpmdb.searchPkgTuple(updated)[0]
-                    txmbr = self.tsInfo.addUpdate(available_pkg, updated_pkg)
+                    res = self.tsInfo.addUpdate(available_pkg, updated_pkg)
                     if requiringPo:
-                        txmbr.setAsDep(requiringPo)
-                    tx_return.append(txmbr)
+                        res.primary.setAsDep(requiringPo)
+                    result.add(res)
                     
             # check to see if the pkg we want to install is not _quite_ the newest
             # one but still technically an update over what is installed.
@@ -2399,13 +2402,12 @@ class YumBase(depsolve.Depsolve):
             pot_updated = self.rpmdb.searchNevra(name=available_pkg.name, arch=available_pkg.arch)
             for ipkg in pot_updated:
                 if ipkg.EVR < available_pkg.EVR:
-                    txmbr = self.tsInfo.addUpdate(available_pkg, ipkg)
+                    res = self.tsInfo.addUpdate(available_pkg, ipkg)
                     if requiringPo:
-                        txmbr.setAsDep(requiringPo)
-                    tx_return.append(txmbr)
-                                                     
+                        res.primary.setAsDep(requiringPo)
+                    result.add(res)
 
-        return tx_return
+        return result
         
         
     def remove(self, po=None, **kwargs):
@@ -2417,7 +2419,7 @@ class YumBase(depsolve.Depsolve):
         if not po and not kwargs:
             raise Errors.RemoveError, 'Nothing specified to remove'
         
-        tx_return = []
+        result = transactioninfo.AdditionResult()
         pkgs = []
         
         
@@ -2456,10 +2458,10 @@ class YumBase(depsolve.Depsolve):
                     self.logger.warning(_("No package matched to remove"))
 
         for po in pkgs:
-            txmbr = self.tsInfo.addErase(po)
-            tx_return.append(txmbr)
+            res = self.tsInfo.addErase(po)
+            result.add(res)
         
-        return tx_return
+        return result
 
     def installLocal(self, pkg, po=None, updateonly=False):
         """
@@ -2478,7 +2480,7 @@ class YumBase(depsolve.Depsolve):
         # check if it can be installed or updated based on nevra versus rpmdb
         # don't import the repos until we absolutely need them for depsolving
 
-        tx_return = []
+        result = transactioninfo.AdditionResult()
         installpkgs = []
         updatepkgs = []
         donothingpkgs = []
@@ -2488,7 +2490,7 @@ class YumBase(depsolve.Depsolve):
                 po = YumLocalPackage(ts=self.rpmdb.readOnlyTS(), filename=pkg)
             except Errors.MiscError:
                 self.logger.critical(_('Cannot open file: %s. Skipping.'), pkg)
-                return tx_return
+                return result
             self.verbose_logger.log(logginglevels.INFO_2,
                 _('Examining %s: %s'), po.localpath, po)
 
@@ -2498,7 +2500,7 @@ class YumBase(depsolve.Depsolve):
         if len(installedByKey) == 0: # nothing installed by that name
             if updateonly:
                 self.logger.warning(_('Package %s not installed, cannot update it. Run yum install to install it instead.'), po.name)
-                return tx_return
+                return result
             else:
                 installpkgs.append(po)
 
@@ -2531,26 +2533,25 @@ class YumBase(depsolve.Depsolve):
 
         if po in toexc:
            self.verbose_logger.debug(_('Excluding %s'), po)
-           return tx_return
+           return result
 
         for po in installpkgs:
             self.verbose_logger.log(logginglevels.INFO_2,
                 _('Marking %s to be installed'), po.localpath)
             self.localPackages.append(po)
-            tx_return.extend(self.install(po=po))
+            result.add(self.install(po=po))
 
         for (po, oldpo) in updatepkgs:
             self.verbose_logger.log(logginglevels.INFO_2,
                 _('Marking %s as an update to %s'), po.localpath, oldpo)
             self.localPackages.append(po)
-            txmbr = self.tsInfo.addUpdate(po, oldpo)
-            tx_return.append(txmbr)
+            result.add(self.tsInfo.addUpdate(po, oldpo))
 
         for po in donothingpkgs:
             self.verbose_logger.log(logginglevels.INFO_2,
                 _('%s: does not update installed package.'), po.localpath)
 
-        return tx_return
+        return result
 
     def reinstall(self, po=None, **kwargs):
         """Setup the problem filters to allow a reinstall to work, then
@@ -2563,9 +2564,8 @@ class YumBase(depsolve.Depsolve):
         if rpm.RPMPROB_FILTER_REPLACEOLDFILES not in self.tsInfo.probFilterFlags:
             self.tsInfo.probFilterFlags.append(rpm.RPMPROB_FILTER_REPLACEOLDFILES)
 
-        tx_mbrs = []
-        tx_mbrs.extend(self.remove(po, **kwargs))
-        if not tx_mbrs:
+        result = self.remove(po, **kwargs)
+        if not tx_mbrs.transactionChanged():
             raise Errors.ReinstallError, _("Problem in reinstall: no package matched to remove")
         templen = len(tx_mbrs)
         # this is a reinstall, so if we can't reinstall exactly what we uninstalled
diff --git a/yum/depsolve.py b/yum/depsolve.py
index ead17b7..c738fe3 100644
--- a/yum/depsolve.py
+++ b/yum/depsolve.py
@@ -282,8 +282,8 @@ class Depsolve(object):
         if remove_txmbr and remove_txmbr.ts_state=='e' and not (remove_txmbr.obsoleted_by or remove_txmbr.updated_by):
             self.verbose_logger.log(logginglevels.DEBUG_2, _('TSINFO: %s package requiring %s marked as erase'),
                 requiringPo, needname)
-            txmbr = self.tsInfo.addErase(requiringPo)
-            txmbr.setAsDep(po=remove_txmbr.po)
+            res = self.tsInfo.addErase(requiringPo)
+            res.primary.setAsDep(po=remove_txmbr.po)
             checkdeps = 1
             return checkdeps, missingdep
 
@@ -383,13 +383,12 @@ class Depsolve(object):
 
         # try updating the already install pkgs
         for pkg in provSack.returnNewestByName():
-            results = self.update(requiringPo=requiringPo, name=pkg.name,
-                                  epoch=pkg.epoch, version=pkg.version,
-                                  rel=pkg.rel)
-            for txmbr in results:
-                if pkg == txmbr.po:
-                    checkdeps = True
-                    return checkdeps, missingdep
+            result = self.update(requiringPo=requiringPo, name=pkg.name,
+                                 epoch=pkg.epoch, version=pkg.version,
+                                 rel=pkg.rel)
+            if result.transactionChanged():
+                checkdeps = True
+                return checkdeps, missingdep
 
         # find out which arch of the ones we can choose from is closest
         # to the arch of the requesting pkg
@@ -421,14 +420,14 @@ class Depsolve(object):
             self.verbose_logger.debug(_('TSINFO: Marking %s as update for %s') %(best,
                 requiringPo))
             # FIXME: we should probably handle updating multiple packages...
-            txmbr = self.tsInfo.addUpdate(best, inst[0])
-            txmbr.setAsDep(po=requiringPo)
-            txmbr.reason = "dep"
+            res = self.tsInfo.addUpdate(best, inst[0])
+            res.primary.setAsDep(po=requiringPo)
+            res.primary.reason = "dep"
         else:
             self.verbose_logger.debug(_('TSINFO: Marking %s as install for %s'), best,
                 requiringPo)
-            txmbr = self.tsInfo.addInstall(best)
-            txmbr.setAsDep(po=requiringPo)
+            res = self.tsInfo.addInstall(best)
+            res.primary.setAsDep(po=requiringPo)
 
             # if we had other packages with this name.arch that we found
             # before, they're not going to be installed anymore, so we
diff --git a/yum/transactioninfo.py b/yum/transactioninfo.py
index b7fdd1e..a6336c7 100644
--- a/yum/transactioninfo.py
+++ b/yum/transactioninfo.py
@@ -172,9 +172,11 @@ class TransactionData:
         
     def add(self, txmember):
         """add a package to the transaction"""
+        result = AdditionResult()
         
         for oldpo in txmember.updates:
-            self.addUpdated(oldpo, txmember.po)
+            res = self.addUpdated(oldpo, txmember.po)
+            result.add(res)
 
         if not self.pkgdict.has_key(txmember.pkgtup):
             self.pkgdict[txmember.pkgtup] = []
@@ -183,7 +185,11 @@ class TransactionData:
             for member in self.pkgdict[txmember.pkgtup]:
                 if member.ts_state == txmember.ts_state:
                     self.debugprint("Package in same mode, skipping.")
-                    return
+                    result.setPrimaryMember(member, new=False)
+                    return result
+
+        result.setPrimaryMember(txmember)
+
         self.pkgdict[txmember.pkgtup].append(txmember)
         self._namedict.setdefault(txmember.name, []).append(txmember)
         self.changed = True
@@ -196,15 +202,18 @@ class TransactionData:
             for po in self.conditionals[txmember.name]:
                 if self.rpmdb.contains(po=po):
                     continue
-                condtxmbr = self.addInstall(po)
-                condtxmbr.setAsDep(po=txmember.po)
+                res = self.addInstall(po, True)
+                result.addConditionals(res)
+                res.primary.setAsDep(po=txmember.po)
+
         self._unresolvedMembers.add(txmember)
+        return result
 
     def remove(self, pkgtup):
         """remove a package from the transaction"""
         if not self.pkgdict.has_key(pkgtup):
             self.debugprint("Package: %s not in ts" %(pkgtup,))
-            return
+            return []
         for txmbr in self.pkgdict[pkgtup]:
             txmbr.po.state = None
             if self._isLocalPackage(txmbr):
@@ -214,10 +223,12 @@ class TransactionData:
             self._namedict[txmbr.name].remove(txmbr)
             self._unresolvedMembers.add(txmbr)
         
+        result = self.pkgdict[pkgtup]
         del self.pkgdict[pkgtup]
         if not self._namedict[pkgtup[0]]:
             del self._namedict[pkgtup[0]]
-        self.changed = True        
+        self.changed = True
+        return result
     
     def exists(self, pkgtup):
         """tells if the pkg is in the class"""
@@ -310,8 +321,7 @@ class TransactionData:
         txmbr.po.state = TS_INSTALL        
         txmbr.ts_state = 'u'
         txmbr.reason = 'user'
-        self.add(txmbr)
-        return txmbr
+        return self.add(txmbr)
 
     def addTrueInstall(self, po):
         """adds a package as an install
@@ -323,9 +333,7 @@ class TransactionData:
         txmbr.po.state = TS_INSTALL        
         txmbr.ts_state = 'i'
         txmbr.reason = 'user'
-        self.add(txmbr)
-        return txmbr
-    
+        return self.add(txmbr)
 
     def addErase(self, po):
         """adds a package as an erasure
@@ -336,8 +344,7 @@ class TransactionData:
         txmbr.output_state = TS_ERASE
         txmbr.po.state = TS_INSTALL
         txmbr.ts_state = 'e'
-        self.add(txmbr)
-        return txmbr
+        return self.add(txmbr)
 
     def addUpdate(self, po, oldpo=None):
         """adds a package as an update
@@ -355,8 +362,7 @@ class TransactionData:
             txmbr.relatedto.append((oldpo, 'updates'))
             txmbr.updates.append(oldpo)
             
-        self.add(txmbr)
-        return txmbr
+        return self.add(txmbr)
 
     def addUpdated(self, po, updating_po):
         """adds a package as being updated by another pkg
@@ -369,8 +375,7 @@ class TransactionData:
         txmbr.ts_state = None
         txmbr.relatedto.append((updating_po, 'updatedby'))
         txmbr.updated_by.append(updating_po)
-        self.add(txmbr)
-        return txmbr
+        return self.add(txmbr)
 
     def addObsoleting(self, po, oldpo):
         """adds a package as an obsolete over another pkg
@@ -383,8 +388,7 @@ class TransactionData:
         txmbr.ts_state = 'u'
         txmbr.relatedto.append((oldpo, 'obsoletes'))
         txmbr.obsoletes.append(oldpo)
-        self.add(txmbr)
-        return txmbr
+        return self.add(txmbr)
 
     def addObsoleted(self, po, obsoleting_po):
         """adds a package as being obsoleted by another pkg
@@ -397,8 +401,7 @@ class TransactionData:
         txmbr.ts_state = None
         txmbr.relatedto.append((obsoleting_po, 'obsoletedby'))
         txmbr.obsoleted_by.append(obsoleting_po)
-        self.add(txmbr)
-        return txmbr
+        return self.add(txmbr)
 
 
     def setDatabases(self, rpmdb, pkgSack):
@@ -515,6 +518,52 @@ class SortableTransactionData(TransactionData):
         self._sorted.reverse()
         return self._sorted
 
+class AdditionResult:
+    def __init__(self, txmbr=None):
+        self.primary = txmbr
+        self.new = set()
+        self.all = set()
+        self.new_conditionals = set()
+        self.all_conditionals = set()
+
+    def setPrimaryMember(self, txmbr, new=True):
+        if self.primary:
+            raise ValueError, "Primary already set"
+        self.primary = txmbr
+        self.all.add(txmbr)
+        if new:
+            self.new.add(txmbr)
+
+    def addNewMember(self, txmbr):
+        self.all.add(txmbr)
+        self.new.add(txmbr)
+
+    def addMember(self, txmbr):
+        self.all.add(txmbr)
+
+    def addNewConditional(self, txmbr):
+        self.new_conditionals.add(txmbr)
+        self.all_conditionals.add(txmbr)
+
+    def addConditional(self, txmbr):
+        self.all_conditionals.add(txmbr)
+
+    def removeMember(self, txmbr):
+        self.new.discard(txmbr)
+        self.all.discard(txmbr)
+        self.new_conditionals.discard(txmbr)
+        self.all_conditionals.discard(txmbr)
+        if self.primary is txmbr:
+            self.primary = None
+
+    def add(self, other):
+        for attr in ('new', 'all', 'new_conditionals', 'all_conditionals'):
+            getattr(self, attr).update(getattr(other, attr))
+
+    def transactionChanged(self):
+        return bool(self.new) | bool(self.new_conditionals)
+
+
 class TransactionMember:
     """Class to describe a Transaction Member (a pkg to be installed/
        updated/erased)."""
commit 7cbcad7c9bf22464cbaa15c4b92f50eac9784ceb
Author: Jack Neely <jjneely at ncsu.edu>
Date:   Tue Jun 3 16:17:53 2008 -0400

    The postresolve hook should run after the installonlyn magic.

diff --git a/yum/__init__.py b/yum/__init__.py
index 1be6237..35b44d4 100644
--- a/yum/__init__.py
+++ b/yum/__init__.py
@@ -626,8 +626,8 @@ class YumBase(depsolve.Depsolve):
         ds_st = time.time()
 
         (rescode, restring) = self.resolveDeps()
-        self.plugins.run('postresolve', rescode=rescode, restring=restring)
         self._limit_installonly_pkgs()
+        self.plugins.run('postresolve', rescode=rescode, restring=restring)
         
         if self.tsInfo.changed:
             (rescode, restring) = self.resolveDeps()
commit 74af38c9a32b22a7652a0c56afa551a680fcef29
Author: Tim Lauridsen <tla at rasmil.dk>
Date:   Tue Jun 3 10:40:07 2008 +0200

    make repo.enable/disablePersistant() dont messup the repo files by replacing  etc. (rhbz# 446098)

diff --git a/yum/config.py b/yum/config.py
index 218008b..2881709 100644
--- a/yum/config.py
+++ b/yum/config.py
@@ -25,12 +25,9 @@ import rpm
 import copy
 import urlparse
 from parser import ConfigPreProcessor
-try:
-    from iniparse.compat import NoSectionError, NoOptionError, ConfigParser
-    from iniparse.compat import ParsingError
-except ImportError:
-    from ConfigParser import NoSectionError, NoOptionError, ConfigParser
-    from ConfigParser import ParsingError
+from iniparse import INIConfig
+from iniparse.compat import NoSectionError, NoOptionError, ConfigParser
+from iniparse.compat import ParsingError
 import rpmUtils.transaction
 import rpmUtils.arch
 import Errors
@@ -815,6 +812,25 @@ def _getsysver(installroot, distroverpkg):
     del ts
     return releasever
 
+def writeRawRepoFile(repo,only=None):
+    """
+    Writes changes in a repo object back to a .repo file.
+    @param repo: Repo Object
+    @param only: List of attributes to work on (None = All)
+    It work by reading the repo file, changes the values there shall be changed and write it back to disk.
+    """
+    ini = INIConfig(open(repo.repofile))
+    # Updated the ConfigParser with the changed values    
+    cfgOptions = repo.cfg.options(repo.id)
+    for name,value in repo.iteritems():
+        option = repo.optionobj(name)
+        if option.default != value or name in cfgOptions :
+            if only == None or name in only:
+                ini[repo.id][name] = option.tostring(value)
+    fp =file(repo.repofile,"w")               
+    fp.write(str(ini))
+    fp.close()
+
 #def main():
 #    mainconf = readMainConfig('/etc/yum/yum.conf', '/')
 #    repoconf = readRepoConfig(mainconf.cfg, 'core', mainconf)
diff --git a/yum/yumRepo.py b/yum/yumRepo.py
index 1527181..b3c07ba 100644
--- a/yum/yumRepo.py
+++ b/yum/yumRepo.py
@@ -343,10 +343,8 @@ class YumRepository(Repository, config.RepoConf):
     def enablePersistent(self):
         """Persistently enables this repository."""
         self.enable()
-        self.cfg.set(self.id, 'enabled', '1')
-
         try:
-            self.cfg.write(file(self.repofile, 'w'))
+            config.writeRawRepoFile(self,only=['enabled'])
         except IOError, e:
             if e.errno == 13:
                 self.logger.warning(e)
@@ -356,10 +354,8 @@ class YumRepository(Repository, config.RepoConf):
     def disablePersistent(self):
         """Persistently disables this repository."""
         self.disable()
-        self.cfg.set(self.id, 'enabled', '0')
-
         try:
-            self.cfg.write(file(self.repofile, 'w'))
+            config.writeRawRepoFile(self,only=['enabled'])
         except IOError, e:
             if e.errno == 13:
                 self.logger.warning(e)
commit ca3dd56f5bbaa01fc21846aec7366d6a22c9335e
Author: Seth Vidal <skvidal at fedoraproject.org>
Date:   Fri May 30 11:03:53 2008 -0400

    man page patches for bug 446587

diff --git a/docs/yum.8 b/docs/yum.8
index 8845989..4b82533 100644
--- a/docs/yum.8
+++ b/docs/yum.8
@@ -282,8 +282,8 @@ Run with gpg signature checking disabled.
 .br
 Configuration Option: \fBgpgcheck\fP
 .IP "\fB\-\-skip\-broken\fP"
-Resolve depsolve problems by removing packages there is causing problems
- from the transaction.
+Resolve depsolve problems by removing packages that are causing problems
+from the transaction.
 .br
 Configuration Option: \fBskip_broken\fP
 .PP 
diff --git a/docs/yum.conf.5 b/docs/yum.conf.5
index 54eb8b8..d8b541a 100644
--- a/docs/yum.conf.5
+++ b/docs/yum.conf.5
@@ -60,6 +60,10 @@ default for all repositories. This option also determines whether or not an
 install of a package from a local RPM file will be GPG signature checked. The
 default is `0'.
 
+.IP \fBskip_broken\fR
+Either `1' or `0'. Resolve depsolve problems by removing packages that
+are causing problems from the transaction.
+
 .IP \fBassumeyes\fR
 Either `1' or `0'. Determines whether or not yum prompts for confirmation of
 critical actions. Default is `0' (do prompt).


More information about the Yum-commits mailing list