o !Qd;X@s, ddlZddlZddlZddlZddlZejejgadada da ddZ ddZ ddZ dd Zd d Zd d Zd3ddZddZddZddZddZddZddZd3ddZd3ddZd d!Zd"d#Zd$d%Zd&d'Zd(d)Zd*d+Zd,d-Z d.d/Z!ej"j#se!d0d1Z$e%d2kre$dSdS)4NcCstjjr t|tjddSdS)Nfile)sysflagsverboseprintstderr)messager +/opt/alt/python310/lib64/python3.10/site.py_trace[sr cGs@tjj|}ztj|}Wn tyYnw|tj|fSN)ospathjoinabspathOSErrornormcase)pathsdirr r r makepath`s  rc Cs ttjD]W}d}z|jj}Wnty,z|jjj}Wn ty)YnwYnw|dvr2qz t j |j |_ Wn tt tfyHYnwz t j |j|_Wqtt tfy_YqwdS)N>_frozen_importlib_frozen_importlib_external)setrmodulesvalues __loader__ __module__AttributeError__spec__loaderrrr__file__r TypeError __cached__)m loader_moduler r r abs_pathsis4   r&cCsR g}t}tjD]}t|\}}||vr||||q |tjdd<|Sr )rrrrappendadd)L known_pathsrdircaser r r removeduppathss    r,c CsP t}tjD]}ztj|rt|\}}||Wqty%Yqw|Sr )rrrrexistsrr(r")ditem_itemcaser r r _init_pathinfos     r2c Cs |dur t}d}nd}tj||}td|z tjt|dd}Wn ty1YdSw|t |D]z\}}| drCq9| dkrJq9z-| drVt |Wq9| }t||\}} | |vrvtj|rvtj||| Wq9tytd |d |tjd d dl} | jtD]} | D] }td |tjd qqtdtjd YnwWdn1swY|rd}|S)NTFzProcessing .pth file: localeencoding#)zimport zimport z"Error processing line {:d} of {}: rrz z Remainder of file ignored)r2rrrr io TextIOWrapper open_coder enumerate startswithstripexecrstriprr-rr'r( Exceptionrformatr tracebackformat_exceptionexc_info splitlines) sitedirnamer*resetfullnamefnlinerr+rCrecordr r r addpackagesZ        rOcCs td||durt}d}nd}t|\}}||vr)tj|||zt|}Wn t y:YdSwdd|D}t |D]}t |||qF|rSd}|S)NzAdding directory: TFcSsg|] }|dr|qS)z.pth)endswith).0rHr r r szaddsitedir..) r r2rrrr'r(rlistdirrsortedrO)rGr*rI sitedircasenamesrHr r r addsitedirs*     rWcCsb tjjrdSttdrttdrttkrdSttdr/ttdr/ttkr/dSdS)NFgetuidgeteuidgetgidgetegidT) rr no_user_sitehasattrrrYrXr[rZr r r r check_enableusersites r^cCstjdd}|r |StjdkrdSdd}tjdkr(tjdp"d}||dStjd kr?tjr?|dd tjd tjdd S|dd S)NPYTHONUSERBASEvxworkscWstjtjj|Sr )rr expanduserr)argsr r r joinusersz_getuserbase..joinuserntAPPDATA~PythondarwinLibraryz%d.%dz.local)renvirongetrplatformrH _framework version_info)env_basercbaser r r _getuserbases     rrcCsftj}tjdkrtjdd}|d|dStjdkr$tjr$|dS|d|d d|d d S) Nrd.r7z\Pythonz\site-packagesrhz/lib/python/site-packagesz /lib/pythonrr8z/site-packages)rrorrHwinverreplacermrn)userbaseversion ver_nodotr r r _get_path s  rycCs tdurtatSr ) USER_BASErrr r r r getuserbase-sr{cCs, t}tdur|durdatSt|atS)NF)r{ USER_SITEENABLE_USER_SITEry)rvr r r getusersitepackages:sr~cCs. tdt}trtj|rt|||S)NzProcessing user site-packages)r r~r}rrisdirrW)r* user_siter r r addusersitepackagesKs  rc Cs g}t}|dur t}|D]S}|r||vrq||tjg}tjdkr*|dtjdkrJ|D]}tj ||dtj ddd}||q1q|||D]}tj ||d}||qQq|S)Nlib/z python%d.%drjz site-packages) rPREFIXESr(r platlibdirr'rseprrro)prefixes sitepackagesseenprefixlibdirslibdirrr r r getsitepackagesZs4         rcCs2 tdt|D] }tj|rt||q |S)NzProcessing global site-packages)r rrrrrW)r*rrGr r r addsitepackages~s   rcCs6 tjdkr d}nd}td|t_td|t_dS)N\zCtrl-Z plus ReturnzCtrl-D (i.e. EOF)quitexit)rr _sitebuiltinsQuitterbuiltinsrr)eofr r r setquits  rcCs tdtjt_tjdddkrtddt_ntddt_gg}}ttdrHtj tj }| dd g| tj |tj|tjgtd d ||t_dS) N copyrightjavacreditsz?Jython is maintained by the Jython developers (www.jython.org).z Thanks to CWI, CNRI, BeOpen.com, Zope Corporation and a cast of thousands for supporting Python development. See www.python.org for more information.r!z LICENSE.txtLICENSElicensez'See https://www.python.org/psf/license/)r_Printerrrrrmrr]rrdirnamer!extendrpardircurdirr)filesdirsherer r r setcopyrights$   rcCstt_dSr )r_Helperrhelpr r r r sethelpersrcCs dd}|t_dS)Ncsddl}z ddlddl}Wn tyYdSwtdd}|dur-d|vr-dndzWn tyAYnwdkrrt j t j ddz Wn tycYnwfd d }||dSdS) Nr__doc__r7libeditzbind ^I rl_completez tab: completerfz.python_historycs&zWdStyYdSwr )write_history_filerr historyreadliner r write_historys  zCenablerlcompleter..register_readline..write_history)atexitr rlcompleter ImportErrorgetattrparse_and_bindread_init_filerget_current_history_lengthrrrraread_history_fileregister)rr readline_docrr rr register_readlines8         z,enablerlcompleter..register_readline)r__interactivehook__)rr r r enablerlcompleters 0rcCsZtj}tjdkrd|vrtjd}t_ntj}tjtj|\}}tj |}dt_ d}ddtj ||tj ||fD}|r|d}d} t |dd 3} | D](} d | vr{| d \} }} | } | } | d krt| } qS| d kr{| t_ qSWdn1swY|t_t_t|tjg| dkrtdtj|Stjgad a|S)Nrh__PYVENV_LAUNCHER__z pyvenv.cfgcSsg|] }tj|r|qSr )rrisfile)rQconffiler r r rRs  zvenv..rtruezutf-8r4=zinclude-system-site-packageshomeF)rrkrrm_base_executable executablersplitrr_homeropen partitionr>lowerr exec_prefixrrinsertr})r*envrexe_dirr0 site_prefix conf_basenamecandidate_confs virtual_conf system_siterKrMkeyvaluer r r venvsJ      rc C z$zddl}WWdSty%}z|jdkrnWYd}~WdSd}~wwtyW}z&tjjr9tjtntj d|j j |fWYd}~dSWYd}~dSd}~ww)Nr sitecustomizez@Error in sitecustomize; set PYTHONVERBOSE for traceback: %s: %s ) rrrHrArrr excepthookrErwrite __class____name__)rexcerrr r r execsitecustomize!,  rc Cr)Nr usercustomizez@Error in usercustomize; set PYTHONVERBOSE for traceback: %s: %s ) rrrHrArrrrrErrrr)rrrr r r execusercustomize5rrcCs tjdd}t}|tjkrtt|}tdurtat|}t|}t t t tj j s6tttr@tdSdSr )rrr,r&rr}r^rrrrrrisolatedrrr) orig_pathr*r r r mainIs&  rcCs\d}tjdd}|sPt}t}tdtjD] }td|fqtddd}td|d ||d td |d ||d td ttd g}d|vr[|t d|vrd|t |rtt j |trwtd dStdurtddStdurtddStddSd dl}t||tjd t j ftddS)Na %s [--user-base] [--user-site] Without arguments print some useful information With arguments print the value of USER_BASE and/or USER_SITE separated by '%s'. Exit codes with --user-base or --user-site: 0 - user site directory is enabled 1 - user site directory is disabled by user 2 - user site directory is disabled by super user or for security reasons >2 - unknown error r8z sys.path = [z %r,]cSs|dur tj|r dSdS)Nr-z doesn't exist)rrr)rr r r r-sz_script..existsz USER_BASE: z ()z USER_SITE: zENABLE_USER_SITE: rz --user-basez --user-siteFrj )rargvr{r~rrr}rr'rzr|rpathseprtextwrapdedent)rrb user_baserrr-bufferrr r r _scriptks>    r__main__r )&rrrrr9rrrr}r|rzr rr&r,r2rOrWr^rrryr{r~rrrrrrrrrrrrno_siterrr r r r sNG   /     $ ;46