Files
euri-packages/packages/hal/__pycache__/halcpython-314.pyc
T

436 lines
104 KiB
Plaintext
Raw Normal View History

+
ÁÆ9jL>ãóRt^RIt^RIt^RIt^RIt^RIt^RIt^RIt^RIt^RI t ^RI
t
^RI t ^RI t ^RI
t
^RIt^RIt^RIt^RIt^RIt^RIt^RIt^RIt^RIt^RIHt^RIHtHtHtHtHtRt ]!R4t!]!R4t"]!R4t#]!R4t$]!R 4t%]!R
4t&R .RuOR .RvOR
.RwOR.RxO/t'](!4t)RyRRllt*RRlt+RRlt,RRlt-!RR4t.!RR4t/RRlt0RRlt1RR lt2R!R"lt3R#R$lt4R%R&lt5RyR'R(llt6R)R*lt7!R+R,4t8R-R.lt9R/R0lt:R1R2lt;RzR3R4llt<R5R6lt=R7R8lt>R9R:lt?R;R<lt@R=R>ltAR?R@ltBRARBltCRCRDltDRERFltERGRHltFRIRJltGRKRLltHRMRNltIRORPRQ.RRRS.RTRURQ.RVRW.RXRY.R
RZ.R[R\.R]R^.R_R`.RaRb.RcRd.ReRf.RgRh./
tJRiRjltKRktLR{RlRmlltMRnRoltN]ORp8Xd]P !]L!44R#R# ]Qd]R!Rq4]P !^4R#]SdgtT]R!Rr4]R!Rs]T 24]P­Rt4'd^RIWtW]WP°!4]P !^4RtTATR#RtTATii;i)|uÓHAL 9000 — Antergos NeXT Package Manager
Dual-mode:
hal <command> wrapper mode (delegates to pacman)
hal --self <command> native mode (standalone, pacman-independent)
Commands:
install Install packages
remove Remove packages
update Full system upgrade
sync Sync databases
search Search repositories
info Package info
list List installed packages
files List files owned by a package
autoremove Remove orphaned packages
cleanup Clear package cache
own <file> Find which package owns a file
check Verify installed packages
version Show version
N)ÚPath)ÚOptionalÚListÚTupleÚDictÚSetz0.2.0z/var/lib/pacman/syncz/var/lib/pacman/localú/var/cache/pacman/pkgz/etc/pacman.confz
/etc/hal.confz/var/lib/pacman/db.lckÚerrorÚwarnÚinfoÚsuccesscó0V^8„dQhR\R\/#)éÚcategoryÚmessage©Ústr)Úformats"Ú8/home/xalatath/solara/antergos-packages/packages/hal/halÚ __annotate__rZs÷  ,”cð ,¤Cñ cóØ\PV\R,4Uu.uFq"\9gKVNK ppV'g"\PV\R,4p\P!V4p\P V4RRRRRRRR/PVR4pV'd"\
RV R V 24\
R
V 24R #\
RV R V 24R #uupi) r r uâš r
uâ–²uâ—r u✓ú z HAL 9000: õ → N)Ú
HAL_QUOTESÚgetÚ _used_quotesÚrandomÚchoiceÚaddÚprint)rrÚquotesÚquoteÚtags&& rÚhal_sayr%Zܨ´*¸VÕ2DÔ
EAÔR^ÑI^aˆE€FÐ
Ü ¬*°VÕ*<Ó=ˆÜ MŠM˜ !€EÜ×Ñà E˜6 5¨&°%¸ÀEÐ
J×
NÈxÐY^Ó
_€CßÜ
3%{ 5 
˜˜ Ð
3%{ 5 +ùò`s
¤ C'µC'có0V^8„dQhR\R\/#)rÚverÚreturn)rÚlist)rs"rrrjs÷ñ”sðœtñrcó¢^pRV9d VPR^4wr\V4pVPR^4pV^,p\V4^8”d
V^,MRp.pW3FfpRpVF@pVR9d/V'dVP V4VP V4RpK8Wg,
pKB V'gKUVP V4Kh W3#)z'Split version into comparable segments.Ú)Ú.r,Ú~)ÚsplitÚintÚrsplitÚlenÚappend)r'ÚepochÚpartsÚreleaseÚtokensÚpartÚbufÚchs& rÚ
_ver_segmentsr?jð
€EØ
ˆc„zØ—YY˜s &‰
ˆÜE“
ˆà J‰Js˜AÓ €EØ
(€Cܘe* qœ.ˆeAŽh¨c€Gð€F؈؈ۈBØÐØ—MM 
˜bÔà• ’ñ÷ ‰3Ø M‰M˜#Ö ñð ˆ=Ðrcó<V^8„dQhR\R\R\/#)rÚbr(©rr4)rs"rrrs!÷
ñ
”#ð
œ#ð
¤#ñ
rcóöVR8Xd
VR8Xd^#VR8XdR#VR8Xd^#\P!RV4p\P!RV4pV'dBV'd:\VP^44\VP^44,
#\V4\V4rTWE,
# \dMi;iTP 4pTP 4pY8dR#Y8”d^#^#)z6Compare two version tokens. ~ sorts before everything.r2z^(\d+)éÿÿÿÿ)ÚreÚmatchr4ÚgroupÚ
ValueErrorÚlower)rArBÚa_numÚb_numÚnaÚnbs&& rÚ
_cmp_tokenrOàˆC„x”H¡Q؈C„x˜ØˆC„x™ô
HŠHY Ó "€EÜ HŠHY Ó "€Eß Ü5—;;˜q“>Ó"¤S¨¯©°Q«Ó%8Õ
ÜQ“œ˜Q›ˆBØøÜ ô
Ù ð
úð
‹ €AØ ‹ €AØ„uRˆiØ„u‘QÙ sÂB8Â8 CÃCcó<V^8„dQhR\R\R\/#)rÚver_aÚver_br(rC)rs"rrr¡s!÷
ñ
”#ð
œcð
¤cñ
rcób\V4wr#\V4wrEW$8wd W$,
#^pV\V48gV\V48deV\V48d W6,MRpV\V48d WV,MRpWx8Xd V^,
pKe\Wx4p V ^8wdV #V^,
pK„^#)zZCompare two package version strings. Returns negative if a<b, 0 if equal, positive if a>b.r.)r?r6rO)
rQrRÚepoch_aÚtokens_aÚepoch_bÚtokens_bÚt_aÚt_bÚresults
&& rÚvercmpr\¡ä% €GÜ% eÓ€GðÔØÕ Ð ð
€AØ
Œc(
˜q¤3 x£=Ô¤ X£Ô.ˆhŽk°BˆØ¤ X£Ô.ˆhŽk°BˆØ Œ:Ø
FˆA٠ܘCÓØ QŒ;؈MØ ˆQŠÙ rcóBa]tRt^ºtoRt]V3RlRl4tRtVtR#)ÚConfigcó/Vn\Vn\R4VnRVn.Vn.VnRVnRVn R#)Úx86_64FÚautoN)
ÚreposÚ CACHE_DIRÚ cache_dirrÚrootÚarchÚ ignore_pkgsÚ hold_pkgsÚ noconfirmÚcolor©Úselfs&rÚ__init__ÚConfig.__init__»s?Ø79ˆŒ
܌ܘ“IˆŒ ؈Œ Ø&(ˆÔØ$&ˆŒØˆŒØˆŽ
rcó<V^8„dQhRR/#)rr(r^©)rÚ
__classdict__s"€rrÚConfig.__annotate__Æsø€÷:ñ::rcóäV!4p\PPRR4P4VnR\P9Vn\ P4'EdY\P!RR7pVP\\ 44VP4EpVPR4'dVR,pVPVRRR7PR 4Uu.uF*qUP4'gKVP4NK, ppVPVR
R R7pV'dWg3VP V&VR 8XgK´VPVR
RR7p\#VP4^,4VnVPVRRR7p \#V 4VnVPVRRR7p
V
R8wdW¡nVPVRRR7p VPP+V P44VPVRRR7p VP,P+V P44VPVRRR7p
E VP4EF8pVPR4'gKVR,pVPVRRR7pV'gKDVP PV4'dKg\#V4pVP4'g\P!RR7pVP\V44VP4FhpVPVRRR7pV'gK!VP P/V.R 34VP V,^,P1V4Kj EK; \2P4'd7\P!4pVP\\244V#V# \PdELŒi;iuupi \PdEi;i \PdT#i;i)Ú
HAL_IGNOREr.Ú
HAL_NOCONFIRMN)Ú
interpolationzrepo-:éNNÚServer)ÚfallbackÚ
ÚSigLevelzOptional TrustAllÚoptionsÚCacheDirrÚRootDirr`Ú ArchitecturerbÚ IgnorePkgÚHoldPkgÚ NoExtractÚInclude)ÚosÚenvironrr3rhrjÚ PACMAN_CONFÚexistsÚ configparserÚ ConfigParserÚreadrÚErrorÚsectionsÚ
startswithÚstriprcrrerfrgÚextendriÚ
setdefaultr7ÚHAL_CONF)ÚclsÚcpÚsectionÚnameÚserversÚsigÚdirsrfrgÚignoreÚholdÚ noextractÚincludeÚ include_pathÚincl_cpÚ incl_sectÚserverÚcp2s& rÚloadÚ Config.loadÅstá EˆÜŸ
Ÿ |°RÓ8×@ˆŒ
د©ÑŒ ä × Ñ × Ó Ü×Ô>ˆBð
ØœœKÓŸ;™;Ÿ=Ø×% g×" 2;DØ24·&±&¸À(ÐUW°&Ó2X×2^Ñ2^Ð_cÔ2dÓrÑ2d¨Q×hoÑho×hqœy˜qŸw™wžyÑ2dŸ&™& ¨*Ð?R˜SØ)0¨˜Ÿ 
ñà  ÖŸ6™6 '¨:Ð@W˜XDÜ"& t§z¡z£|°A¥Ó"7A”KØŸ6™6 '¨9¸s˜C! $ZA”FØŸ6™6 '¨>ÀF˜K˜v”~Ø!%œØŸV™V G¨[À2˜VÓF—M‘Mׯ©«ÔŸ6™6 '¨9¸r˜B—KK×& t§z¡z£|Ô4Ø "§¡  Àb Ó I“Iñ')ð*Ÿ;™;Ÿ=Ø×% g×" 2; Ÿf™f W¨iÀ"˜Ew q§w¡w§{¡{°4×'8Ô'8ä'+¨G£}˜ Ø'×.×0Ü&2×&?Ò&?ÈdÔ&S˜%Ø '§ ¡ ¬S°Ó->Ô ?Ø18×1AÑ1AÖ1C IØ-4¯[©[¸ÀHÐWY¨[Ó-Z Fß'-¡vØ()¯©×(:Ñ(:¸4À"ÐFYÐAZÔ([Ø()¯©°­
°aÕ(8×(?Ñ(?ÀÖ(Gô 2Dñ)ô& ?‰?× Ò ð
Ü1ØœœX›Ôˆˆqˆøôc ×
Úð
üò
søôD$0×#5Ñ#5ô%Û $ð%ûô ×
Øàˆð
úsJÂPÃ=P4ÄP4Ì+AP9Í6A P9Ï!3QÐP1Ð0P1Ð9QÑQÑQ/Ñ.Q/)rgrerkrirhrjrcrfN) Ú__name__Ú
__module__Ú __qualname__Ú__firstlineno__rnÚ classmethodr¥Ú__static_attributes__Ú__classdictcell__©rrs@rr^r^ºsø‡òð÷:óö:rr^có,a]tRtRtoRtRtRtVtR#)ÚDBLockicó\PPRRR7\P!\ \4\P \P,R4Vn\P!VP\P\P,4V# \dG\RR4\P!TP4\ P"!^4T#i;i)ÚparentsÚexist_oki¤r zBCould not lock database. Another package operation is in progress.)ÚDB_LOCKÚparentÚmkdirr…ÚopenrÚO_CREATÚO_RDWRÚfdÚfcntlÚflockÚLOCK_EXÚLOCK_NBÚIOErrorr%ÚcloseÚsysÚexitrls&rÚ __enter__ÚDBLock.__enter__Ü×Ñ T°DÐÔ—''œ#œg¯
©
´R·Y±YÕ(>ÀÓŒð Ü KŠK˜Ÿ¤§¡´·±Õ!>Ô
ˆ øô ô Ü  HŠHT—W Ü HŠHQˆ ð  úsÁ0AB6Â6A
DÄDcóÐ\P!VP\P4\P
!VP4\ PRR7R#)Ú
missing_okN)ÚLOCK_UNr…Úunlink)rmÚargss&*rÚ__exit__ÚDBLock.__exit__s6Ü
Š D—G‘GœUŸ]™]Ô
ŠÔÜ $ˆÖ'r)N)r­s@rsø‡ò ÷(rcó0V^8„dQhR\R\/#)rÚtextr(©rÚdict)rs"rrrs÷ ñ œð ¤ñ rcóZ/pRpVPR4FpVP4pVPR4'd=VPR4'd&VPR4P 4p.W&KfV'gKpV'gKzW,P V4K“ V#)z]Parse a pacman database entry file (desc, depends, files).
Format: %KEY%
value1
value2...Nr{Ú%)r3rÚendswithrJr7)ÚdataÚ current_keyÚlines& rÚ
parse_db_textrØsˆð €DØ€KØ
˜4Ö ˆØz‰z‹|ˆØ ?‰?˜3× Ò  D§M¡M°#×$6Ò$6ØŸ*™* S/×1ˆKØ "ˆ ß
‰[ŸT™TØ Õ × $ TÖ
 €Krcó0V^8„dQhR\R\/#)rÚdep_strr()rs"rrr%s÷?œcð?¤dñ?rcó6\P!RVP44pV'dXRVP^4P4RVP^4;'gRRVP^4;'gR/#RVP4RRRR/#)zAParse a dependency string like 'glibc>=2.35' or 'libfoo.so=1-64'.z4^([^<>=!]+)\s*((?:>=|<=|=|>[^=]|<[^=]|!=))?\s*(.+)?$r—Úmodr.Úversion)rFrGrrH)Úms& rÚparse_dep_stringrß%sä
ŠÐHÈ'Ï-É-Ë/ÓZ€Aߨ˜Ÿ 
×*¨E°1·7±7¸1³:×3CÐ3CÀÀYÐPQ×PWÑPWÐXYÓPZ×P`ÐP`Ð^`Ð G—MM“O U¨B° ¸ >rcó<V^8„dQhR\R\R\/#)rÚdepÚpkg_infor()Úbool)rs"rrr,s!÷ñ”tð¤tð´ñrcóÔVPRR.4^,pVPRR.4^,pVR,V8Xd,VR,'d\W0R,VR,4#R#VPR.4Fdp\V4pVR,VR,8XgK%VR,'d0VR,;'gTp\W`R,VR,4u#R# R#)z*Check if a package satisfies a dependency.r—r.providesF)rÚ
version_matchrß)Úpkg_nameÚpkg_verÚ provide_strÚpdepÚprov_vers&& rÚ
dep_satisfiedrì,à|‰|˜F R DÓ)¨!Õ,€HØl‰l˜9 r +¨AÕ.€Gð ˆ6…{Ø ˆy>Œ>Ü  ¨e­*°c¸)µnÓ ð —|‘| J°Ö Ü  Ó,ˆØ <˜3˜v 9~Œ~Ø  ?×5¨gÜ$ X°5­z¸3¸y½>Óñ
 rcóHV^8„dQhR\R\R\R\/#)rr'ÚmodifierÚrequiredr(©r)rs"rrrBs(÷ ñ ”sð ¤cð ´Sð ¼Tñ rcóÐV'd V'gR#\W4pVR8XdV^#VR8XdV^8*#VR8XdV^8H#VR8XdV^8„#VR8XdV^8#VR8XdV^8g#R#)z;Check if version satisfies modifier+required (e.g. >=2.35).Tz>=z<=Ú<z!=)r\)r'Úcmps&&& rBstç Ÿ8ÙÜ
