mò P´ÞIc@s¡dkTdkTdkZdkZdkZdkZdkZeƒ\ZZ dfd„ƒYZ e ƒZ e dƒo2dGHx*e i iƒD]\ZZeGeGHqˆWnedƒo¿e i iƒZgZx^eD]VZeeƒdjo=edd j o+ee i eƒdjoeieƒqÎqÎWeeƒdjo-d GHeiƒx eD]Zd eGHqQWqqd GHnd efd„ƒYZdefd„ƒYZdS((t*NtTarSavecBs>tZd„Zd„Zd„Zd„Zd„Zd„ZRS(NcCstiittdtd ƒ|_tii|iƒoIy2t |idƒ}t i |ƒ|_ |iƒWq‹h|_ q‹Xn h|_ dS(Nttritr(tostpathtjoint pac_anchort pacmanDirtversiontselft_tarpathtexiststopentftcPickletloadt_dbtclose(R R((tb/home/faculty/youssef/public_html/pacman/sample_cache/tarballs/pre/tmp/pacman-3.29/src/Untarzip.pyt__init__s#cCsatƒ}y3t|idƒ}ti|i|ƒ|i ƒWntd|idƒ}nX|S(NtwsCan't write to [s].( tReasonRR R R RRtdumpRR(R RR((Rtsaves cCs$|ii|ƒo||i|jS(N(R Rthas_keyRttarball(R RR((Rthas*scCs{|ii|ƒo|i|i|ƒn|g|i|...i'sError executing [s] returns status code [s].(tcRRR RCtzt gnuTarNameR,tcommandtverbotlogtasktretokRRtbasenameR9ttimetsleeptcommandstgetstatusoutputtstatustoutputtstringtsplittttttRR( R RTRFRYRRIRXRURG((Rt getContents“s6   -  $ cCstd|id|i ƒS(Ns Tarball [s] has not been untar/zipped(RR R,tacquired(R ((RR@®scCstƒS(N(R(R ((Rt satisfiable¯sc s´ˆiƒtˆiƒˆ_tiddtiiˆiƒdƒtdƒo%t dtiiˆiƒdƒnt dˆidtii tˆiƒƒ ƒ}|i ƒozˆiƒ\}}|i ƒoWt|ƒd jopt|d d ƒo\ti|d d ƒd ˆ_t|‡d †ƒ}|otˆiƒˆ_q]d ˆ_n d ˆ_gˆ_h}x¹|D]­} ti| d ƒ} d }xŒt| ƒd jox|| id ƒ}t| ƒd jo|d }n|i|ƒp0d ||ˆi<d/ƒˆ_?ˆi?i@ƒ}q¬ˆid jo&t dˆid0ˆi<d1ƒ}q¬t=i>ˆi<ˆiƒˆ_?ˆi?i@ƒ}q°n|S(2NRDs Untarring [s]...s tar-briefs Untarring s...s Tarball [s] doesn't exist.iR'csˆiti|dƒdjS(NR'i(R t_rootRVRWtx(R^(R (Rt½sR+ttarfilessbad-tar-filenamess::sFile [s] from tarball [sL] contains a file name with a non-standard character (see -allow to ignore).s] would overwrite [s] with a directory.s tar-overwrites] would overwrite directory [s+] with a file of the same name. Is this OK?s] with a file.sWARNING: Untarring [s] will overwrite directory [s] will overwrite [s ] saving...sOK to overwrite [s ] untarring [s]?sUntarring tarball [t]sWARNING: Untarring tarball [s OK to untar [s -zs] does not exist in [s]. Can't untar.tlsstarPause: sleeping for s seconds...s --no-same-owner s -xf tnoclearidstar-savet.s@] does not untar into a single top level directory. Can't set [s].(AR REtfullpathR,RJRKRRROtflickerRR RRNRZtpathsRtcontainsRVRWR]tforalltrootOkR/tcdbR^txsplittyR"Rt fullpath2tyyRtvertallowtbadRBtisdirt_tarSaveRR7tBasicstyesnoRLRMRCRGtgetcwdRtsystemR9RPRQtgnuTarOKt ExecutiontexecuteRHtfreedisktenoughFreeDiskt removeFileR.tEnvironmentVariablet SetenvTempR2tsatisfy( R RkRgRpRoRmRjRrRR^RGRl((R Rtacquire±sÎ ' %0  '     +          #  # #   )  "5  80) &cCstƒ}t|idƒo|iiƒntidd|idƒtdƒot d|idƒnx¨|i D]}t i i|ƒo„t|dƒo»ti|ƒd jo‹tid |d d ƒ}|iƒp`tid |d d ƒ}|iƒotid |d d ƒ}n|iƒo |}q>qBnti|iƒ|ƒqti|ƒd jo‰tid|d d ƒ}|iƒp`tid|d d ƒ}|iƒotid|d d ƒ}n|iƒo |}qùnd o÷|iƒoê|ii|ƒoÓtidd|d|idƒ}|iƒotidd|d|idƒy;t|dƒ}|i|i|ƒ|iƒ|i|=Wqït t!fj o&td|d|idƒ}qïXqóq÷qûnti|iƒ|ƒqxqxW|S(NR>RDs!Removing untarred contents from [s]...s tar-briefs Removing s contents...R'is rm -r -f "t"Rcschmod -R a+w "srm -f "s chmod a+w "s tar-overwritesOK to restore [s] previously overwritten by [s]?R`s Restoring [s'] originally overwritten by untarring [RsCan't restore saved file [s] from tarball [s].("RRR4R R2trestoreRJRKR,RfR/R^RRR RBRtR$RzR{RNtr2R#R7R0RRLRMR RtwriteRtIOErrortOSError(R R…RRR^((RtretractsR         % # 4cstdƒ}|oâtˆiƒdjo'ttˆiƒdˆidƒ}ndˆidGHtƒ}d}x›ˆiD]t}|d}tˆiƒdjo|i |ƒnt ii|ƒp*|itd|dˆid ƒƒqyqyWntˆi‡d †ƒ}|S( NR`ièsVerifying untarred content of [s]...iisUntarred file [s] from [s ] is missing.cs-td|dˆidtii|ƒ ƒS(NsUntarred file [s] from [s ] is missing.(RR^R R,RRR (R^(R (RR_Gs(RJtvRR R/tMeterR,tmt AllReasonRtcountR^tmeterRRR RRt allReason(R RŽRŒRRŠR^((R Rtverify;s  '   2(R%R&R>ttitletactionRR5R6R7R9R:R;R=RARCR)RERZR@R\R‚R‰R‘(((RR(Rs*             ` *tUntarzipDeletablecBs#tZdZdZdZd„ZRS(Ns untar vdts Untars vdtcCstd| dd|i ƒS(Nt[Ras hasn't been untarred.(RR R[(R ((RR@Os(R%R&R>R’R“R@(((RR”Js(tBaset EnvironmentRRzR|RPRut gnuTarFinderRyttarNameRRtRRtitemstkeytvaltswitchtkeystk2tkRRtsortR(R”(RuRœRŸRžR R(RtR”RR|R™RR›RPRzRy((Rt?s:   0    ?  ø