HEX
Server: Apache/2.4.65 (Debian)
System: Linux kubikelcreative 5.10.0-35-amd64 #1 SMP Debian 5.10.237-1 (2025-05-19) x86_64
User: www-data (33)
PHP: 8.4.13
Disabled: NONE
Upload Files
File: //usr/lib/python3/dist-packages/__pycache__/lsb_release.cpython-35.pyc


Q8X�1�@s�ddlmZddlZddlZddlZddlZddlZddlZddd�Ze�ddd�Z	dd	�Z
yeWn'ek
r�ddl
Z
e
jZYnXd
d�Zdd
ddddddddiZdd�Zdd�Zdd�Zdd�Zddddd d.id#d$�Zd%d&�Zd'd(�Zd)d*�Zd+d,�Zed-kre�dS)/�)�print_functionN�DebiancCsy
t}Wntk
r$t}YnXytd|j��}Wn|k
r_td�}YnXtj|�}dd�|D�attj	��a
t
jddd��tttt
��d�a
|j�d	kr�d
a
t
jddd
dddg�|j�dS)Nz/usr/share/distro-info/%s.csvz!/usr/share/distro-info/debian.csvcSs+i|]!}|dr|d|d�qS)�versionZseries�)�.0�rrr�-/usr/lib/python3/dist-packages/lsb_release.py�
<dictcomp>-s	z#get_distro_info.<locals>.<dictcomp>�keycSst|d�S)Nr)�float)�nrrr�<lambda>/sz!get_distro_info.<locals>.<lambda>�Zdebianzunknown.new.testingZstablezproposed-updates�testingztesting-proposed-updates�unstable�sid)�FileNotFoundError�	NameError�IOError�open�lower�csvZ
DictReader�RELEASE_CODENAME_LOOKUP�list�items�RELEASES_ORDER�sort�zip�TESTING_CODENAME�extend�close)�originZFileNotFoundExceptionZcsvfile�readerrrr�get_distro_infos"


r#cCsstjd|�}|s|St|jd��dkrPd|jdd�}nd|jd�}tj||�S)Nz(\d+)\.(\d+)(r(\d+))?r�z%s.%s�z%s)�re�match�int�groupr�get)�release�unknown�mZshortreleaserrr�lookup_codename;sr.cCs|dkrddgS|dkr[|dkr5dgS|dkrKddgSdddgSn�|dkr�|dkr}ddgS|dkr�dgS|dkr�dgS|dkr�dddgSddddgSn2|dkrb|dkr�dddgS|dkrdgS|dkrddgS|dkr0dgS|dkrLddddgSdddddgSn�|d
kr|dkr�dddd
gS|dkr�dgS|dkr�ddd
gS|dkr�dd
gS|dkr�ddddd
gSdddddd
gS|gS)Nz3.0z2.0z3.1�desktop�qt4Zcxxz3.2�printing�	languages�
multimediaz4.0Zsecurityz4.1)r/r0)r1r2r3)r1r2r3)r1r2r3r)r�modulerrr�valid_lsb_versionsFsV







r5cCsgS)Nrrrrr�check_modules_installed�sr6�vr�or!�a�suite�c�	component�l�labelcCs~i}|jd�}xb|D]Z}|jdd�}t|�dkr|dd�\}}|tkr||t|<qW|S)N�,�=rr%)�split�len�	longnames)�dataZretval�bitsZbitZkv�kr7rrr�parse_policy_line�s
rGcCsm|djd�}|ri|tkrBttt�tj|��Syt|�SWntk
rhdSYnXdS)Nrr:r)r*rr(rB�indexr�
ValueError)�xr:rrr�
release_index�s
	rKcCsgtjdtdd�t|�}t|�}y||SWn&tk
rb||k||kSYnXdS)Nz^compare_release(x,y) is deprecated; please use the release_index(x) as key for sort() instead.�
stacklevelr%)�warnings�warn�DeprecationWarningrK�	TypeError)rJ�yZ	suite_x_iZ	suite_y_irrr�compare_release�s
rRc
Csg}tjj�}d|d<tjddgd|dtjdtjdd	�j�d
jd�}x�|jd�D]�}|j	�}t
jd
|�}|r�t|j
d��}|jd�ru|jdd�}t|�dkru|j|t|d�f�quW|S)NzC.UTF-8�LC_ALLz	apt-cache�policy�env�stdout�stderrZ	close_fdsTrzutf-8�
z(-?\d+)rr+� )�os�environ�copy�
subprocess�Popen�PIPEZcommunicate�decoderA�stripr&r'r(r)�
startswithrB�appendrG)rDZC_envrT�liner-�priorityrErrr�parse_apt_policy�s$
		!rf�mainZexperimentalzDebian Ports�ftp.ports.debian.org�ftp.debian-ports.orgcs�t�}|sdS�����fdd�|D�}|sBdS|jddd�dd�|dd��fd	d�|D�}|jdt�|dd
