HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/lib/python3.9/site-packages/pip/_internal/__pycache__/locations.cpython-39.pyc
a

?�fL�@s�dZddlmZddlZddlZddlZddlZddlZddlZddl	mZ
ddlmZddlm
ZddlmZddlmZdd	lmZdd
lmZmZddlmZer�ddlmZmZmZmZdd
lm Z!e�"d�Z#dd�Z$dd�Z%e�&d�Z'e�(��)�dk�r
e
�*�Z'ze�+�Z,Wne-�y0ej.Z,Yn0e�r�ej/�0ej1d�Z2ej/�0e,d�Z3ej/�4e2��s�ej/�0ej1d�Z2ej/�0e,d�Z3nJej/�0ej1d�Z2ej/�0e,d�Z3ejdd�dk�r�ej1dd�dk�r�dZ2d!dd�Z5d"dd �Z6dS)#z7Locations where we look for configs, install stuff, etc�)�absolute_importN)�	sysconfig)�SCHEME_KEYS)�install)�Scheme)�appdirs)�WINDOWS)�MYPY_CHECK_RUNNING�cast)�running_under_virtualenv)�Dict�List�Optional�Union)�CommandZpipcCsdjtj�S)ze
    Return the major-minor version of the current Python as a string, e.g.
    "3.7" or "3.10".
    z{}.{})�format�sys�version_info�rr�;/usr/lib/python3.9/site-packages/pip/_internal/locations.py�get_major_minor_version"srcCsXt�rtj�tjd�}n4ztj�t��d�}WntyJt�d�Yn0tj�	|�S)N�srcz=The folder you are executing pip from can no longer be found.)
r�os�path�joinr�prefix�getcwd�OSError�exit�abspath)Z
src_prefixrrr�get_src_prefix+s�
r �purelibZpypyZScripts�bin��darwin�z/System/Library/z/usr/local/binFcCs�ddlm}d|i}|r"dg|d<||�}|��d}	|jddd	�}	|	dusPJ�tt|	�}
|rr|rrJd
�||���|r�|r�Jd�||���|p�|
j|
_|s�|r�d|
_|p�|
j|
_|p�|
j	|
_	|p�|
j
|
_
|
��i}tD]}t
|
d
|�||<q�d|�d�v�r|�t|
j|
jd��t��r�tj�|
jddd�t��|�|d<|du�r�tj�tj�|d��d}
tj�||
dd��|d<|S)z+
    Return a distutils install scheme
    r)�Distribution�namez
--no-user-cfgZscript_argsNrT)Zcreatezuser={} prefix={}zhome={} prefix={}�Zinstall_�install_lib)r!�platlibZinclude�sitezpython{}�headers�)Zdistutils.distr&Zparse_config_filesZget_command_objr
�distutils_install_commandr�userr�home�rootZfinalize_optionsr�getattrZget_option_dict�update�dictr)rrrrr�
splitdriver)�	dist_namer/r0r1�isolatedrr&Z	dist_args�d�obj�i�scheme�keyZ
path_no_driverrr�distutils_scheme_sV


�
��
�r=cCs8t||||||�}t|d|d|d|d|dd�S)a;
    Get the "scheme" corresponding to the input parameters. The distutils
    documentation provides the context for the available schemes:
    https://docs.python.org/3/install/index.html#alternate-installation

    :param dist_name: the name of the package to retrieve the scheme for, used
        in the headers scheme path
    :param user: indicates to use the "user" scheme
    :param home: indicates to use the "home" scheme and provides the base
        directory for the same
    :param root: root under which other directories are re-based
    :param isolated: equivalent to --no-user-cfg, i.e. do not consider
        ~/.pydistutils.cfg (posix) or ~/pydistutils.cfg (non-posix) for
        scheme paths
    :param prefix: indicates to use the "prefix" scheme and provides the
        base directory for the same
    r*r!r,�scripts�data)r*r!r,r>r?)r=r)r6r/r0r1r7rr;rrr�
get_scheme�s��r@)FNNFN)FNNFN)7�__doc__Z
__future__rrZos.path�platformr+rrZ	distutilsZdistutils_sysconfigZdistutils.command.installrrr.Zpip._internal.models.schemerZpip._internal.utilsrZpip._internal.utils.compatrZpip._internal.utils.typingr	r
Zpip._internal.utils.virtualenvr�typingrr
rrZ
distutils.cmdrZDistutilsCommandZuser_cache_dirZUSER_CACHE_DIRrr Zget_pathZ
site_packagesZpython_implementation�lowerZget_python_lib�getusersitepackages�	user_site�AttributeError�	USER_SITErrrZbin_pyZbin_user�existsr=r@rrrr�<module>s\
	
(�
B