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/local/lib/python3.7/site-packages/pip/_vendor/platformdirs/__pycache__/unix.cpython-37.pyc
B

L��gi"�@s�dZddlmZddlZddlZddlmZddlmZddl	m
Z
ejdkr^d	d
�dd�Zndd
lmZGdd�de
�Z
dddd�dd�Zddd�dd�ZdgZdS)zUnix.�)�annotationsN)�ConfigParser)�Path�)�PlatformDirsABC�win32�int)�returncCsd}t|��dS)Nzshould only be used on Unix)�RuntimeError)�msg�r�A/tmp/pip-unpacked-wheel-hv55ucu3/pip/_vendor/platformdirs/unix.py�getuid
sr)rc@sbeZdZdZedd�dd��Zedd�dd��Zddd�d	d
�Zedd�dd��Zedd�d
d��Z	edd�dd��Z
edd�dd��Zedd�dd��Zedd�dd��Z
edd�dd��Zedd�dd��Zedd�dd��Zedd�dd��Zedd�dd ��Zedd�d!d"��Zed#d�d$d%��Zed#d�d&d'��Zed#d�d(d)��Zdd#d*�d+d,�Zd-S).�Unixa�
    On Unix/Linux, we follow the
    `XDG Basedir Spec <https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html>`_. The spec allows
    overriding directories with environment variables. The examples show are the default values, alongside the name of
    the environment variable that overrides them. Makes use of the
    `appname <platformdirs.api.PlatformDirsABC.appname>`,
    `version <platformdirs.api.PlatformDirsABC.version>`,
    `multipath <platformdirs.api.PlatformDirsABC.multipath>`,
    `opinion <platformdirs.api.PlatformDirsABC.opinion>`,
    `ensure_exists <platformdirs.api.PlatformDirsABC.ensure_exists>`.
    �str)r	cCs,tj�dd�}|��s"tj�d�}|�|�S)z�
        :return: data directory tied to the user, e.g. ``~/.local/share/$appname/$version`` or
         ``$XDG_DATA_HOME/$appname/$version``
        �
XDG_DATA_HOME�z~/.local/share)�os�environ�get�strip�path�
expanduser�_append_app_name_and_version)�selfrrrr
�
user_data_dir"szUnix.user_data_dircCs.tj�dd�}|��s$dtj�d�}|�|�S)aY
        :return: data directories shared by users (if `multipath <platformdirs.api.PlatformDirsABC.multipath>` is
         enabled and ``XDG_DATA_DIR`` is set and a multi path the response is also a multi path separated by the OS
         path separator), e.g. ``/usr/local/share/$appname/$version`` or ``/usr/share/$appname/$version``
        �
XDG_DATA_DIRSrz/usr/local/sharez
/usr/share)rrrr�pathsep�_with_multi_path)rrrrr
�
site_data_dir-szUnix.site_data_dir)rr	cs<|�tj�}�js|dd�}�fdd�|D�}tj�|�S)Nrrcsg|]}��tj�|���qSr)rrrr)�.0�p)rrr
�
<listcomp>>sz)Unix._with_multi_path.<locals>.<listcomp>)�splitrr�	multipath�join)rr�	path_listr)rr
r:s
zUnix._with_multi_pathcCs,tj�dd�}|��s"tj�d�}|�|�S)z�
        :return: config directory tied to the user, e.g. ``~/.config/$appname/$version`` or
         ``$XDG_CONFIG_HOME/$appname/$version``
        �XDG_CONFIG_HOMErz	~/.config)rrrrrrr)rrrrr
�user_config_dirAszUnix.user_config_dircCs$tj�dd�}|��sd}|�|�S)a/
        :return: config directories shared by users (if `multipath <platformdirs.api.PlatformDirsABC.multipath>`
         is enabled and ``XDG_DATA_DIR`` is set and a multi path the response is also a multi path separated by the OS
         path separator), e.g. ``/etc/xdg/$appname/$version``
        �XDG_CONFIG_DIRSrz/etc/xdg)rrrrr)rrrrr
�site_config_dirLszUnix.site_config_dircCs,tj�dd�}|��s"tj�d�}|�|�S)z�
        :return: cache directory tied to the user, e.g. ``~/.cache/$appname/$version`` or
         ``~/$XDG_CACHE_HOME/$appname/$version``
        �XDG_CACHE_HOMErz~/.cache)rrrrrrr)rrrrr