Ó
€CØ  q¡˜Ø  q¡˜Ø3„  q¡˜Ø3„  a¡˜Ø3„  a¡˜Ø  q¡˜Ù rcóFV^8„dQhR\\\3,/#©rr(©rr)rs"rrrOs÷"ñ"”tœC¤˜I•ñ"rc
ót/p\PRRR7\\PR44EF
p\ VR4;_uu_4p^RIpVP
4pVPV4;_uu_4p\P!VRR7;_uu_4pRp/pVEF~p V P4'd V PPR4p/pK9\V P4p
V
PR 8Xd=VPV 4P4PR
R R 7p \!V 4pM£V
PR
8XdNVPV 4P4PR
R R 7p \!V 4p VP#V 4MEV
PR8Xd5VPV 4P4PR
R R 7p W¸R&V'gEKIVP%R4'gEKc\'V4WR,^,&EK RRR4RRR4RRR4EK
V# +'giL';i +'giL2;i +'giEKI;i \(d)p
\+RRTP RT
24Rp
?
EKzRp
?
ii;i)z3Load all sync databases. Returns {pkgname: {info}}.Tr²ú*.dbÚrbNúr|©ÚfileobjÚmoder`Údescúutf-8Úreplace©ÚerrorsÚdependsÚfilesÚ_filesr—r
zFailed to read database ú: )ÚSYNC_DIRr·ÚsortedÚglobr¸Ú zstandardÚZstdDecompressorÚ
stream_readerÚtarfileÚisdirr—ÚrstriprÚ extractfilerÚdecoderØÚupdaterÚ Exceptionr%)Úall_pkgsÚdb_pathÚfr ÚdctxÚreaderÚtarÚ current_dirÚ
entry_dataÚmemberÚcontentÚdep_infoÚes rÚ
load_sync_dbsr#Osà€HÜ ‡NN˜4¨$€NÔœ(Ÿ-™-¨Óð Üg˜t×Û Ø ×3Ø××*¨fÜ Ÿš¨f¸4×@ÀCØ&*˜ Ø%'˜
Ü&)˜%Ÿ|™|Ÿ~š~Ø.4¯k©k×.@Ñ.@ÀÓ.E  Ø-/ 
Ù (Ü $ V§[¡[Ó 1˜AØ Ÿv™v¨Ô/Ø*-¯/©/¸&Ó*A×*FÑ*FÓ*H×*OÑ*OÐPWÐ`iÐ*OÓ*j Ü-:¸7Ó-C¡
Ø!"§¡¨9Ô!4Ø*-¯/©/¸&Ó*A×*FÑ*FÓ*H×*OÑ*OÐPWÐ`iÐ*OÓ*j Ü+8¸Ó+A Ø *× 1Ñ 1°(Õ ;Ø!"§¡¨7Ô!2Ø*-¯/©/¸&Ó*A×*FÑ*FÓ*H×*OÑ*OÐPWÐ`iÐ*OÓ*j Ø7>¨8Ñ 4ß*š{¨z¯~©~¸f×/EÕ/EÜBFÀzÓBR °FÕ);¸AÕ)>Ô ?ñ#'*÷A÷1ð< €O÷1A×@ú÷*ú÷$ûô2ô Ü 6°w·|±|°nÀBÀqÀcÐ ûð úsr½JÁ.I/Á?!I  E
I Ç0I È
I È*I È2I/È:JÉ IÉI É I,É'I/É/ J É:JÊJÊ J7ÊJ2Ê2J7cóFV^8„dQhR\\\3,/#)rs"rrrss÷ñ”tœC¤˜I•ñrcó¼/p\P4'gV#\\P44F„pVP 4'gKVR, pVP4'gK<\ VP
RRR74pVPR4'dW0VR,^,&K„K† V# \\3di;i)z7Load all installed packages. Returns {pkgname: {info}}.rrrrr—)
Ú LOCAL_DIRrˆr
ÚiterdirÚis_dirrØÚ read_textrÚOSErrorrÀ)ÚpkgsÚpkg_dirÚ desc_filer s rÚ
load_local_dbr.sà
€DÜ × Ñ × Ò Øˆ Üœ)ר~‰~×Ò٠ؘfÕ$ˆ Ø×Ñ× ð Ü  ×!4Ñ!4°WÀYÐ!4Ó!OÓPˆx‰x˜×ÒØ(,T˜&•\ !•_Ó ñ €KøôœÐ Ú ð úsÁ9ACÃCÃCcóHV^8„dQhR\R\R\R\/#)rÚurlÚdestrr()rr)rs"rrrˆs(÷ñ”#ðœTð¬ð´dñrcóR\RRT;'g
VP 24Rp\PP YV'dTMRR7V'd \
P PR4R# \PPd(p\RR TP R
T 24Rp?R #Rp?i\PPd%p\RR TP 24Rp?R #Rp?i\dp\RR
T 24Rp?R #Rp?ii;i)z&Download a file with progress display.r z Downloading cóJV^8”\^d\W,^d,V, 44pRV^,,R^V^,,
,,p\PP RV RV R24\PP 4R#R#)éuâ–ˆuâ–‘z
[z] rÓN)Úminr4ÚstdoutÚwriteÚflush)ÚblockÚ blocksizeÚ totalsizeÚpctÚbars&&& rÚ
reporthookÚdownload.<locals>.reporthooks}ؘ1Œ}ܘ#œs 5Õ#4°sÕ#:¸YÕ#FÓHؘs a(¨5°B¸À½µMÕ+BÕBÜ
× Ñ  7¨3¨%¨r°#°°aÐ!8Ô
× Ñ ÖrN)r>r{Tr
zHTTP ú for FzConnection error: zDownload failed: )r%r—ÚurllibÚrequestÚ urlretrieverÂr6r7r Ú HTTPErrorÚcodeÚURLErrorÚreasonr)r0r1rr>r"s&&& rÚdownloadrHˆðܘ, t×'8Ð'8¨t¯y©yÐ&9Ð ×" 3Çt¹ÐQUÐ Ü J‰J× Ñ ˜ øÜ <‰<× Ü˜% §¡˜x u¨S¨EÐûÜ <‰<× Ñ ôÜÐ,¨Q¯X©X¨JÐûÜ ôÜÐ+¨A¨3ÐûðúsGA<AA<ÁA<Á<D&ÂB=Â= D&ÃD&ÃC>Ã> D&Ä D&Ä D!Ä!D&có$V^8„dQhR\/#©rÚconfig©r^)rs"rrr¤s÷.Sñ.Sœ6ñ.Src ó’\RR4\PRRR7VPP 4EFÿwpwr#V R2p\V, pRpVEpREpVP R4RV RVP RV R V 2,p VPR
V 24p
\WšV R 24'EdOVPR 4'd€^R
I
p \V
R4;_uu_4p V P4p
V
PV 4P4pR
R
R
4\VR4;_uu_4p V PX4R
R
R
4M“VPR4'dg^R
IpVPV
R4;_uu_4p V P4pR
R
R
4\VR4;_uu_4p V PX4R
R
R
4M\"P$!W¥4V
P'RR7\RV R24RpME V'gEM V'dE\RRV R24EK \RR4R
# +'giEL:;i +'giL;i +'giLã;i +'giL±;i \(dpT
P'RR7R
p?EK^R
p?ii;i)z+Download and decompress all repo databases.r z5Opening the pod bay doors to synchronize databases...Tr²z.dbFr`ú/os/r/z.tmp.z databaseú.zstNrûÚwbú.gzrÇr z database synchronizedr
zCould not sync z from any mirrorz8All databases synchronized. I am completely operational.)z
db.tar.zstz db.tar.gzÚdb)r%r rcÚitemsrrgÚ with_suffixrHr r¸r
rrr7ÚgzipÚshutilÚcopy2rÊr)rKr—r™Ú sig_levelÚdb_nameÚdb_destr Úextr0Útmpr rrÚ decompressedrUr"s& rÚsync_databasesr^¤sFä ˆ ‡NN˜4¨$€NÔ/à&,§l¡l×&8Ñ&8×&:Ñ"ˆÑ"ˆF˜#ܘWÕØˆäˆFä8Ø—m‘m CÓ(¨Q¨t¨f°D¸¿¹¸
ÀQÀtÀfÈAÈcÈUÐ+SÕSØ×)¨E°#°¨-Ó8ðÜ ¨T¨F°)Ð*<ן<™<¨×,Ü!% c¨4§¤°AØ'0×'AÑ'AÓ'C Ø/3×/AÑ/AÀ!Ó/D×/IÑ/IÓ/K  ÷"1ô"& g¨t×!4Ô!4¸Ø !§¡¨ Ô 5÷"5Ð!4à Ÿ\™\¨%×'Ø!%§¡¨3°×!5Ô!5¸Ø/0¯v©v«x  ÷"6ä!% g¨t×!4Ô!4¸Ø !§¡¨ Ô 5÷"5Ð!4ô#ŸLšL¨ÔŸ
¨d˜
Ô  ¨d¨VÐ3IÐ+JÔKØ"&˜Ùò)9÷8ŠwÙñ?÷BŠwÜ F˜o¨d¨VÐ3CÐD× EñO';ôR ˆR÷5"1§ ú÷"5×!4ú÷"6×!5úç!4×!4ûôØ—J‘J¨$ûðús…Â*,JÃJÃ/0I ÄJÄ;I$ Å
JÅ-JÆ I7 ÆJÆ8J
Ç
AJÉ I!É JÉ$ I4É/JÉ7 JÊJÊ
JÊJÊ K Ê(K ËK cóŒa]tRtRtoV3RlRltV3RlRltV3RlRltV3RlR ltV3R
lR ltV3R lR
lt Rt
Vt R#)Ú DepResolveriÖcó,<V^8„dQhRS[RS[RS[/#)rrÚ installedrK)r^)rrrs"€rrÚDepResolver.__annotate__×s"ø€÷ð8±$ðñ8rcórWnW nW0n.Vn.Vn\ 4Vn/VnR#©N)rrbrKÚ
to_installÚ to_removeÚsetÚ_visitedÚ_provides_cache)rmrrbrKs&&&&rrnÚDepResolver.__init__×s0Ø Œ
ØØŒ Ø%'ˆŒØ$&ˆŒÜ"%£%ˆŒ
Ø57ˆÖrcóL<V^8„dQhRS[RS[S[S[S[3,,/#)rÚdep_namer()rrr)rrrs"€rrrcàs)ø€÷
ñ
¡sð
©t±E¹#¹t¸)Õ4DÕ/Eñ
rc óB.pWP9d$VPWPV,34VPP4FKwr4VPR.4F0p\ V4pVR,V8XgKVPW434K2 KM V#)z,Find all packages that provide a dependency.rår—)rr7rSr)rmrmÚ providersÚpnamer Úpds&& rÚfind_providersÚDepResolver.find_providersàs‡àˆ Ø —}‘}Ô × Ñ ˜h¯
©
°hÕ(?Ð Ÿ=™=×0‰KˆEØ#Ÿx™x¨
°BÖ7 Ü% kÓ2Øf•: Ö×$ e 
Ðrcó&<V^8„dQhRS[RS[/#©rr )rrrs"€rrrcìsø€÷

ð
5±Dñ
5rc  óJVPR.4p\V4pVPP4F`wrV\ WF4'gKVR,V8XdK(\ RRV RVR, RV R24VP PV4Kb  R#) zCCheck if installing this package conflicts with installed packages.Ú conflictsr—r
z
Conflict: z conflicts with z (required by Ú)N)rrbrSr%rgr7)rmr Ú conflict_strÚcdÚ inst_nameÚ inst_infos&&& rÚ_check_conflictsÚDepResolver._check_conflictsìsà ŸH™H [°"Ö5ˆ! /ˆBØ(,¯©×(<Ñ(<Ö(>Ñ$ Ü  ×˜&•z XÔ Ü˜F ° Ð;KÈBÈvÍJÈ<ÐWeÐfnÐeoÐopÐ$qÔ—NN×)¨)Ö
)?ó6rcó&<V^8„dQhRS[RS[/#ru)rrrs"€rrrcøsø€÷ð9±4ñ9rc ó<VPR.4F…p\V4p\VPP 44FPpWTR,8XgK\ RV RV 24WPP 9gK5VP PV4KR K‡ R#)z2Check if this package replaces installed packages.Úreplacesr—r z
replaces N)rr)rbÚkeysr%rgr7)rmr Ú replace_strÚrdr{s&&& rÚ_check_replacesÚDepResolver._check_replacesøsxàŸ8™8 Ö3ˆKÜ! .ˆ! $§.¡.×"5Ñ"5Ó"7Ö8 Ø 
Ö˜F x 
¸9¸+Ð$FÔ ¯©ÖŸ×-¨iÖ4rcó6<V^8„dQhRS[S[,RS[/#)rÚtargetsr()rr)rrrs"€rrrcsø€÷
ñ
™t¡C
©Tñ
rc óèVPP4VPP4VPP4VFpVP V4'dKR# R#)z>Resolve a list of package targets. Returns True if successful.FT)riÚclearrfrgÚ _resolve_one)rmrˆÚtargets&& rÚresolveÚDepResolver.resolvesUà
×ÑÔØ ×ÑÔØ ×ÑÔãˆFØ×$ V×ññrcó&<V^8„dQhRS[RS[/#)rr()rrrs"€rrrcsø€÷OñO¡3ðO©4ñOrc
 ó¶WP9dR#VPPV4WP9dR#WP9dR#WPP
9d\
RRV R24R#WP9dtVPV4pV'g\
RRV R24R#\V4^8”d)\
RR V R
R PR V44 24V^,^,pVPV,pVPW4VPW4VPR
.4EFap\V4pVR,pRpVPP4Fpwr‰\!WY4'gKVR,'dHV PR4'd1\#V R,^,VR,VR,4'dRpM V'dVPF=p
VPPV
4p V 'gK(\!W[4'gK;RpM V'dEK
VPV4pRp VFwrÞWÐP9gKRp M V 'dEKGVP%V4'dEKaR# WP9dVPP'V4R#)z Resolve a single package target.Tr
ú Package 'u' is in IgnorePkg — skippingr z' not found in any repositoryFr zMultiple packages provide 'z': ú, c3ó2"TF
q^,xK R#5i©r4Nrq©Ú.0rs& rÚ <genexpr>Ú+DepResolver._resolve_one.<locals>.<genexpr>)séÐRkÑajÐ\]ÐUV×SWÒSWÓajùórr—)rirrfrbrKrhr%rrrr6Újoinr}r…rrSrr7)rmror ÚddrmÚsatr{r|ÚpnrâÚfoundÚ prov_namer0s&& rrÚDepResolver._resolve_oneseà —] Ø
×ј&Ô —_‘_Ô ð —^‘^Ô ð —[‘[× F˜i¨ xÐ/MÐ ð ŸÔ ×+¨FÓ3ˆÜ˜ 9¨V¨HÐ4QÐ!RÔÜ9~ Ô˜Ð"=¸f¸XÀSÈÏÉÑRkÑajÓRkÓIkÐHlÐ mÔ˜q•\ !•_ˆFà}‰}˜VÕ$ˆð
×јfÔ ×јVÔ—xx  ¨2×.ˆ! *ˆ˜&•zˆˆCØ(,¯©×(<Ñ(<Ö(>Ñ$ Ü  ×˜)—}”}¨¯©°y×)AÒ)Aܰ9Õ)=¸aÕ)@À"ÀUÅ)ÈRÐPYÍ]× Øñ)?÷Ùð—o”oØŸ=™=×,¨RÓ0ß‘8¤
¨b× ;Ô ;Øñ 
Úð×+¨HÓ5ˆI؈EÛ )‘ ا¡Ö ñ!*÷Úà×$ X×ñK/ðN ŸÔ O‰O× "  r)rjrirrKrbrfrgN) rnrrr}r…rrr­s@rr`r`ÖsCø‡÷
ð
÷


ð
÷OöOrr`c ó€V^8„dQhR\R\R\R\\\\,3,/#)rÚpkg_pathrfÚpkgnamer()rrrr)rs"rrras8÷5ñ5¤ð5¬Tð5¼Cð5ÄEÌ$ÔPTÔUXÕPYÈ/ÕDZñ5rcóü.p^RIp\VR4;_uu_4pVP4pVPV4;_uu_4p\P!VRR7;_uu_4pVEFCp V P
p
V
P
R4'dK)WPR4, p VPRV
,4V P4'dZV P4'gV P4'dV P4V PV P4V P4'dpV P4'gV P4'dV P4V P!WPPR4, 4EKLV P#4'dV P%RRR7EKxV P&P%RRR7VP)V 4;_uu_4p V 'd4\V R 4;_uu_4p
\*P,!WÍ4RRR4RRR4V P.pV'dV P1V4\2P4!W¹P6V P84EKF RRR4RRR4RRR4RV3# +'giLŠ;i +'giL•;i \:\<3dEi;i +'giLc;i +'giLn;i +'giLy;i \>d+p\AR
R TP
R T 24R
.3uRp?#Rp?ii;i)z=Extract a .pkg.tar.zst to root. Returns (success, file_list).Nrûr/r`Tr²rPr zFailed to extract rF)!r r¸r
rrr—Úlstripr7ÚissymrˆÚ
is_symlinkrÊÚ
symlink_toÚlinknameÚislnkÚ hardlink_torrrVÚ copyfileobjrÿÚchmodr…ÚchownÚuidÚgidÚPermissionErrorr*rr%)rfrr rrrrrr—ÚsrcÚdstrÿr"s&&& rÚextract_single_pkgr´asjà €Eð2ÛÜ
(˜D×
! QØ×/ˆ×# A×&¨&Ü—\\¨&°t×Ü"%˜Ø%Ÿ{™{˜àŸ?™?¨3×$Ø!%¯ © °CÓ(8Õ!8˜ØŸ  S¨4¥ZÔ!Ÿ<™<Ÿ>š>Ø%Ÿ}™}Ÿš°&×2CÑ2C×2EÒ2EØ &§
¡
¤Ø"×-¨f¯o©oÔ!Ÿ<™<Ÿ>š>Ø%Ÿ}™}Ÿš°&×2CÑ2C×2EÒ2EØ &§
¡
¤Ø"×.¨t·o±o×6LÑ6LÈSÓ6QÕ/QÔ!Ÿ<™<Ÿ>š>Ø"ŸL™L°À˜Ÿ
×+°DÀ4Ð Ÿ_™_¨V×4¸ß"Ü%)¨&°$×%7Ô%7¸3Ü$*×$6Ò$6°sÔ$@÷&8÷ &Ÿ{™{˜ßØ"ŸL™L¨ÔŸHšH V¯Z©Z¸¿¹×DñK#&÷"ðZUˆ÷&8×%7ú÷5×4ûô!0´Ð ð!ú÷O=×<ú÷'×&ú÷"×
!ûô\ ôÜÐ-¨h¯m©m¨_¸B¸q¸cÐbˆyÕûðúsæMœ*L3Á!L Á'BL
Ã.L
ÄAL
ÅL
ÅL
Å3AL
Ç A L
ÈK!È5KÉ K!ÉL
É0L
Ê+K4Ê-L
Ê2L Ê:L3Ë MË KËK!Ë! K1Ë,L
Ë4L
ÌL
Ì L
Ì
L
Ì
LÌL Ì L0
Ì+L3Ì3 M Ì>MÍ M;ÍM6Í0M;Í6M;c
óTV^8„dQhR\R\R\R\R\/#)rÚscript_contentÚactionrf)rr)rs"rrrs0÷%ñ%¤#ð%¬sð%¼$ð%Ìð%ÔWZñ%rc óV'gR#\P!4;_uu_4p\V4V R2, pVPV4VP R4\
P P4pVPR\V4RVRV/4\P!\V4V.V\V4RR^xR7pVP^8wdd\R R
V R V R VP 24VPP4'd%\R
VPP44VP^8HuuRRR4# +'giR#;i \P d\R R
T R T R24R#\"d!p \R R
T R T RT 24Rp ? R#Rp ? ii;i)z”Execute a package scriptlet phase.
.INSTALL phases: pre_install, post_install, pre_upgrade, post_upgrade,
pre_remove, post_remove
Nz.installiíÚRPM_INSTALL_PREFIXÚ PACKAGE_NAMEÚPACKAGE_VERSIONT)ÚenvÚcwdÚcapture_outputrÏÚtimeoutr
z
Scriptlet r@z
returned r z
timed outFz failed: )ÚtempfileÚTemporaryDirectoryrÚ
write_textr­r…r†ÚcopyrrÚ
subprocessÚrunÚ
returncoder%ÚstderrrÚTimeoutExpiredr)
rfr\Ú script_pathr¼r[r"s
&&&&& rÚ
run_scriptletrÊsˆ÷ ÙðÜ
×
(×
*¨cܘs¨ °Ð&:Õ:ˆ × "  × Ñ ˜ —*‘*—/‘/Ó#ˆCØ J‰JØ$¤c¨$£iØ Ø! 7ðô
ô  —^’^Ü! 6МS ›YØ#¨$¸ôˆFð
× Ñ  AÔ˜ *¨V¨H°E¸'¸À*ÈV×M^ÑM^ÐL_Ð `Ô—==×&טF F§M¡M×$7Ñ$7Ó$9Ô×Ñ)÷+
*×
*ûô, × Ü˜* V H¨E°'°¸Ü ôܘ* V H¨E°'°¸)ÀAÀ3ÐûðúsAŒE0©D(EÅ
E0Å E- Å'E0Å-E0Å0(GÆGÆ$GÆ%GÇGcóFV^8„dQhR\R\\,/#)rr()rrr)rs"rrrÁs÷
ñ
œDð
¤X¬c¥]ñ
rc óX^RIp\VR4;_uu_4pVP4pVPV4;_uu_4p\P!VRR7;_uu_4pVFdpVP
R8XgKVP
V4P4PRRR7uuuRRR4uuRRR4uuRRR4# RRR4RRR4RRR4R# +'giL";i +'giL-;i +'giR#;i R#;i) z(Extract .INSTALL content from a package.Nrûz.INSTALLrrr) r r¸r
rrr—rrr)r rrrrrs& rÚ
get_scriptletrÍÁð

ÛÜ
(˜D×
! QØ×/ˆ×# A×&¨&Ü—\\¨&°t×Û"%˜Ø!Ÿ;™;¨*Ö4Ø#&§?¡?°6Ó#:×#?Ñ#?Ó#A×#HÑ#HÈÐYbÐ#HÓ#cÑ
#&÷ ÷
=×<ú÷'×&ú÷
 ûð
Ø Ù úsvD$š*DÁ!C= Á%C*
Á>1C*
Â/
C= Â9
DÃ
D$ÃC*
ÃC= ÃDÃ D$Ã* C:Ã5C= Ã= D
ÄDÄ D! ÄD$Ä!D$Ä$D)c
ójV^8„dQhR\R\R\\,R\R\/#)rÚpkg_keyr rrfrG)rrrr4)rs"rrrÒs;÷AñAœSðA¬ðA´T¼#µYðAÄdðAÜñArcóx\V, pVPRRR7\\\P!444.VR&\V4.VR&.pVP 4FYwrxVP
R4'dKVPRVP4 R24VPRV44K[ VR, PR PV4R ,4R
.p V PV4VR , PR PV 4R ,4R #)
z)Write to /var/lib/pacman/local/<pkg_key>/Tr²Ú installdaterGr0c3ó8"TFp\V4xK R#5irer)rr˜s& rr—Ú"update_local_db.<locals>.<genexpr>áséÐ/©$ Qœ#˜aŸ&˜&«$ùórr{r.rN) r&rr4ÚtimerSr7Úupperr)
r rrfrGr,Ú
desc_linesÚkeyÚvalsÚ
file_liness
&&&&& rÚupdate_local_dbrÛÒsô˜!€GØ ‡MM˜€MÔœs¤4§9¢9£;Ó1€DˆÑܘ&“k]€Dˆ€JØ—ZZ\‰ ˆØ >‰>˜#× Ò Ù Ø×јA˜cŸi™i›k˜]¨!Ð×ÑÑ/©$Ó

ˆvÕ×! $§)¡)¨JÓ"7¸$Õ">Ô€JØ×ÑØ ˆ×" 4§9¡9¨ZÓ#8¸4Õ#?Ö@rcó$V^8„dQhR\/#)rr)rs"rrrês÷ñœSñrcó|\V, pVP4'd\P!V4R#R#re)r&rˆrVÚrmtree)r,s& rÚremove_local_dbrßês*ܘ!€G؇~~×ÒÜ
Š
ñrc ó¢V^8„dQhR\R\R\R\\\,\\\
3,3,/#)rÚ old_pkg_keyrfr()rrrrrÚbytes)rs"rrrñsF÷4ñ4¤Sð4´sð4Ä$ð4Ì5ÔQUÔVYÕQZÔ\`ÔadÔfkÐakÕ\lÐQlÕKmñ4rcó\V, R, p.p/pVP4'gWE3#\VPRRR74pTP
R.4pT'gYE3#TpTPR4p T 'd
T ^,MTp
\T 4^8”d
T ^,MRp Y*PR4, p T P4'dT P4'gK‡T 'gTPT
4\P!T P44P4p
YÛ8wdTPT
4 TF-p
Y*PR4, p T P4YZ&K/ T'd\!R R
T 24YE3# \\
3dYE3u#i;i \\
3dTPT
4EKi;i \\
3di;i) aIdentify modified backup files before extraction and save them.
Reads the old package's backup list from local DB, compares current
file checksums against stored ones, and saves modified files aside.
Returns (list of modified paths, dict of {path: saved_content_bytes}).
rrrrÚbackupÚ r.r`r z%Preserving modified config files for )r&rˆr)r*rr3r6Úis_filer7ÚhashlibÚmd5Ú
read_bytesÚ hexdigestr%)rfÚ
old_desc_fileÚmodifiedÚsavedÚold_infoÚbackup_entriesÚentryr9ÚfilepathÚ
stored_md5Ú full_pathÚ current_md5s&&& rÚ_save_modified_backupsrõñô  Õ+¨fÕ4€MØ€HØ €Eà × Ñ × ˆÐðÜ  ×!8Ñ!8¸ÈÐ!8Ó!SÓTˆð—\‘\ (¨BÓ/€Nß ØˆÐãˆØ ˜DÓß$–8¨%ˆÜ!$ U£¨a¤U˜1X°Rˆ
ØŸ?™?¨3Ó/ˆ Ø×Ñ××):Ñ):×)<Ò)<Ù ßØ O‰O˜ 
%Ÿkšk¨)×*>Ñ*>Ó*@ÓA×M ØÔ—O‘O HÖ ó$ˆØŸ?™?¨3Ó/ˆ ð Ø'×4ˆE÷ÜиzÐ ˆ?ÐøôG
”WÐ ô؈Òðûô*œWÐ
 ×
*ûôœÐ Ú ð ús6³F-ÄA GÅ=G1Æ-GÇGÇ"G.Ç-G.Ç1HÈHcótV^8„dQhR\\,R\\\3,R\/#)rrf)rrrr)rs"rrr(s3÷HñHœt¤CH´´c¼5°jÕ1AðHÌñHrc ózV'gR#VpW#PR4, pVPVPR,4pVP4'd+\P
!WE4\
RRV RV R24W19gK„VPPR
R
R 7VPW,4\
RR V 24 R# \\3dp\
RRT R T 24Rp?LzRp?ii;i \\3dp\
RR
T RT 24Rp?EK(Rp?ii;i)zHAfter extraction, restore user configs and save new versions as .pacnew.Nr`z.pacnewr rõ → r
ú Could not create z .pacnew: Tr²z Restored user config: z Could not restore r) rTÚsuffixrˆrVrWr%r*Ú write_bytes)rfÚ pacnew_pathr"s&&& rÚ_restore_backupsrý(s(ç ÙãˆØŸ?™?¨3Ó/ˆ à×+¨I×,<Ñ,<¸yÕ,HÓIˆ Ø × Ñ × Ò ð
NÜ ˜˜ " X J¨e°H°:¸WÐ EÔ
Ö ð
HØ× Ñ ×&¨t¸×% e¥oÔ˜Ð":¸8¸*Ð EÖFó!øôœWÐ
NܘÐ"5°h°Z¸ÈÐ L×Mûð
NûôœWÐ
HܘÐ"6°x°jÀÀ1À#Ð F×Gûð
Hús1Á )CÂAD ÃDÃ,DÄDÄ D:ÄD5Ä5D:cóFV^8„dQhR\\,R\/#©rrˆrK©rrr^)rs"rrrCs"÷}