S)Ncs�g|]�}|djdd��kr||djdd��kr||djdd��kr||djdd��ks�|djdd��kr|djdd��j|djdd��kr|�qS)rr!�r:r<r>)r*)rrJ)�alternate_olabelsr<�ignoresuitesr>r!rr�
<listcomp>�s	z*guess_release_from_apt.<locals>.<listcomp>r
cSs|dS)Nrr)�tuplerrrr
�sz(guess_release_from_apt.<locals>.<lambda>�reverseTrcs&g|]}|d�kr|�qS)rr)rrJ)�max_priorityrrrm�s	r)rfrrK)r!r<rlr>rkZreleasesr)rkr<rlr>rpr!r�guess_release_from_apt�s	%	rqc
!Cs�i}d|d<tjjdd�}tjj|�r
y�t|��w}xm|D]e}yJ|jdd�\}}|j�}|j�}|dkr�||d<WqPt	k
r�YqPXqPWWdQRXWnIt
k
r}z)td|d	t|�d
t
j�WYdd}~XnXt|d�tj�d}|d-krHd||d<n@|dkred||d<n#|d.kr~||d<n
d|d<d||d<tjjdd�}tjj|�r�y,t|��}	|	j�j�}
WdQRXWnOt
k
r:}z/td|d	t|�d
t
j�d}
WYdd}~XnX|
dd�j�s|t|
d�}|jd|
d|i�nP|
jd�r�|
jd�j�dkr�|
jd�ad |d<n
|
|d<|jd�s�t�}|r�|jd!�}
|
d"krH|jd#�d$krH|jd%�d/krHd}
|jd(d)i�|
r`t|
d�}n-|jd(d)�}
|
dkr�t}nd*}|jd|
d|i�|jd�r�|dd+|7<|jd�r�|dd,|7<|S)0Nr�IDZLSB_ETC_DPKG_ORIGINS_DEFAULTz/etc/dpkg/origins/defaultz: rZvendorzUnable to open �:�filer�Linux�Hurd�NetBSDzGNU/ZOSZFreeBSDzGNU/k�	GNU/Linux�GNU/kFreeBSDZGNUz
%(ID)s %(OS)s�DESCRIPTIONZLSB_ETC_DEBIAN_VERSIONz/etc/debian_versionr,zn/a�RELEASE�CODENAMEz/sidrztesting/unstablerz1.0r!zDebian Portsr>�ftp.ports.debian.org�ftp.debian-ports.orgr:rrz %(RELEASE)sz (%(CODENAME)s))rurvrw)rxry)r}r~)rZr[r*�path�existsrrArrarIr�print�str�sysrWr#�uname�read�isalphar.�update�endswith�rstriprrq)
�distinfoZetc_dpkg_origins_defaultZdpkg_origins_filerd�headerZcontent�msgZkernZetc_debian_versionZdebian_versionr+�codenameZrinforrr�guess_debian_release�s|


7

$


	6	r�cCsGi}tjjdd�}tjj|�rCy�t|���}x�|D]�}|j�}|saqFd|krpqF|jdd�\}}|jd�rF|dd�}|jd�r�|j	d�r�|dd�}|rF|j�||<qFWWdQRXWnIt
k
rB}z)td|d	t|�d
t
j�WYdd}~XnX|S)NZLSB_ETC_LSB_RELEASEz/etc/lsb-releaser@rZDISTRIB_��"zUnable to open rsrt���)rZr[r*rr�rrarArbr�rr�r�r�rW)r�Zetc_lsb_releaseZlsb_release_filerd�var�argr�rrr�get_lsb_information=s*
7r�cCsHt�}x8dD],}||krt�}|j|�|SqW|SdS)Nrrr{r|rz)rrr{r|rz)r�r�r�)Zlsbinfor
r�rrr�get_distro_informationVs	
	
r�cCstt��tt��dS)N)r�r�r6rrrr�testas
r��__main__)rhri)Z
__future__rr�r]rZr&rMrr#r.r5�setrZsets�Setr6rCrGrKrRrfrqr�r�r�r��__name__rrrr�<module>s@5

^