�user_cache_dirYszUnix.user_cache_dircCs
|�d�S)zM:return: cache directory shared by users, e.g. ``/var/tmp/$appname/$version``z/var/tmp)r)rrrr
�site_cache_dirdszUnix.site_cache_dircCs,tj�dd�}|��s"tj�d�}|�|�S)z�
        :return: state directory tied to the user, e.g. ``~/.local/state/$appname/$version`` or
         ``$XDG_STATE_HOME/$appname/$version``
        �XDG_STATE_HOMErz~/.local/state)rrrrrrr)rrrrr
�user_state_diriszUnix.user_state_dircCs|j}|jrtj�|d�}|S)zg:return: log directory tied to the user, same as `user_state_dir` if not opinionated else ``log`` in it�log)r/�opinionrrr%)rrrrr
�user_log_dirtszUnix.user_log_dircCs
tdd�S)zC:return: documents directory tied to the user, e.g. ``~/Documents``ZXDG_DOCUMENTS_DIRz~/Documents)�_get_user_media_dir)rrrr
�user_documents_dir|szUnix.user_documents_dircCs
tdd�S)zC:return: downloads directory tied to the user, e.g. ``~/Downloads``ZXDG_DOWNLOAD_DIRz~/Downloads)r3)rrrr
�user_downloads_dir�szUnix.user_downloads_dircCs
tdd�S)zA:return: pictures directory tied to the user, e.g. ``~/Pictures``ZXDG_PICTURES_DIRz
~/Pictures)r3)rrrr
�user_pictures_dir�szUnix.user_pictures_dircCs
tdd�S)z=:return: videos directory tied to the user, e.g. ``~/Videos``ZXDG_VIDEOS_DIRz~/Videos)r3)rrrr
�user_videos_dir�szUnix.user_videos_dircCs
tdd�S)z;:return: music directory tied to the user, e.g. ``~/Music``Z
XDG_MUSIC_DIRz~/Music)r3)rrrr
�user_music_dir�szUnix.user_music_dircCs^tj�dd�}|��sTtj�d�rHdt���}t|��	�sTdt���}ndt���}|�
|�S)az
        :return: runtime directory tied to the user, e.g. ``/run/user/$(id -u)/$appname/$version`` or
         ``$XDG_RUNTIME_DIR/$appname/$version``.

         For FreeBSD/OpenBSD/NetBSD, it would return ``/var/run/user/$(id -u)/$appname/$version`` if
         exists, otherwise ``/tmp/runtime-$(id -u)/$appname/$version``, if``$XDG_RUNTIME_DIR``
         is not set.
        ZXDG_RUNTIME_DIRr)ZfreebsdZopenbsdZnetbsdz/var/run/user/z
/tmp/runtime-z
/run/user/)rrrr�sys�platform�
startswithrr�existsr)rrrrr
�user_runtime_dir�s
zUnix.user_runtime_dirrcCs|�|j�S)zd:return: data path shared by users. Only return first item, even if ``multipath`` is set to ``True``)� _first_item_as_path_if_multipathr)rrrr
�site_data_path�szUnix.site_data_pathcCs|�|j�S)zj:return: config path shared by the users. Only return first item, even if ``multipath`` is set to ``True``)r>r*)rrrr
�site_config_path�szUnix.site_config_pathcCs|�|j�S)ze:return: cache path shared by users. Only return first item, even if ``multipath`` is set to ``True``)r>r-)rrrr
�site_cache_path�szUnix.site_cache_path)�	directoryr	cCs|jr|�tj�d}t|�S)Nr)r$r#rrr)rrBrrr
r>�sz%Unix._first_item_as_path_if_multipathN)�__name__�
__module__�__qualname__�__doc__�propertyrrrr(r*r,r-r/r2r4r5r6r7r8r=r?r@rAr>rrrr
rs(

rr)�env_var�fallback_tilde_pathr	cCs6t|�}|dkr2tj�|d���}|s2tj�|�}|S)Nr)�_get_user_dirs_folderrrrrrr)rHrIZ	media_dirrrr
r3�sr3z
str | None)�keyr	c	Cs�tt�j�d}|��r|t�}|���}|�d|�����WdQRX||dkrVdS|d|�d�}|�	dt
j�d��SdS)zkReturn directory from user-dirs.dirs config file. See https://freedesktop.org/wiki/Software/xdg-user-dirs/.zuser-dirs.dirsz[top]
N�top�"z$HOME�~)
rrr(r<r�open�read_string�readr�replacerrr)rKZuser_dirs_config_path�parser�streamrrrr
rJ�s
rJ)rF�
__future__rrr9�configparserr�pathlibr�apirr:rrr3rJ�__all__rrrr
�<module>s
+