m d^Jc@sadkTdkZdkZdkZdkZdkZdkZdkZdkZdk Z dk Z dk Z dk Z dk Z dZdZdZdZy:eiZeiidoeidZndZWn%ej odGHeidnXeeid YZ;d?fd@YZ<dAfdBYZ=dCZ>dDZ?dEZ@dFZAdGZBdHZCe iDe*dIZEdJZFdKZGdLZHdMZIdNZJdOZKdPZLdQZMdRZNdSfdTYZOddUdVZPdWZQdXeRfdYYZSdZeRfd[YZTeTZUdd\d]ZVd^ZWd_ZXd`ZYdaZZdbZ[dkTdcddZ\deZ]dfZ^dgZ_dhZ`diZadjZbdkZcdlZddmZednZfdoZgdpZhdqZidrZjdsZkdtZlduZmendveioZpendweioZqdxZrdyZsdzZtd{Zud|Zvd}Zwd~ZxdZyexdp exdZzdZ{dZ|dZ}dZ~dZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZddZdZdeddZdZdfdYZedhdd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<Zedhdd<dd<dd<Zedhdd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd <d d <d d <dd<dd<Zedhdd<dd<dd<dd<dd<Zedhdd<dd<dd <d!d"<d#d$<d%d&<dd'<d(d)<d*d+<d,d-<d.d/<d0d1<d2d3<d4d5<d6d7<d8d9<d:d;<d<d=<d>d?<Zed@hdAdB<ddC<dDdE<dFdG<dHdI<dJdK<ZedhddL<dMdN<dOdP<ZedhdQdR<dSdT<dUdV<dWdX<dYdZ<d[d\<d]d^<d_d`<dadb<dcdd<dedf<dgdh<didj<dkdl<dmdn<dodp<dqdr<dsdt<dudv<dwdx<Zedyhdzdb<d{dd<d|df<d}dh<d~dj<ddl<ddn<ddp<ddr<ddt<ddv<ddx<Zedhdzd<d{d<d|d<d}d<d~d<dd<dd<dd<dd<dd<dd<dd<Zedhdd<dd<dQd<dSd<dUd<dd<dWd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<ZdZdZdZdZdZdefdYZedhdd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<d#d<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<dd<ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdfdYZdkZed6ZdZdZdZdZdS( (t*Ns3.29s3.19ts o..pacman..otPWDs)Current working directory does not exist.it PAC_ANCHORicCstittidS(Ni(tstringtstriptstrtsystexc_info(((t^/home/faculty/youssef/public_html/pacman/sample_cache/tarballs/pre/tmp/pacman-3.29/src/Base.pytbaseErrorMessagescCst||dS(NcCs ||jS(N(txty(R R ((R ts(t sublistEQtatb(RR((R tsublistscCs|}|}xst|djo_t|djoL|i}x9t|djo%|i}|||oPqFqFWqWt|djS(Ni( RtaaRtbbtlentpopR R teq(RRRRRR R ((R Rs&  cCsddtddg}xc|D][}|i|d|i|d|i|d|i|d|i|dqW|id|id|id|idt |id|id |id |id |id |id |id|id|id|id|id|id|idt |id|id|id |id|id|id|id|id|iddS(Nt#s #-- Setup script made by Pacman s' and is often regenerated. DO NOT EDITs s# s#-- begin pre-setup ssetenv PAC_ANCHOR "%s" s'if (-d "${PAC_ANCHOR}/pre-setup") then sm foreach PACMANi (`/usr/bin/env find "${PAC_ANCHOR}/pre-setup" -maxdepth 1 -type f -name '*.csh' | sort`) s source "${PACMANi}" s end s unsetenv PACMANi sendif s#-- end pre-setup sexport PAC_ANCHOR="%s" s*if [ -d "${PAC_ANCHOR}/pre-setup" ]; then sm for PACMANi in `/usr/bin/env find "${PAC_ANCHOR}/pre-setup" -maxdepth 1 -type f -name '*.sh' | sort`; do s done s unset PACMANi sfi ( tversiontlinestlinetcshtwritetshtpytpltksht pac_anchor(RRRRR RR((R t shellHeader#sD                       cCs^|id|id|id|idt|id|id|id|id|id|id |id|id |id|id|id|id|id t|id |id |id|id|id|id|id|id |iddS(Ns# s#-- begin post-setup ssetenv PAC_ANCHOR "%s" s(if (-d "${PAC_ANCHOR}/post-setup") then sn foreach PACMANi (`/usr/bin/env find "${PAC_ANCHOR}/post-setup" -maxdepth 1 -type f -name '*.csh' | sort`) s source "${PACMANi}" s end s unsetenv PACMANi sendif s#-- end post-setup sexport PAC_ANCHOR="%s" s+if [ -d "${PAC_ANCHOR}/post-setup" ]; then sn for PACMANi in `/usr/bin/env find "${PAC_ANCHOR}/post-setup" -maxdepth 1 -type f -name '*.sh' | sort`; do s done s unset PACMANi sfi (RRR!R(RRRRR ((R t shellFooterHs4                       cCs6d}x)|D]!}||pd}tq q W|S(Nii(tqR txxtftexit(R R&R$R%((R tforalles  cCs6d}x)|D]!}||od}tq q W|S(Nii(R$R R%R&R'(R R&R$R%((R texistsms  tSetcBstZRS(N(t__name__t __module__(((R R*ustPreOrdercBs,tZdZdZdZdZRS(NcCstddS(NsMissing __le__ in PreOrder.(tabort(tselfR ((R t__le__yscCs ||jS(N(R R/(R/R ((R t__ge__{scCs||jo ||j S(N(R/R (R/R ((R t__lt__|scCs||jo ||j S(N(R/R (R/R ((R t__gt__}s(R+R,R0R1R2R3(((R R-xs   t PartialOrdercBs5tZdZdZdZdZdZRS(NcCstddS(NsMissing __le__ in PreOrder.(R.(R/R ((R R0scCs||jo ||jS(N(R R/(R/R ((R t__eq__scCs ||jS(N(R R/(R/R ((R R1scCs||jo ||j S(N(R/R (R/R ((R R2scCs||jo ||j S(N(R/R (R/R ((R R3s(R+R,R0R5R1R2R3(((R R4s     t PreOrderAlphacBs#tZdZdZdZRS(NcGs(g}|D] }||q ~|_dS(N(t_[1]R R%R/t_list(R/R R7R%((R t__init__scCs t|iS(N(RR/R8(R/((R t__len__scCs|i|ijS(N(R/R8R (R/R ((R R0s(R+R,R9R:R0(((R R6s  tPreOrderVectorcBs#tZdZdZdZRS(NcGs(g}|D] }||q ~|_dS(N(R7R R%R/R8(R/R R7R%((R R9scCs t|iS(N(RR/R8(R/((R R:scs;ttjo"tttdS(Ncsi|i|jS(N(R/R8tiR (R<(R R/(R R s(RR/R R(trange(R/R ((R/R R R0s(R+R,R9R:R0(((R R;s  tPrintOutcBstZdZddZRS(NcCstddS(Ns!Missing __repr__ function in Set.(R.(R/((R t__repr__sicCs|d| GHdS(Nt (tindR/(R/RA((R tdisplays(R+R,R?RB(((R R>s tMonoidcBstZdZRS(NcCstddS(NsMissing + in Monoid.(R.(R/R ((R t__add__s(R+R,RD(((R RCstListcBs>tZdZdZdZdZdZdZRS(NcCstddS(NsMissing index in List object.(R.(R/R<((R t __getitem__scCstddS(NsMissing len in List object.(R.(R/((R R:scCstddS(NsMissing append in List.(R.(R/R ((R tappendscCs"x|D]}|i|qWdS(N(txsR R/RG(R/RHR ((R textendscCstddS(NsMissing pop in List.(R.(R/R<((R RscCs,x%t|djo|idqWdS(Ni(RR/R(R/((R temptys(R+R,RFR:RGRIRRJ(((R REs      tShellOutcBstZdZRS(NcCstddS(NsMissing shellOut in ShellOut.(R.(R/RRRRR ((R tshellOuts(R+R,RL(((R RKscCs0yti}Wntj o d}nX|S(Ns - undefined -(tostgetcwdtctOSError(RO((R tcwdds  cCs^y,t|d}ti|}|iWn+ttfj ot d|dnX|S(NtrsFailure reading from file [s].( topentpathR&tcPickletloadtobjtclosetIOErrorRPR.(RTRWR&((R tgetstIOAblecBstZdZRS(NcCsiy7t|t|d}ti|||iWn+tt fj ot d|dnXdS(NtwsFailure writing to file [s].( t removeFileRTRSR&RUtdumpR/RXRYRPR.(R/RTR&((R tputs (R+R,R_(((R R[stHtmlOutcBstZdZRS(NcCs|i|dS(N(R/thtmlOutR\(R/R\((R thtmlLines(R+R,Rb(((R R`stReasoncBstZdddZdZdZddZddZd Zd Zd Z d Z d dZ dZ dZ dZRS(NtokicCsA|djo ||_n$|djo ||_n d|_dS(NiiRd(tflagtreasonR/t_reason(R/RfRe((R R9s    cCs|iS(N(R/Rg(R/((R R?scCs|i|ijS(N(R/RgR (R/R ((R R5sicCs|i|dS(N(R/RBtindent(R/Rh((R t_displayscCsY|ipHt|do"|dd|iiidGHn|dd| GHndS(Nt_packageR@sError in package [s]:s (R/RdthasattrRhRjt_spectname(R/Rh((R RBs "cCs |idjS(NRd(R/Rg(R/((R tisNullscCs |iS(N(R/Rn(R/((R RdscCs ||_dS(N(treasR/Rg(R/Ro((R RfscCs|i|_dS(N(RRRgR/(R/RR((R RGsicCs|i| dS(N(R\ttextR/(R/R\tbullet((R RascCs$|ipt| ndSdS(Ni(R/RdR.(R/((R trequires cCs%|ip|in|iS(N(R/RdRB(R/((R tinquires cCst|doI|iig}|D]}||iq$~jo|i|iqYnt|t o%x"|i D]}|i |qsWndS(NRj( RkR/RjRlR7tpstpRGt isinstancet AllReasont_reasonsRRt _packages(R/RtR7RuRR((R Rys1 (R+R,R9R?R5RiRBRnRdRfRGRaRrRsRy(((R Rcs           RwcBs}tZdZddZdZdZddZddZdZd Z d Z d d Z d Z dZ RS(Ns"All of the following are problems:cCsg|_||_dS(N(R/Rxtheadline(R/Rz((R R9s cCsM|iodSn5|id}x |iD]}|| d}q,W|SdS(NRdR@(R/RdRztsRxRR(R/RRR{((R R?s   cCs t|iS(N(RR/Rx(R/((R R:sicCs|i|g}|i|xR|D]J}t|do|i}ng}x|D]}|d|GHqZWq'Wg}xL|D]D}t|do.|i }||jo|i |qqqWx0|D](}x|D]}|d|d GHqWqWdS(Nt_optionErrorMessageR@t_cacheErrorMessagei( R/RiRhRtRyRuRkR|RRtLR}RG(R/RhRtRR~RuR((R RBs.    cCs|io|ddGHn{|idjp|idjo%xW|iD]}|i|qHWn6|d|iGHx"|iD]}|i|dq}WdS(NR@RdRs"All of the following are problems:i(R/RdRhRzRxRRRi(R/RhRR((R Ris    cCs8|djo'|djo|iit|ndS(NRdR(RoR/RxRGRc(R/Ro((R RfscCs%|ip|ii|ndS(N(RRRdR/RxRG(R/RR((R RGs cCst|idjS(Ni(RR/Rx(R/((R RnsicCst|djo|idnt|djo+|i|ijo|idi|n|i|i|i|idd}xO|iD]D}|d}|i||t|ijo|idqqW|id|idS(NiRdis( RR/R\RpRzt headline0RxRatcrtcountRR(R/R\RqRRR((R Ras&    cCs|g}|idjo|it|inxE|iD]:}t|do|i|i q:|i|q:W|S(Ns"All of the following are problems:Rx( t reasonListsR/RzRGRcRxRRRkRItflatten(R/RRR((R R.s cCs|i}t|dS(NcCs ||jS(N(R R (R R ((R R 9s(R/Rtrlt removedups(R/R((R tnodups7s (R+R,RR9R?R:RBRiRfRGRnRaRR(((R Rws         cCsq|i p|oXt}|i||i}x|D] }|GHq>Wt |djo dGHqmndS(NiRd( RfRdtmodeRwRRRGRRtrrR(RfRRRRR((R t reasonDisplay;s    t ExistsReasoncBstZdZRS(Ns+One of the following prevents installation:(R+R,Rz(((R RCscCs1t}x!|D]}|i||qW|S(N(RwtreasonsR~R RGR&(R~R&RR ((R t allReasonFs  cCs<t}x,|D]$}||}|ipPqqW|S(N(RcRfR~R R&Rd(R~R&R Rf((R t allReasonQKs   cCsVt}xFtt|dddD](}|||}|ipPq&q&W|S(Nii(RcRfR=RR~R<R&Rd(R~R&R<Rf((R t allReasonQBRs  cCsRt}xB|D]:}||}|iot}Pq|i|qW|S(N(RRR~R R&RRRdRG(R~R&RRRR ((R t existsReasonYs   cCsjt}d}x>|D]6}||}|ip|i|qd}qW|o tSn|SdS(Nii( RRtexR~R R&RRRdRG(R~R&RRRRR ((R t existsReason2as     tRememberReasoncBs,tZdZdZdZdZRS(NcCs"||_d|_t|_dS(Ni(R&R/t_ft_testedRcRg(R/R&((R R9ls  cCs-|ip|i|_d|_n|iS(Ni(R/RRRg(R/((R trememberReasonqs  cCsd|_|iS(Ni(R/RR(R/((R t currentReasonws cCs d|_dS(Ni(R/R(R/((R treset{s(R+R,R9RRR(((R Rks   icCsI|}d}x3|i o$||jo|}|d}qW|S(Ni(R&RRtf_tryRdtmaxTry(R&RRRR((R tmultiTry~s  cCst}yt|d}xtt|D]f}xPtdD]B}x9tdD]+}x"tdD]}|i | qaWqNWq;W|i dq(W|i Wn-t tfj otd|d}nX|S(NR\i s sError creating temporary file [s].(RcRfRSRTR&R=t sizeInMegsR<R R tzRRXRYRP(RRTRR&R<RfR R ((R tmakeFileFixedSizes"     tHistorycBs4tZedZedZdZdZdZRS(Ns/logss/logs/history.txticGstii|iotii|ioytii|iot|id}nt|id}x(|D] }|i ||i dqtW|i d|i t |i|_Wqttfj o#|iod|_dGHqqXndS(NRR\s...s is'Warning: can't write to history file...(RMRTR)R/t_History__directorytisdirt_History__pathRSR&R R%RRXtfullpathRYRPt_History__warnedtwarned(R/R R&R%((R thistorys,    cCsg}tii|iotii|ioyht|id}|i }|i t |i|_x'|D]}|iti|dqvWWqttfj o dGHqXn|S(NRRs...sCan't read history file...(thRMRTR)R/RRRSRR&t readlinesRRXRRRGRtsplitRYRP(R/R&RRR((R t getHistorys,  !(R+R,t pacmanDirRRRRR(((R Rs    t FixedNamescBs>tZdZdZdZdZdZdZRS(NcCsg|_d|_dS(NR(R/t_namest_FixedNames__title(R/((R R9s cCs|i|ijS(N(R/RR (R/R ((R R5scCs)|iGHx|iD]}d|GHqWdS(Ns (R/ttitleRRm(R/Rm((R RBs cCs |i|S(N(R/RR<(R/R<((R RFscCs t|iS(N(RR/R(R/((R R:scst|dS(Ncs i|S(N(R/tcontainsR (R (R/(R R s(R(RH(R/RH((R/R t containsAlls(R+R,R9R5RBRFR:R(((R Rs      tEquivcBs,tZdZdZdZdZRS(NcCsg|_g|_x|D]|}|ii|d|df|d|ijo|ii|dn|d|ijo|ii|dqqWd}h|_x(|iD]}||i|<|d}qWd}x|od}xK|iD]@\}}|i||i|jp||d}}}PqqW|o<t |i||i|}|||i|<|i||io0|iid|idd|iindS(NR@is (R/RRRRtflush(R/((R Rs cCst|i|S(N(tgetattrR/RRm(R/Rm((R t __getattr__s(R+R,R9RRR!(((R Rs   tFlickercBstZdZRS(NcCsTtiio|td d}n |d}tii|tiidS(Nis s (RRRRRRR(R/R((R t__call__s  (R+R,R#(((R R"si<cCsz|djotiidnVt||jotii|| dn'tii||t|dddS(NRs s R@(RRRRRtmaxline(RR$((R R s  cCstiid|ddS(Ns (RRRR(R((R tflash2scCs\d}xO|D]G}|d}tii||t|jptiidq q WdS(Niis, (RRR RRRR(RRR ((R t niceListOuts cCsDd}d}t|t||}t|t||}tdo|djott |t t||djo1t t||djot dddq<t tt |t t||t t||dq@t tt |t t||t t||dd ndS( Nf 1000000.0f1000.0Rf2.0iiskB downloaded...sMB downloaded...s ( tmiltkRRRtmegtkbytesRRRROR(RRROR'R(R)R*((R tdlMeters 4  ICcCs~t|djo=|ddjo,tii|doti|d}n+tiitiitii |}|S(Nit$i( RRuRMRRtvalRTtabspatht expandusert expandvars(RuR-((R Rs;*cCs?t|}t|dot|d o|d}n|S(NR(RRuR R(RuR ((R t fullpath2s !s"Unrecoverable error. Contact Saul.cCs t|dS(N(tAbortExceptionR(R((R R.scCs|itidS(N(R toutRR(R ((R tprscCs]|o+|id|i||idn(|id|i||iddS(Nss s(tyesnoR&RthoutRa(R6R5R&((R t htmlColors    cCs]|o+|id|i||idn(|id|i||iddS(Nss s(R5R&RR(RR5R&((R t htmlColorStrs    cCsDt|djo)|dd!djp|dd!djSndSdS(Niithttpsftp:(RR (R ((R tisUrls)cCs#t|o|Sn t|SdS(N(R:R R(R ((R t fullNonURLs cCs t|S(N(R:R (R ((R tisURLscCs,||jp|d|jp||djS(NR(R R (R R ((R tequivURLscCs2d|jp$d|jpd|jp d|j S(Nt:t@s\R@(R (R ((R tisPath scCs7t|t|jo|t| |t| jS(N(RR R{(R R{((R R  scCs&|i|djodSndSdS(Nii(tdRR (RAR ((R tphas scCs$tiddjodSndSdS(Nit2i(RR(((R tpython2scCstdjptdjoti|ddSnXtdjoti|ddSn1ti|ddjo|SndGHtidS(NRR tSHELLRisUnknown unix shell.(tshellRtreplaceRtfindRR'(R((R tshxs cCsytitd}|djo d}n|djo d}n|djo d}nz|djo d}nc|djo d}nL|d jo d}n5|d jo d}n|d jo d }nd}Wn d}nX|S( Nis/bin/cshRs/bin/shRs /bin/tcshs /bin/bashs /bin/bash2s/bin/bshs/bin/ashs/bin/kshR (tpwdtgetpwnamt getusernameR R(R R((R RF%s,          cCsUto0tid|\}}}|idjSntid|djSdS(Nswhich Ri( RDRMtpopen3tcomtt1tt2tt3treadlineR(RNRPRQRO((R tqInpath5s c Csy8tid djoctid|dtd}|i}t |djo|d}nd}|i nt dd d|dtdd o|t id d|dtdtid|dtd\}}}|i}|i |i |i ntd d|d Wn1ttfj otd|ddfSnX|djotd|ddfSnCt|\}}|ot|fSntd|ddfSdS(NiRsgunzip --stdout s | s -t -f -iRs shell-allsAbout to execute [s]. OK?RFsPermission to execute [s" | tar -t -f -] has been declined.sFailure reading [s].s Tarball [s*] does not untar to a single subdirectory.(RRRMtpopenttarZfilet gnuTarNameR&RRRRRXtaskRtlogtpopen2RMtchildouttchildintchilderrRRR.RYRPRct parseTarLinetgot_roottroot( RUR_RZR&RR[RR\R^((R t parseTarZ<s0" +#+    c Csytid djo[titd|}|i}t |djo|d}nd}|i nt ddtd|doet id d |titd|\}}}|i}|i |i |i ntd d |d Wn1ttfj otd |ddfSnX|djotd|ddfSnCt|\}}|ot|fSntd|ddfSdS(NiRs -t -f iRs shell-allsAbout to execute [s]. OK?RFs tar -t -f sPermission to execute [s] has been declined.sFailure reading [s].s Tarball [s*] does not untar to a single subdirectory.(RRRMRTRVttarfileR&RRRRRXRWRRXRYRMRZR[R\RRR.RYRPRcR]R^R_( RaR_RZR&RR[RR\R^((R tparseTarZs0 ##    cCs.d|jodttifSn|}xDt|djo|ddjp|ddjo|d}q1Wx3t|djo|ddjo|d }qxWti|djod}d}nP|dti jo/d}ti|}ti |dd}n d}d}||fSdS(NRiiRis R( tline0RRMRNRRRRR^R_t printableR(RcR^R_R((R R]ys" 5$ cCsFt|djo3|ddj o!|ddj o|ddj S(Nit-itpacmanitpac(RR (R ((R R scCs!t|djo|ddjS(NiRe(RR (R ((R R scCsg}ti}xt|djo|id}|d|jobx_t|djoGt|ddjo0|dddj o|i|idqIWqqW|S(NiRe( RRtargvtp2RRtpartswRG(RkRiRjR((R t switchItemss @$cCsBd}x5tdttiD]}|dti|}qW|S(Ns % pacman iR@(R{R=RRRhR<(R<R{((R tpcls cCsXxQtD]I}|ti|d d|jo"d|ti|ddfSqqWdS(NR>ReiiR(iR(tswitchesR{RRHRk(RkR{((R t switchpars !&cCsnt|\}}d}|oEyt|}Wqdtj o"td|d| dqdXn||fS(Nis Command line error with switch [R>s].(RoRkR$RjR-Rt ValueErrorR.(RkRjR-R$((R t switchInts$cCs;t|\}}|o|ti|djSndSdS(Nt,i(RoRktswqRptitemRR(RkRtRpRs((R t switchItemscCsG|djodGHtin|ttjodSn t|SdS(Nis Hard error.R(R<RR'Rtparams(R<((R tparams  cCs t|S(N(tswitch0targ(Ry((R RscCs*tid|djodSndSdS(NReii(RnRRy(Ry((R RxstvtverbosecCs^g}xQt|D]C}|dd|jo|idn|id|d}qW|S(Niii(tbitsR=tnbitsR<R RG(R R}R<R|((R tintBitss  cCsCd}d}x0tt|D]}|||d|}qW|S(Nii(R RuR=RR|R<(R|R<RuR ((R tbits2Ints cCsYy'ttit|dd}Wn+ttfj otd|dnX|S(NiisError attempting to examine [s].( tuserRMtstatRRTtuRYRPR.(RTR((R towners 'cCspt}y'ttit|dd}Wn3tt fj o!d}td|d}nX||fS(NiiRsError attempting to examine [s].( RcRfRRMRRRTRRYRP(RTRfR((R towner2s 'cCsti}t|dS(Ni(RMtgeteuidteuidR(R((R RLs cCsAyti|}Wn'tj od}d| dGHnX|S(NtunknownsWarning: unknown userid [s].(RJtgetpwuidtuidtusernametKeyError(RR((R Rs cCsFy(ti|}d|d|dfSWntj o dSnXdS(Niiii(iii(RJRKRttR(RR((R tuseridss cCs5yti|}dSWntj o dSnXdS(Nii(RJRKRRR(RR((R t userexistss cCs5yti|}dSWntj o dSnXdS(Nii(tgrptgetgrnamtgroupRR(RR((R t groupExistss cCse|djo|SnM|t|ddjo%|djo |d Sqa||Sn |d|SdS(NRiRi(RRR(RR((R tfncats    cCs[d}t|t|jo8|t|t|t|!|jo d}qWn|S(Nii(tfoundRRR(RRR((R Rs *cCsE|djodSn-|djodSndGH|GHtiddS(NityesiResUnexpected argument to yesdash.(R{RR'(R{((R tyesdashs  cCst}t|}d}tii|oy)t|d}|i }|i Wntd|d}nXt |djo)t |ddjo|dd }qtd|d}ntd |d }||fS( NRRRs Can't read [s].iisFile [s"] does not contain a line of text.Rs ] is missing.(RcRRRRTtpxRRMR)RSR&RRRXR(RTR&RRRRR((R t firstLine s   *cCsItii|otti||Snd|dGHtiddS(Ns** Environment variable [s] is not defined.i(RMRRtenvRtfileRR'(RR((R tenvFile3s cCs*tii|oti|SndSdS(NR(RMRRR(R((R tenvval:scCsGx@tt|D],}||||t|!jodSqqWdS(Nii(R=RtbaseR<tsub(RRR<((R tsubstr>s  cCst}tdod|d|dGHnytid|d|Wnttfj oti i |p(td|d|d|d }qti i | o@ti i ti i | o td|d|d }qtd|d|d }nX|S( NRs Copying [s] to [s]...scp R@sError copying [s ]. File [s] does not exist.s$]. Target directory does not exist.s!]. You may be out of disk space.( RcRRRtsourcettargetRMRRYRPRTR)Rtdirname(RRRR((R tsafeCopyCs  (4 !cCsVd}d}xC|D];}|d}||}|t|jo|d}qqW|S(NRiis, (R{RRRR(RRR{R((R t listStrPrtRs  cCswtdipdSnY|}t|do|d }ntid|\}}|djot |d SdS(Ntrpmis.rpmisrpm -q s not installed( RRdtrpm_nametrpmTmpRRRRRR(RRRR((R t rpm_installed[scCsxnyt|d}Wntj o d}nX|djp'|djp|djp |djoPqqW|djp |djodSndS( Nis (y or n): teofR RtnRi(t raw_inputRtanswertEOFError(RR((R R5ds 4 cCsaxTtit|}tiitti|oPndt|dGHqWt|S(NisFile [s] doesn't exist. Try again...( RRRRRRMRTR)R(RR((R t getFilenamens"scase sensitivecCsS|djoti||djSn)titi|ti|djSdS(Nscase sensitivei(tcaseRRRRtupper(RRR((R Rvs cCskd}x^tt|D]J}||tijp||tijo|||}q|d}qW|S(NRR(RR=RRpR<Rtletterstdigits(RpR<R((R Rzs(s $PAC_ANCHOR/s/cookiescCs=t|}yqtdo tnttii|t |dti d}|i }|i|dd }Wnttfj ot|}yVttii|t |dti d}|i|d|idGHWq9ttfj o)d tii|t |d GHq9XnX|S( Nsignore-cookiesReRRiiR\s s?Saving answer to a cookie. Use -ignore-cookies to re-choose...s)Warning: Failure writing cookie file to [s]...(Rtdire2tdireRRPRSRMRTRRRRNR&RRRXRRYtchooseDirectoryR(RRRR&RR((R tcookieDirectorys$  2   2  ,cCsxtit|}tii|}|djp |djo |dGHqtiit |pt |dGHqtii t |pt |dGHqt t |pt |dGHqPqWtii |S(NiRs doesn't exist. Try again...s does not exist. Try again...s" is not a directory. Try again...s is not writeable. Try again...( RRRRRTRMRRR)RRRR(RRRT((R Rs tSwitchcBsXtZddZdZdZddZdZdZd ed d Z RS( NtoncCs||_||_d|_d|_ttiit t d|i|_ ||_ g|_ xt|iD]}|djp|ii| of|i|ii| o7|dj o)d|id|dGHtidntidqmqmWt|ioXtt|idjo<|idj o+|id |id GHtidnt|iotiit ott|idjoyXt|i d }x(t|iD]}|id|qW|id |iWq2ttfj otd |i dq2Xnt|iot|i|_ n,tiit ojtii|i oPyt|i d}|i}|itdoti!id|ix_t"i#|dd dD]C}t"i$|}|djp!ti!idt"i$|qqWti!id nxRt"i#|dd dD]6}t"i$|}|djp|i i%|qaqaWWqttfj otd |i dqXqn|idjo#|i i&dddddgn||idjo|i i&ddgnR|idjo|i i&dgn+|idjo|i i&dd gnd!|i j|_d"|i jp d#|i j|_dS($Nit preferencesthelpsUnknown option -R@s on command line.itdebugsNo option for -s specified on the command line.R\s sError reading [s].RRtdefs default: -iRRzsdownload-briefs cache-briefs tar-brieftuptretryt10spause-30-secondsRWs tar-overwritetsetupsRRtnoneRtall('RmR/toptionst always_ontoffRRMRTRR!RtpreftdefaulttuseroptsRltoptRRBRR'RRR)RStgRRXRYRPR.R&RRRRRRRGRI(R/RmRRRRR&R((R R9s|    '  ! "= ?     % "#cCst|iotiitiittot t |idjoyXt |i d}x(t |iD]}|id|qsW|id|iWqttfj otd|i dqXndS(NiR\R@s sError reading [s].(RR/RmRMRTR)RR!RRRlRSRRRRRXRYRPR.(R/RR((R tsavesN cCs|i d|i S(NR@(R/RR(R/((R R?sicCs|dd|idGH|ii}|ix9|D]1}|dd|id|d|i|GHq8Wt|idjo|dd|idGHndS(NR@sAvailable options for -R>s -isUse -s. ... for multiple options.(RhR/RmRtkeysRtkeyR(R/RhRR((R RBs /cCs)t|i\}}|p t|iS(N(RoR/RmR$R-R(R/R$R-((R tanyscCs/|djp|ip||ijo|i S(NR(toptionR/RRR(R/R((R R#ss $PAC_ANCHOR/s/logs/pacman.logcCstiitiit|oryVtt|d}|it i dt i d|d|d|iWqtj o }qXn||o |GHdSndSdS(NRs%Y-%m-%d %H:%M:%SR@s -- by [s]. ii(RMRTRRRtlogfileRSR&Rttimetstrftimet localtimeRRRXRYRPR/(R/RRRRPR&((R RXs%3  ( R+R,R9RR?RBRR#RRX(((R Rs >    Rs. All verbose messages in this list.tactionsE Message when Pacman takes any action defined in the lanauge.Rgs< Message when searching for a package in a cache.s pac-briefs' Flickering installation messages.ttcps4 Message when a TCP connection is tested.s shell-outs View all shell output.RFs: Message when Pacman shell commands are executed.s shell-alls1 Message when any shell command is executed.tregistrys0 Message when a registry addition is made.tcus- Message when changing usernames.tdownloads( Downloading message and progress.sdownload-briefs Flickering download messages.tcds/ Message when changing directories.tsshs+ Message on remote ssh commands.ttars3 Message for tar/zip related operations.s tar-briefs Flickering tar messagesRs7 Display the name of each file as it is untarred.Rs7 Message on environment variable operations.R9s+ Message for each http operation.Rs- Display update related messages.tgsis# Display gsi operations.sup-checks) Message when an update is checked.tsnaps- To view snapshot related messages.tmirrors& View mirror related messages.tcomps1 Messages when compiling Pacman source.tcaches Cache operations.s cache-briefs Flickering cache messages.tinsts@ Message when putting or getting from an installation.Rs" Messages about retrying.t processess< Show running processes when using runningProcess atom.Rs) Messages when doing file i/oRs No verbose messages.tuserss6 Message on user group or account operations.tsrcs6 Message each time a source file is opened.tptestsE Message each time a package is tested against requirements.Rs( Use ascii meters and counters.RTs. Messages related to path variables.tbrowsers- Messages when launching web browsers.trestores, Message when restoring/saving files.Rps@ Messages related to text line insertions and testing.R$tdowns Suppress downloading messages.twebs Suppress updating web pages.s! Use no quietness options.Rs Source filesRs Package statuss Shell outputtspecs@ Message each time a package specification is tested.s Cache comparisontsetups0 Message on internal setup operations.trefs Lazy package ref.s! Use no debug options.s os.systems4 Execute shell commands with python os.system.star-saves Tar save.smirror-downloads Mirror download translation.s Tar.tignoreShellErrorsIgnore shell error codestwgets wget feedbacks Update.s$ Installation operations.tnetscapes Netscapetmozillas Mozillatlynxs Lynx (text based)tw3ms w3m (text based)tgaleons galeontallows any-usernamesN Allow any user to modify the installation (not recommended).sunsupported-platformssC Allow any os to modify the installation (not recommended).smoveable-installationsC Allow Pacman installations to be copied (not recommended).snon-snapshottable-downloadss8 Allow downloads specified with environment variables.s tar-overwrites4 Allow untarring to overwrite files.sundefined-shellsO Allow shell commands containing undefined environment variables.s/ Use no allow options.s no-http-caches2 Disable server side http caching.s lock-overrides/ Override locked source caches.strust-all-cachess- Trust ALL caches automatically.s bad-pathss3 Allow path variables to clash.s save-setupsj Allow out of date setup scripts to remain during updates (default for Pacman >= 3.19).turllib2sU Use the urllib2 python module instead of wget for downloading.s any-platformsG Ignore the platform used when creating installations.s old-databases= Use the old Pacman database implementation.sextract-overwritesN Allow overwriting downloaded files when using -extract-downloads.s non-gnu-tarsU Try using whatever non-gnu tar program is in the installer's path.suninstall-shell-stopsa Allow a failure of an uninstall shell command to cause an error rather than be ignored.sbad-tar-filenamessJ Allow non-standard filename characters in untarring filenamesRRs C-shell setup scripts.s No setup scriptsRs Bourne shell setup scripts.Rs Python setup scripts.R s ksh shell setup scripts.Rs Perl setup scripts.s) Fetch with normal update paths.tfixeds, Fetch with hard-wired update paths.tnormals' Fetch with normal update paths.t1s% Http retry one timesRCs% Http retry two timest3s' Http retry three timest5s& Http retry five timesRs$ Http retry ten timest20s' Http retry twenty timest30s' Http retry thirty timest100s, Http retry one hundred times,spause-1-seconds# Pause 1 second before retrying.spause-3-secondss# Pause 3 seconds before retrying.spause-10-secondss# Pause 10 seconds before retrying.spause-30-secondss# Pause 30 seconds before retrying.spause-60-secondss# Pause 60 seconds before retrying.spause-2-minutess# Pause 2 minutes before retrying.spause-5-minutess# Pause 5 minutes before retrying.spause-10-minutess# Pause 10 minutes before retrying.spause-20-minutess# Pause 20 minutes before retrying.spause-30-minutess# Pause 30 minutes before retrying.s pause-1-hours# Pause 1 hour before retrying.s pause-5-hourss# Pause 5 hours before retrying.ttarpauses1-seconds 3-secondss 10-secondss 30-secondss 60-secondss 2-minutess 5-minutess 10-minutess 20-minutess 30-minutess1-hours5-hourstdownloadtimeouts Timeout after 1 second.s Timeout after 3 seconds.s Timeout after 10 seconds.s Timeout after 30 seconds.s Timeout after 60 seconds.s Timeout after 2 minutes.s Timeout after 5 minutes.s Timeout after 10 minutes.s Timeout after 20 minutes.s Timeout after 30 minutes.s Timeout after 1 hour.s Timeout after 5 hours.RAs! All display modes off.t0s Display depth 0s Display depth 1s Display depth 2s Display depth 3t4s Display depth 4s Display depth 5t6s Display depth 6t7s Display depth 7t8s Display depth 8t9s Display depth 9s All displays on.t descriptions& Display package description atoms.turls& Display package url atoms.tconfigs% Display package configurers.Rs0 Display package version strings, if any.treleases0 Display package release strings, if any.ttags0 Display package tag strings, if any.tpatchs0 Display package patch strings, if any.Rs0 Display package option strings, if any.Rjs$ Display package parents.s Display source code.tcmps6 Display compiled environmental conditions.treqs! Display requirements.s" Display update cache.tupss' Display update source code.s4 Display tarball contents in cmp display.Rs) Display source code file name.tsubdirs? Display cache subdirectory containing the source file.s* Display extra mirror information.s. Display extra snapshot information.tins6 Display the cache containing the package.s' No extra display options on.tlocs. Display package starting location.t revisionss Display Revisions.cCsd}tdo d}ntdo d}ntdo d}ntdo d }ntd o d }nttd o d }n]tdo d}nFtdo d}n/tdo d}ntdo d}n|S(NiRiRiRCiRiRiRiRiRiRiRi (tdeptht displayMode(R((R tdisplayModeDepths,          cCsd}tdo d}ntdo d}ntdo d}ntdo d }ntd o d }ntd o d }ntdo d}nttdo d}n]tdo d}nFtdo d}n/tdo d}ntdo d}n|S(Ni RiRCiRiRiRiRiRiRiRRiRiRid(Rt httpRetry(R((R thttpGetRetriess4            cCsd}tdo d}ntdo d}ntdo d}ntdo d }ntd o d}ntd o d }ntd o d}nttdo d}n]tdo d}nFtdo d}n/tdo d}ntdo d}n|S(Ni<spause-1-secondispause-3-secondsispause-10-secondsi spause-30-secondsispause-60-secondsspause-2-minutesixspause-5-minutesi,spause-10-minutesiXspause-20-minutesispause-30-minutesis pause-1-houris pause-5-hoursiPF(tpauseR(R((R t httpGetPauses4            cCsd}tdo d}ntdo d}ntdo d}ntdo d }ntd o d }ntd o d }ntdo d}nttdo d}n]tdo d}nFtdo d}n/tdo d}ntdo d}n|S(Nis1-secondis 3-secondsis 10-secondsi s 30-secondsis 60-secondsi<s 2-minutesixs 5-minutesi,s 10-minutesiXs 20-minutesis 30-minutesis1-houris5-hoursiPF(RttarPause(R((R t tarGetPause s4            cCsd}tdo d}ntdo d}ntdo d}ntdo d }ntd o d }ntd o d }ntdo d}nttdo d}n]tdo d}nFtdo d}n/tdo d}ntdo d}n|S(Nis1-secondis 3-secondsis 10-secondsi s 30-secondsis 60-secondsi<s 2-minutesixs 5-minutesi,s 10-minutesiXs 20-minutesis 30-minutess1-houris5-hoursiPF(ttimeouttdownloadTimeout(R((R tdownloadTimeoutGets4            tAskcBstZdZdZRS(NcCs0|ip||ijot|SndSdS(Ni(R/RRRR5R(R/RR((R R#*scCst|d||| S(Ns has been declined.(RcRR/R(R/RR((R tre.s(R+R,R#R (((R R)s RWs2 Ask before cd-ing to a new directory.s6 Ask before executing a remote ssh command.sG Ask before Pacman attempts any action defined in the language.s8 Ask before executing any Pacman shell command.s- Ask before executing any shell command.s shell-roots2 Ask before executing a shell command as root.s+ Ask before changing usernames.s+ Ask before updating a package.s Ask before any download.s7 Ask before modifying environment variables.s& Ask before tar operations.tunzips& Ask before unzip operatinos.sG Ask permission before tar-overwriting (use with -allow tar-overwrite)tmails Ask before emailing.s, Ask before downloading with http.s: Ask before executing each globus gsi operations2 Don't ask permission before operations.s: Ask before any user group or account operations.s package-adds5 Ask before adding a package to your installation.s- Ask before saving or restoring files.s text-inserts; Ask before inserting or removing lines from text files.sA Ask before modifying the registry of symbolic cache names.s& Ask before download retries.s/ Ask before modifying path variables.s; Ask before installing or uninstalling packages.s2 Ask before determining cache properties.cCs.| }|ddjo |GHn |dGHdS(Nis...(RWR{(RWR{((R tdotsNs cCsOt|o:tdodSqKtd|dodSqKdSndSdS(Ns force-rpmis Package [s3] is already installed. Do you want to replace it?i(RRRR5(R((R t rpm_replaceSs  cCsti|}|S(N(RRR{tss(R{R%((R tdeWhiteZscCsti|ddS(NR@R(RRGR{(R{((R tdeWhiten^scCsR||jpEt|djo|d |jp!t|djo||d jS(Nii(R{RR(R{R((R t equivSlash`scCsL|iddiddiddiddiddiddS( NRRR>R?t_AT_R@t~R(R{RG(R{((R tfileifycscCs,dk}|i}|i||iS(N(tmd5tMD5tupdateR{t hexdigest(R{R-R,((R tphashds   csNd}y"ttid}Wnttfj o d}nX|S(Nics;tiitii|ottii|S(N(RMRTRRR&t emptyDirR(R&(RT(R R ms(RR(RMtlistdirRTRYRP(RTR((RTR R1js " cCsntii|\}}|}x:ti|D])}|t | |jo |}Pq.q.Wtii ||S(N( RMRTRR RRtbase2R2tfnRR(R R3RRR4((R tdbpathrs cCsBt}t\}}| otd otd}n|S(Ns non-gnu-tarsXCan't find GNU tar your path (tar/gtar/gnutar checked). GNU tar is required for Pacman.(RcRRt gnuTarFinderRdRR(RdRRR((R t gnuTarCheck|s  cCst}tdiptd}n|iovtd ohtid\}}|djptd}qtdoq|d djoqtd}n|S( NRs[tar] is not in your path.s non-gnu-tars tar --versionis&The [tar] in your path is not GNU tar.i s tar (GNU tar)( RcRRRRdRRRRR(RRRR((R tgnuTarCheck_olds   cCs`d\}}}tid\}}d}|djo"|d djod}|}ntid\}}|djo"|d djod}|}ntid\}}|djo"|d djod}|}n|o d }n)|o d }n|o d }nd }t i |d }t i d d |dd|p |p||fS(Nis tar --versions generic tari s tar (GNU tar)isgtar --versionsgnutar --versionRtgtartgnutars sUsing [s].(iii(ttarOKtgtarOKtgnutarOKRRRRtoutOKRRRRRRX(RRRR;R<RR>R=((R R6s0      cCsd}g}y;ttiittdd}|i }|i Wn g}nXt |djo8t |ddjo!t i |dd }|}n|S(NRRRiii(ttarnameRRSRMRTRR!RR&RRXRRRR(R?R&RR((R RVs!  * cCsti|}|djodSn|djodSn|djodSn||djodSng|d jodSnR|d jodSn=|d jodSn(|d jodSntd|ddS(Ntoneittwoitthreeis at most oneis one or morei?Bs at least ones at most twos any numbers3Unknown local or remote installation multiplicity [s].(ii(ii(ii(ii(ii?B(ii?B(ii(ii?B(RRR R{R.(R R{((R tboundss$        tNullFilecBs#tZdZdZdZRS(NcCsdS(N((R/R ((R RscCsdS(N((R/R ((R treadscCsdS(N((R/((R RXs(R+R,RRERX(((R RDs  cCstii|o3t|djp|ddj o|d}n|}tii|o3t|djp|ddj o|d}n|}||jS(NiiR(RMRTRtp1RRORiRP(RFRiRPRO((R tlocalPathEquals88cCsQtid\}}g}|djod}ti|}nd}||fS(Nsuname -aii(RRRRRRdRR(RRdRR((R tunames cCsod}y)t|d}|i}|iWn g}nXx)|D]!}t|t o d}PqFqFW|S(NiRRi( R$RSRTR&RRRXRRR (RTRpR&RR$R((R tfileExistsAndContainss  cCsx|djowt|}|djp |djo d}Pq|djp |djo d}Pq|djo d}PqdGHqW|S(NRR RRRtyallsChoose y/n/yall. Try again...(RRtquestionR (RKRR ((R taskOnces       (tAbortRRMRRtcopyRRYRURJRtsockettanydbmtshutilRtoversiont version_extraRRNR!RRt pwd_anchorRPR'tpre_316_databaseR RRR"R#R(R)R*R-R4R6R;R>RCRERKRQRZR[R`RcRwRRRRRRRRRRRRRRRRRRRRt gethostnameRR]RRRRRRRRRRRtobjectRR"tflickerR R%R&R+RR1R.R4R7R8R:R;R<R=R@R RBRDRIRFRSR`RbR]tfilterRhRvRnRlRmRoRqRuRwRRxR{R~RRRRLRRRRRRRRRRRRRRR5RRRRRRRRRRRt setupOptionst upOptionsRRRRRRRRRRRWR#R$R&R'R(R+R0R1R5R7R8R6RVRCRDt pythonChecktuse_old_databaseRGRHRIRL(RRRCRNRXRRR7R]R RRlR5RRRRR R#RwRcRRRmRIRR%RRRZRRRRPR R&RDRnRR`RHRIRR'RRR]RR"RR)RRYRRRbRRRRR;RRRRRSRR8RRDR7RR>RRR:RWRLR8RR4RxR1R!R(RKRRMR0R(RR{RRGRRRZRoR[R]R[RTR4RwRRR`RUR6RvRRRRURFR=RJR1R<RR6RLRRR-R*RR~RRuRCRRRRRRR+R5RRqRRR.RRRRQR\RR+R#RR;RRR&RRRER$RRORRQRSRRVR"RBRRRRR@RRRR((R t?s`u      %       $Q        +                                                      hx+*<E *{{K'