;ò
.š@c           @   s×  d  Z  d k Z d k Z d k Z d k Z d k Z d k Z d k Z d k Z d k	 Z	 d k
 Z
 d k Z d k Z d k Z d k Z d k Z d k Z d k Z d k Z d k Z d k Z d k Z d k Z d k Z d k Z d k Z d k Z d k Z d k Z d k Z d k Z y d k l  Z  Wn e! j
 o e" d ƒ Z  n Xd k# l$ Z$ l% Z% d „  Z& e i' d ƒ d „  Z( d „  Z) d	 „  Z* d
 „  Z+ e, d „ Z- d „  Z. d „  Z/ e, e, d „ Z0 e, e, e, d „ Z1 d „  Z2 d „  Z3 d „  Z4 d f  d „  ƒ  YZ5 d „  Z6 e, e, e, d „ Z7 d „  Z8 d „  Z9 d „  Z: d „  Z; e, d d „ Z< d „  Z= d „  Z> d „  Z? d  „  Z@ d! „  ZA d" „  ZB d# „  ZC d$ „  ZD d% „  ZE d& „  ZF d' „  ZG d( „  ZH eI d) j o eH ƒ  n d S(*   s°   
Guts of the up2date client. This module provides abstration
of all the remote rpc calls that the client needs to make, includes
the dependency solve, and other assorted bits.
N(   s   rpclibs	   xmlrpclib(   s   _s   N_c          C   s   t  i ƒ  }  |  i ƒ  d  S(   N(   s   configs   initUp2dateConfigs   cfgs   load(   s   cfg(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   reloadConfig9   s    i    c          C   s<   t  i ƒ  }  |  d } t i | t i ƒ o d Sn d Sd  S(   Ns
   storageDiri    i   (   s   configs   initUp2dateConfigs   cfgs   dirs   oss   accesss   X_OK(   s   cfgs   dir(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   checkForStorageDirK   s
    
c          C   sk   t  i ƒ  } t i ƒ  } g  } t d „  | ƒ }  x0 | D]( } | d |  j o | i
 | ƒ q7 q7 W| Sd  S(   Nc         C   s   |  d S(   Ni    (   s   a(   s   a(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   <lambda>Y   s    i    (   s   rhnPackageInfos   getAvailableAllArchPackageLists   pkgss   rpmUtilss   getInstalledPackageLists   installedPkgss   availablePackagess   maps   installedPkgNamess   pkgs   append(   s   installedPkgNamess   pkgss   availablePackagess   installedPkgss   pkg(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   computeAvailablePackagesT   s     c          C   sq   t  i ƒ  } t i d d ƒ } g  } t d „  | ƒ }  x0 | D]( } | d |  j o | i
 | ƒ q= q= W| Sd  S(   Ns   getArchi   c         C   s   |  d S(   Ni    (   s   a(   s   a(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   <lambda>d   s    i    (   s   rhnPackageInfos   getAvailablePackageLists   pkgss   rpmUtilss   getInstalledPackageLists   installedPkgss   unAvailablePackagess   maps   availPkgNamess   pkgs   append(   s   availPkgNamess   unAvailablePackagess   pkgss   installedPkgss   pkg(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   computeUnavailablePackages_   s     c         C   s5   t  i ƒ  } t  i | i i t i ƒ  |  ƒ } | Sd  S(   N(
   s	   rpcServers	   getServers   ss   doCalls   erratas   getErrataInfos   up2dateAuths   getSystemIds	   errata_ids   packages(   s	   errata_ids   ss   packages(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   getErrataInfom   s    !c         C   s5   t  } t i ƒ  } t i | i |  ƒ \ } } | Sd  S(   N(
   s   Nones   hdrs   repoDirectors   initRepoDirectors   reposs	   rpcServers   doCalls	   getHeaders   pkgs   type(   s   pkgs   lites   hdrs   reposs   type(    (    s(   /usr/share/rhn/up2date_client/up2date.pys	   getHeaderw   s    c         C   sï   t  i ƒ  } t i d | d t i |  ƒ t i ƒ  f ƒ } xB | D]: } y t
 i | ƒ WqB t i t d ƒ | ƒ ‚ qB XqB Wt i d | d t i |  ƒ f ƒ } xB | D]: } y t
 i | ƒ Wq­ t i t d ƒ | ƒ ‚ q­ Xq­ Wd  S(   Ns   %s/%s.%s.hdrs
   storageDirs   cannot remove %ss   %s/%s.noarch.hdr(   s   configs   initUp2dateConfigs   cfgs   globs   up2dateUtilss   pkgToStrings   pkgs   archGlobs	   fileNamess   fileNames   oss   removes   up2dateErrorss	   FileErrors   _(   s   pkgs   cfgs	   fileNamess   fileName(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   removeHeader   s    / !& c         C   sš   t  i ƒ  } d |  d |  d |  d |  d f } d | d | f } t i | t i ƒ o6 t i	 | ƒ d } | t |  d	 ƒ j o d Sq’ n d Sd  S(
   Ns   %s-%s-%s.%s.rpmi    i   i   i   s   %s/%ss
   storageDiri   i   (   s   configs   initUp2dateConfigs   cfgs   pkgs   baseFileNames   fileNames   oss   accesss   R_OKs   stats   sizes   long(   s   pkgs   cfgs   fileNames   baseFileNames   size(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   isPackageCached–   s    &c   	      C   s‹   t  i ƒ  } d |  d |  d |  d |  d f } d | d | f } t i | t i ƒ } t
 i ƒ  } | i d ƒ | i | ƒ } | Sd  S(	   Ns   %s-%s-%s.%s.rpmi    i   i   i   s   %s/%ss
   storageDiriÿÿÿÿ(   s   configs   initUp2dateConfigs   cfgs   pkgs   baseFileNames   fileNames   oss   opens   R_OKs   fds   transactions   initReadOnlyTransactions   _tss   pushVSFlagss   hdrFromFdnos   hdr(	   s   pkgs   msgCallbacks   progressCallbacks   cfgs   _tss   fileNames   baseFileNames   fds   hdr(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   getRealHeader§   s    &c         C   sÆ   t  i  t  i t  i ƒ t i ƒ  } t i ƒ  }
 | o t
 i |
 i |  | | ƒ } n | d p | oW t |  ƒ } | d } t i ƒ  }	 |	 i |  d ƒ } t
 i |
 i | | | | ƒ } n d Sd  S(   Ns   retrieveSources	   sourcerpmi   i    (   s   signals   SIGINTs   SIG_DFLs   configs   initUp2dateConfigs   cfgs   repoDirectors   initRepoDirectors   reposs
   onlySources	   rpcServers   doCalls
   getPackages   pkgs   msgCallbacks   progressCallbacks   buffers	   getHeaders   hdrs   srcrpms
   rhnChannels   getChannelss   channelss	   getByNames   channels   getPackageSource(   s   pkgs   msgCallbacks   progressCallbacks
   onlySources   hdrs   channels   buffers   cfgs   srcrpms   channelss   repos(    (    s(   /usr/share/rhn/up2date_client/up2date.pys
   getPackage³   s     
c         C   s  t  i ƒ  } t i ƒ  } t i d | d t i |  ƒ t i
 ƒ  f ƒ } xS | D]K } | i d | ƒ y t i | ƒ WqN t i t d ƒ | ƒ ‚ qN XqN Wt i d | d t i |  ƒ f ƒ } xS | D]K } | i d | ƒ y t i | ƒ WqÊ t i t d ƒ | ƒ ‚ qÊ XqÊ Wd  S(   Ns
   %s/%s.%s.*s
   storageDirs   deleting %ss   cannot remove %ss   %s/%s.noarch.*(   s
   up2dateLogs   initLogs   logs   configs   initUp2dateConfigs   cfgs   globs   up2dateUtilss   pkgToStrings   pkgs   archGlobs	   fileNamess   fileNames   log_mes   oss   removes   up2dateErrorss	   FileErrors   _(   s   pkgs   cfgs	   fileNamess   fileNames   log(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   removePackageÐ   s$    / !& c          C   s>   t  i ƒ  }  h  } x! |  D] } | | t i | ƒ <q W| Sd  S(   N(   s   rhnPackageInfos   getAvailablePackageLists   availablePkgLists   pkgDicts   pkgs   up2dateUtilss   pkgToStringArch(   s   availablePkgLists   pkgDicts   pkg(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   avail_package_dictë   s     c         C   sE   g  } x4 |  D], } | | d j o | i | d ƒ q q W| Sd  S(   Ni    i   (   s   archLists   availablePkgLists   pkgs   pkgNames   append(   s   availablePkgLists   pkgNames   archLists   pkg(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   getArchesOfAvailablePackagesô   s     s
   UpdateListc           B   sG   t  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z d „  Z RS(   Nc         C   s   h  |  _ t |  _ d  S(   N(   s   selfs
   updateDicts   Nones   _UpdateList__updateIndex(   s   self(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   __init__ÿ   s    	c         C   s   |  i i ƒ  Sd  S(   N(   s   selfs
   updateDicts   keys(   s   self(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   nameList  s    c         C   s   t  d „  |  i ƒ  ƒ Sd  S(   Nc         C   s   |  d  S(   Ni   (   s   a(   s   a(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   <lambda>  s    (   s   maps   selfs   updatedList(   s   self(    (    s(   /usr/share/rhn/up2date_client/up2date.pys	   nvreaList  s    c         C   s   t  d „  |  i ƒ  ƒ Sd  S(   Nc         C   s   |  d  S(   Ni   (   s   a(   s   a(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   <lambda>  s    (   s   maps   selfs   updatedList(   s   self(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   nvreList
  s    c         C   sõ   | d } |  i i | ƒ o | |  i | <d  Sn | d  |  i ƒ  j op t i | d ƒ } | d j o d  Sn t i |  i | d ƒ } | | j  o | d |  i | d <n d  Sn t
 i |  i | | ƒ } | d j o | |  i | <n d  S(   Ni    i   (   s   pkgs   pkgNames   selfs
   updateDicts   has_keys   nvreLists   rpms	   archscores	   archScores   oldScores   up2dateUtilss   comparePackagess   ret(   s   selfs   installedPkgs   pkgs   pkgNames	   archScores   rets   oldScore(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   appendIfNewer  s    
c         C   s   |  i i ƒ  Sd  S(   N(   s   selfs
   updateDicts   values(   s   self(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   updatedList#  s    c         C   s   |  i | d =d  S(   Ni    (   s   selfs
   updateDicts   pkg(   s   selfs   pkg(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   delete&  s    (	   s   __name__s
   __module__s   __init__s   nameLists	   nvreaLists   nvreLists   appendIfNewers   updatedLists   delete(    (    (    s(   /usr/share/rhn/up2date_client/up2date.pys
   UpdateListþ   s   						c         C   sS  t  i ƒ  } t |  ƒ } d | d t i |  ƒ | d f } t	 i
 | t	 i ƒ } t i ƒ  } | i d ƒ d } y | i | ƒ } WnŒ t i j
 o} } t | ƒ d j o
 d } n t | ƒ d j o
 d } n t | ƒ d j o
 d	 } n t | ƒ d
 j o
 d } qn X| d t j p | d g  j o
 d } n t	 i | ƒ | Sd  S(   Ns   %s/%s.%s.rpms
   storageDirs   archi    s   public key not availaiablei   s   public key not availables   public key not trustedi   s   error reading package headeri   s   SIGGPGi   (   s   configs   initUp2dateConfigs   cfgs	   getHeaders   pkgs   hdrs   up2dateUtilss   pkgToStrings   fileNames   oss   opens   O_RDONLYs   fds   transactions   initReadOnlyTransactions   _tss
   setVSFlagss   rets   hdrFromFdnos   rpms   errors   es   strs   Nones   close(   s   pkgs   es   hdrs   cfgs   _tss   rets   fileNames   fd(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   hasBadSignature,  s,    $


"
c         C   s  t  i ƒ  } | i d |  ƒ t i ƒ  } t i	 ƒ  } | i ƒ  t i d d ƒ }
 g  } | }	 x |
 D]ø } xï t t | ƒ ƒ D]Û } | | } | d | d j o¶ t i | | ƒ } | d j  o+ y |	 i | ƒ Wqì t j
 o qì Xn | d j oG | d | d j o q} n y |	 i | ƒ Wq@t j
 o q@Xn | d j o q} qXq} q} Wqd W|	 } | i ƒ  d | d <| d oh t i |  | ƒ } | i d | ƒ | i d | ƒ | i d	 | ƒ | i" ƒ  | i# ƒ  } | i$ ƒ  } nÐ t i& |  | ƒ } | i d | ƒ | i d | ƒ | i d	 | ƒ | i" ƒ  xt n ol | i d
 | i' ƒ | i# ƒ  } | i d | ƒ | d j o Pq<| d j  o t( i) t* d ƒ ƒ ‚ q<qCW| i$ ƒ  } | o | d d ƒ n g  } x= | i' D]2 } | |  j o |  i- | ƒ | i- | ƒ qäqäW| o
 t | ƒ oÈ d } g  } t | ƒ ol | t* d ƒ } | t* d ƒ } | d } x1 | D]) } | d | d | d | d f } qxW| d } n x  | D] } | | d d } qºWt( i2 t* d ƒ | | ƒ ‚ n | |  f Sd  S(   Ns   Called dryRuns   getArchi   i    i   s   useNewDepSolves   msgs   progresss   refreshs   Selected so fars   Got code %d from solvedeps(   Could not complete dependency resolutions    sM   The following packages were added to your selection to satisfy dependencies:
s?   Name                                    Version        Release
s?   --------------------------------------------------------------
s   %-40s%-15s%-20s
i   s   
s2   Test install failed because of package conflicts:
(3   s
   up2dateLogs   initLogs   logs	   log_debugs   pkgLists   configs   initUp2dateConfigs   cfgs   rhnPackageInfos   getAvailableAllArchPackageLists	   availPkgss   sorts   rpmUtilss   getInstalledPackageLists   installedPkgss   tmpPkgss   availCpys   iPkgs   ranges   lens   indexs   aPkgs   up2dateUtilss   comparePackagess   rets   removes
   ValueErrors	   depSolvers	   DepSolvers   depsolves   set_callbacks   msgCallbacks   progressCallbacks   refreshCallbacks   setups   solvedeps   runs   rcs   DependencySolvers   selecteds   up2dateErrorss   DependencyErrors   _s   newLists   ss   appends   msgs   msgss   pkgs   codes   ConflictError(   s   pkgLists   msgCallbacks   progressCallbacks   refreshCallbacks   codes   iPkgs   msgss   cfgs   pkgs   availCpys   installedPkgss   indexs   logs   ss   rets   rcs   msgs   tmpPkgss   depsolves	   availPkgss   newLists   aPkg(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   dryRunL  s     
  
		



 
 
 ' c          C   s[   t  i ƒ  } d GH| i ƒ  GHd } y | i ƒ  Wn  t i j
 o }  |  i	 GHn X| Sd  S(   Ns$   Rolling back the packages installed:i    (
   s	   rollbackss   Rollbacks   rollbacks   previewUndos   rets   undos   up2dateErrorss   NoRollbacksToUndoErrors   es   errmsg(   s   es   rollbacks   ret(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   undo´  s    c         C   sÚ   g  } xr |  D]j } t | ƒ d  | d  j oI | d d j o' t | d  ƒ | d  j o | Sqs qw | i | ƒ q q W| oP | i t i ƒ | i	 ƒ  | d d j o t
 i d | ƒ t Sn | d Sn t Sd  S(   Ni   s    i   i    s    No valid arches for pkg %s found(   s   pkgArchss
   allPkgLists   packages   lists   pkgs   appends   sorts   up2dateUtilss   comparePackagesArchs   reverses   logs   log_mes   None(   s
   allPkgLists   pkgs   pkgArchss   package(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   getAllPkgInfoÄ  s      
c         C   s	   |  GHd  S(   N(   s   msg(   s   msg(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   printitÜ  s    c      	   C   sÎ  t  i ƒ  } t i ƒ  } |  i d } g  } g  } g  } g  } g  } g  } xÑ| D]É\ } } | d j p
 | d j o¯ t | | ƒ } | o | i | ƒ qP n t | ƒ } | i | ƒ | o t i t d ƒ | ƒ ‚ n d | d j o | i | ƒ n | i | ƒ | i | | | ƒ qP | d j oÔ | d d	 j oX t i d
 | d d | d d | d ƒ } t i d
 | d d | d d | d ƒ }
 n t i | ƒ } t i  | ƒ }
 x( | D]  }	 | i" |	 ƒ | i |	 ƒ qÀWx2 |
 D] } | i | ƒ qëWqP | i | | | ƒ qP W| o" t d ƒ } t i$ | | ƒ ‚ n |  i i% d ƒ o9 d } x |  i d D] } | | B} qmW| i( | ƒ n x | D] } t) | ƒ q™W| i* t i+ ƒ | | | f Sd  S(   Ns   packagess   us   is   Could not find header for %ss   kernels   Providenames   ei   s    s   namei    s   versioni   s   releasei   s;   Some of the packages in this transaction are not available.s   vsflags(,   s   rhnPackageInfos   getAllAvailablePackageLists   allPkgss   rpms   TransactionSets   tss   transactionDatas   datas   pkgLists   kernelss   packagesToGets   missing_packagess   addss   removess   removeinstancess   pkgs   modes   getAllPkgInfos   packages   appends	   getHeaders   hdrs   up2dateErrorss   RpmErrors   _s
   addInstalls   rpmUtilss   installedHeaderIndexs	   instancess   installedHeaderByKeywords   hdrss   installedHeaderIndexByPkgs   installedHeaderByPkgs   instances   addErases   errmsgs   PackageNotAvailableErrors   has_keys   vsflags   flags
   setVSFlagss
   getPackages   setProbFilters   RPMPROB_FILTER_OLDPACKAGE(   s   transactionDatas	   instancess   pkgs   pkgLists   kernelss   addss   vsflags   tss   missing_packagess   instances   hdrss   allPkgss   removess   flags   hdrs   packages   removeinstancess   packagesToGets   modes   errmsg(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   genTransactionß  sp     

    i   c         C   sß  t  i ƒ  }
 t i ƒ  } | t j o | d } n |  i	 d ƒ } t i ƒ  } |  i ƒ  } |  i ƒ  | o t i t d ƒ | ƒ ‚ n | d o |  i	 | t i Bƒ nD d } | d o | o |
 i d ƒ t i } n |  i	 | | Bƒ t | | ƒ t i |  | | ƒ t i ƒ  } g  } g  }	 x, | D]$ } | | j o | i# | ƒ q,q,Wx, | D]$ } | | j o |	 i# | ƒ q[q[W| d o@ t$ | ƒ o t% i& | ƒ n t$ |	 ƒ o t% i' |	 ƒ qÎn t( | | ƒ d  S(   Ns
   storageDiri    sA   Dependencies should have already been resolved, but they are not.s   justdbs   enableRollbackss   Creating rollback packages...s   useRhn()   s
   up2dateLogs   initLogs   logs   configs   initUp2dateConfigs   cfgs   transdirs   Nones   tss   setFlagss	   origflagss   rpmUtilss   getInstalledPackageLists   oldInstalledPackagess   checks   depss   orders   up2dateErrorss   DependencyErrors   _s   rpms   RPMTRANS_FLAG_JUSTDBs	   transflags   rollbacktranss   log_mes   RPMTRANS_FLAG_REPACKAGEs   runPkgPreSpecialCasess   removeds   addeds   runTransactions   rpmCallbacks   newInstalledPackagess   removedPackagess   addedPackagess   pkgs   appends   lens   rhnPackageInfos   remoteDelPackagess   remoteAddPackagess   runPkgPostSpecialCases(   s   tss   addeds   removeds   rpmCallbacks   transdirs   rollbacktranss   removedPackagess   cfgs   pkgs   addedPackagess   logs   oldInstalledPackagess	   origflagss   newInstalledPackagess	   transflags   deps(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   runTransaction3  sJ    
  c         C   sa  t  i ƒ  } y | i d t i |  ƒ ƒ Wn n Xt i ƒ  } t
 |  ƒ } t i ƒ  } | i d ƒ g  } g  } g  } xVt | ƒ D]H} t |  | ƒ } | o|  | } t i ƒ  } | i | d ƒ } y t | ƒ } Wn+ t i j
 o } t  i! d | ƒ ‚ n Xd } x- | d D]! }
 |
 | d j o
 d } qqW| o$ | i$ | | d	 ƒ | i% | ƒ n! | i$ | | d
 ƒ | i% | ƒ d | d j o | i% | ƒ qÌq„ t  i! t& d ƒ |  | ƒ ‚ q„ Wd } y t i( } Wn t* j
 o t+ } n Xd }	 | o3g  } xÖ | D]Î } d } d } | i1 ƒ  o | i1 ƒ  } n | i2 ƒ  o | i2 ƒ  } n | i3 ƒ  | i4 ƒ  | i5 ƒ  | | f } t6 i7 | ƒ } | oE | d d o2 | i% | i3 ƒ  | i4 ƒ  | i5 ƒ  f ƒ t+ }	 qèqqW| oI Ht& d ƒ GHd d GHx, | D]$ } d | d | d | d f GHqWHq@n t: | | | | d |	 ƒ| Sd  S(   Ns   installing packages: %s i   i   s   %si    s   Providenames   pkgsToInstallNotUpdatei   s   is   us   kernels   Could not find header for %ss    s	   removetidsÂ   Warning: The following packages are being updated, but these packages
have already been repackaged and this is currently not supported.
Repackage support for this transaction has been disabled.
s   -i(   s   %s-%s-%si   s   rollbacktrans(<   s
   up2dateLogs   initLogs   logs   log_mes   up2dateUtilss   pprint_pkglists   pkgLists   configs   initUp2dateConfigs   cfgs   lens   totals   rpms   TransactionSets   tss
   setVSFlagss   addeds   removeds   kernelss   ranges   p_is	   getHeaders   hdrs   pkgs
   rhnChannels   getChannelss   channelss
   getByLabels   channels   getRealHeaders   errors   es   up2dateErrorss   RpmErrors   installs   providenames
   addInstalls   appends   _s   supportsReRepackages   allowsReRepackages   tmps   AttributeErrors   Nones   rollbacktranss   repackagelists   tes   epochs   archs   Es   As   Ns   Vs   Rs   rpmUtilss   installedHeaderByPkgs   hdrss   ps   runTransactions   rpmCallback(   s   pkgLists   rpmCallbacks   p_is   cfgs   channelss   pkgs   totals   tmps   tss   rollbacktranss   providenames   epochs   tes   channels   addeds   hdrss   kernelss   removeds   archs   logs   es   hdrs   repackagelists   supportsReRepackages   ps   install(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   installPackagesn  sˆ     
 ! '(	 "	c         C   sË  h  } t g | d <h  } h  } h  } h  } h  } h  } h  } xÅ | D]½ } | i | d ƒ oB | i | d ƒ o | | d i | ƒ q  | g | | d <n t } xX | d D]L } | i | ƒ o6 | i | ƒ o | | i | ƒ qý | g | | <q± q± WqD WxÅ |  D]½ } | i | d ƒ oB | i | d ƒ o | | d i | ƒ qh| g | | d <n t } xX | d D]L } | i | ƒ o6 | i | ƒ o | | i | ƒ qÅ| g | | <qyqyWqWx: | i ƒ  D], } x# | | D] }	 t |	 | | ƒ qëWqÚWx: | i ƒ  D], } x# | | D] }	 t |	 | | ƒ q(WqWx= | i ƒ  D]/ }
 x& | |
 D] }	 t |	 | |
 g ƒ qeWqTWx= | i ƒ  D]/ }
 x& | |
 D] }	 t |	 | |
 g ƒ q¥Wq”Wd  S(   Ns   up2dates   names   provides(   s   addedPackageMethodss   printUp2dateWarnings   addedPackageProvidesMethodss   removedPackageMethodss   removedPackageProvidesMethodss   addedProvidesPackagess   addedNamePackagess   removedProvidesPackagess   removedNamePackagess   addeds   hdrs   has_keys   appends   Nones   hitProvidess   provides   removeds   keyss   pkgNames   methods   applys   provideName(   s   removeds   addeds   removedPackageMethodss   pkgNames   addedPackageProvidesMethodss   hdrs   provides   removedProvidesPackagess   hitProvidess   methods   provideNames   addedProvidesPackagess   removedPackageProvidesMethodss   addedPackageMethodss   removedNamePackagess   addedNamePackages(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   runPkgPreSpecialCasesÏ  sn                c         C   s	   d GHd  S(   Ns   New Up2date available(    (   s   hdrs(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   printUp2dateWarning  s    c         C   så  h  }	 t g |	 d <h  } t g | d <h  } h  } t g | d <h  } h  } h  } h  } xÅ | D]½ } |	 i | d ƒ oB | i | d ƒ o | | d i | ƒ qº | g | | d <n t } xX | d D]L } | i | ƒ o6 | i | ƒ o | | i | ƒ q| g | | <qË qË Wq^ WxÅ |  D]½ } | i | d ƒ oB t i | d ƒ o | | d i | ƒ q‚| g | | d <n t } xX | d D]L } | i | ƒ o6 | i | ƒ o | | i | ƒ qß| g | | <q“q“Wq&Wx: | i ƒ  D], } x# |	 | D] }
 t |
 | | ƒ qWqôWx: | i ƒ  D], } x# | | D] }
 t |
 | | ƒ qBWq1Wx= | i ƒ  D]/ } x& | | D] }
 t |
 | | g ƒ qWqnWx= | i ƒ  D]/ } x& | | D] }
 t |
 | | g ƒ q¿Wq®Wd  S(   Ns   up2dates   kernels   names   provides(   s   addedPackageMethodss   printUp2dateWarnings   addedPackageProvidesMethodss   installBootLoaders   removedPackageMethodss   removedPackageProvidesMethodss   unInstallBootLoaders   addedProvidesPackagess   addedNamePackagess   removedProvidesPackagess   removedNamePackagess   addeds   hdrs   has_keys   appends   Nones   hitProvidess   provides   removeds   removedMamePackagess   keyss   pkgNames   methods   applys   provideName(   s   removeds   addeds   removedProvidesPackagess   provideNames   removedPackageMethodss   addedPackageProvidesMethodss   provides   hitProvidess   addedNamePackagess   addedPackageMethodss   methods   removedPackageProvidesMethodss   pkgNames   removedNamePackagess   hdrs   addedProvidesPackages(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   runPkgPostSpecialCasesL  sr                c         C   s©  t  i ƒ  }
 y |
 i d t i |  ƒ ƒ Wn n Xt i ƒ  } t
 |  ƒ } t i ƒ  } | i d d d >Bƒ g  } x¨ t | ƒ D]š } d |  | d |  | d |  | d f }	 | d oQ x[ | d D]> } t i |  | d | ƒ o t i |	 ‚ qÇ | i |	 ƒ qÇ Wq€ | i |	 ƒ q€ Wh  } xJ | D]B }	 y | i |	 ƒ Wq+t i j
 o } t | ƒ | |	 <q+Xq+Wt
 | i ƒ  ƒ o t i | ‚ n t  | | ƒ d Sd  S(	   Ns   removing packages: %s i   i   i   s   %s-%s-%si    i   s   removeSkipList("   s
   up2dateLogs   initLogs   logs   log_mes   up2dateUtilss   pprint_pkglists   pkgLists   configs   initUp2dateConfigs   cfgs   lens   totals   rpms   TransactionSets   tss
   setVSFlagss   remove_lists   ranges   p_is   pkgNames   patterns   fnmatchs   up2dateErrorss   RpmRemoveSkipListErrors   appends   failed_packagess   addErases   errors   es   strs   keyss   RpmRemoveErrors   runTransactions   rpmCallback(   s   pkgLists   rpmCallbacks   failed_packagess   p_is   cfgs   totals   patterns   tss   remove_lists   pkgNames   logs   e(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   removePackagesœ  s>     +  c   
      C   s…  t  i ƒ  } t i ƒ  } | d o d  Sn | d o d  Sn | i d ƒ g  }	 g  } x¹ |  D]± } | d } | t j o
 d } nL | d j o
 d } n5 t i | d d ƒ d	 d
 } | d j o
 | } n d | d | d | f } | i | | f ƒ | i d | ƒ q^ Wt i ƒ  } d } t i ƒ  d j o
 | d j o t | ƒ n/ t i ƒ  d j o
 | d j o t | ƒ n d  S(   Ns   noBootLoaders   justdbs:   Modifying bootloader config to removed the old kernel infos   names    s   kernels   -i   iÿÿÿÿi    s   %s-%s%ss   versions   releases   Adding %s to bootloader configs   LILOs   i?86s   GRUB(   s   configs   initUp2dateConfigs   cfgs
   up2dateLogs   initLogs   logs   log_mes   krnLists
   kernelLists   kernelss   krns	   extraInfos   Nones
   infoStrings   strings   splits   verRels   appends   checkbootloaders   whichBootLoaders
   bootloaders   up2dateUtilss   archGlobs   __uninstall_lilos   __uninstall_grub(
   s   kernelss
   infoStrings   logs
   kernelLists	   extraInfos   krns   cfgs   verRels
   bootloaders   krnList(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   unInstallBootLoaderÏ  s8     



  c   	      C   s”  t  i ƒ  } t i ƒ  } | d o d  Sn | d o d  Sn | i d ƒ g  } x¹ |  D]± } | d } | t j o
 d } nL | d j o
 d } n5 t i | d d ƒ d	 d
 } | d j o
 | } n d | d | d | f } | i | | f ƒ | i d | ƒ qX Wd } t i ƒ  d j o
 | d j o t | ƒ nP t i ƒ  d j o
 | d j o t | ƒ n" t i ƒ  d j o t | ƒ n d  S(   Ns   noBootLoaders   justdbs:   Modifying bootloader config to include the new kernel infos   names    s   kernels   -i   iÿÿÿÿi    s   %s-%s%ss   versions   releases   Adding %s to bootloader configs   LILOs   i?86s   GRUBs   ia64(   s   configs   initUp2dateConfigs   cfgs
   up2dateLogs   initLogs   logs   log_mes
   kernelLists   kernelss   krns	   extraInfos   Nones
   infoStrings   strings   splits   verRels   appends
   bootloaders   up2dateUtilss   archGlobs   __install_lilos   __install_grubs   __install_elilo(	   s   kernelss
   infoStrings   logs
   kernelLists   cfgs	   extraInfos   krns   verRels
   bootloader(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   installBootLoaderü  s8     



  c         C   s6   t  i ƒ  } | i d ƒ t i |  d d ƒ} | Sd  S(   Ns(   Running elilo with the new configurations   testi    (   s
   up2dateLogs   initLogs   logs   log_mes   elilocfgs   installNewImagess
   kernelLists   ret(   s
   kernelLists   logs   ret(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   __install_elilo.  s    c         C   s6   t  i ƒ  } | i d ƒ t i |  d d ƒ} | Sd  S(   Ns'   Running lilo with the new configurations   testi    (   s
   up2dateLogs   initLogs   logs   log_mes   lilocfgs   installNewImagess
   kernelLists   ret(   s
   kernelLists   logs   ret(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   __install_lilo4  s    c         C   s6   t  i ƒ  } | i d ƒ t i |  d d ƒ} | Sd  S(   Ns'   Running lilo with the new configurations   testi    (   s
   up2dateLogs   initLogs   logs   log_mes   lilocfgs   removeImagess
   kernelLists   ret(   s
   kernelLists   logs   ret(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   __uninstall_lilo:  s    c         C   s6   t  i ƒ  } | i d ƒ t i |  d d ƒ} | Sd  S(   Ns   Installing the kernel via grubs   testi    (   s
   up2dateLogs   initLogs   logs   log_mes   grubcfgs   installNewImagess
   kernelLists   ret(   s
   kernelLists   logs   ret(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   __install_grub@  s    c          C   sZ  t  i ƒ  t i d d ƒ } t i ƒ  } xx | D]p } | d o t	 | d ƒ } n d } | d | d | d | | d g } d }
 | i d	 i | |
 f ƒ q/ Wd  k }	 t i ƒ  } xX | D]P } |	 i | d
 d ƒ o3 d }
 d | |
 f GH| i d	 i | |
 f ƒ q¿ q¿ W| GH| i ƒ  GHt | ƒ } | GHd  k }  |  i ƒ  } t | | ƒ d  S(   Ns   names   kde*s   epochs   0s   versions   releases   archs   es   packagesi    s   gnome*s   is   blargh: (%s,%s)(   s   up2dateAuths   updateLoginInfos   rpmUtilss   installedHeaderByKeywords
   removeHdrss   transactions   TransactionDatas   tsds   hdrs   strs   epochs   pkgs   modes   datas   appends   fnmatchs   rhnPackageInfos   getAvailablePackageLists   pkgss   displays   genTransactions   tsis   wrapperUtilss   RpmCallbacks   rpmCallbacks   runTransaction(   s   wrapperUtilss   rpmCallbacks   hdrs   tsis   pkgss   tsds   epochs
   removeHdrss   pkgs   fnmatchs   mode(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   testH  s4    
 %	 "	s   __main__(J   s   __doc__s   oss   syss   strings   res   fnmatchs   globs   rpms   sockets   times   StringIOs   up2dateUtilss
   up2dateLogs   up2dateErrorss   up2dateAuths   repoDirectors
   rhnDefiness   rhnPackageInfos   checkbootloaders	   xmlrpclibs   rpmUtilss	   rpcServers	   depSolvers	   rollbackss   transactions   elilocfgs   lilocfgs   grubcfgs
   rhnChannels   configs   signals   rhns   rpclibs   ImportErrors
   __import__s   rhpl.translates   _s   N_s   reloadConfigs   setEpochPromotes   checkForStorageDirs   computeAvailablePackagess   computeUnavailablePackagess   getErrataInfos   Nones	   getHeaders   removeHeaders   isPackageCacheds   getRealHeaders
   getPackages   removePackages   avail_package_dicts   getArchesOfAvailablePackagess
   UpdateLists   hasBadSignatures   dryRuns   undos   getAllPkgInfos   printits   genTransactions   runTransactions   installPackagess   runPkgPreSpecialCasess   printUp2dateWarnings   runPkgPostSpecialCasess   removePackagess   unInstallBootLoaders   installBootLoaders   __install_elilos   __install_lilos   __uninstall_lilos   __install_grubs   tests   __name__(B   s   unInstallBootLoaders
   getPackages
   rhnDefiness	   rpcServers   up2dateErrorss   installPackagess   elilocfgs   genTransactions   computeAvailablePackagess   __install_lilos   rpms	   rollbackss   removePackagess   getErrataInfos
   up2dateLogs   checkbootloaders   avail_package_dicts   isPackageCacheds   runPkgPreSpecialCasess   getRealHeaders   __uninstall_lilos   res   getArchesOfAvailablePackagess   rpclibs   grubcfgs   configs   __install_elilos
   rhnChannels   reloadConfigs   removeHeaders   strings   tests   globs   lilocfgs   undos   runTransactions   syss   printUp2dateWarnings   up2dateUtilss   checkForStorageDirs   __install_grubs   rhnPackageInfos
   UpdateLists   hasBadSignatures   _s   removePackages   repoDirectors   computeUnavailablePackagess   transactions   dryRuns   sockets   StringIOs   getAllPkgInfos   signals	   xmlrpclibs   printits   N_s   up2dateAuths   installBootLoaders   times   fnmatchs   rpmUtilss   runPkgPostSpecialCasess   oss	   getHeaders	   depSolver(    (    s(   /usr/share/rhn/up2date_client/up2date.pys   ?   sŠ   																											
					
						
.	 h				T;	a	D	9	P	3	-	2					.