�
u��g�( � �� � d Z ddlmZ ddlZddlZddlmZ ddlmZ ddl m
Z
mZ ddlm
Z
e
rdd lmZ ej d
k rdd
�ZnddlmZ G d� de
� � Zdd�Zdd�ZdgZdS )zUnix.� )�annotationsN)�ConfigParser)�Path)�
TYPE_CHECKING�NoReturn� )�PlatformDirsABC)�Iterator�win32�returnr c �$ � d} t | � � �)Nzshould only be used on Unix)�RuntimeError)�msgs �a/home/asafur/pinokio/api/open-webui.git/app/env/lib/python3.11/site-packages/platformdirs/unix.py�getuidr s � �+���3���� )r c � � e Zd ZdZedd�� � Zed d�� � Zedd�� � Zedd�� � Zed d �� � Z edd
�� � Z
edd�� � Zedd�� � Zedd
�� � Z
edd�� � Zedd�� � Zedd�� � Zedd�� � Zedd�� � Zedd�� � Zedd�� � Zedd�� � Zedd�� � Zed!d�� � Zed!d�� � Zed!d�� � Zd"d�Zd"d�ZdS )#�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 shown 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>`.
r �strc �� � t j � dd� � }|� � � st j � 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��selfr s r �
user_data_dirzUnix.user_data_dir'