????

Your IP : 3.14.251.36


Current Path : /lib/python3.6/site-packages/up2date_client/__pycache__/
Upload File :
Current File : //lib/python3.6/site-packages/up2date_client/__pycache__/rpmUtils.cpython-36.pyc

3

@4�f��@s|ddlZddlZddlmZddlmZddlZejddd�Ze	ed�sPeje_
ej
Zdd	�Zd
d�Z
ddd
�Zdd�ZdS)�N)�sstr)�transactionzrhn-client-toolsT)Zfallback�ugettextcKsVtj�}|j�}x$|j�D]}|j|tj||�qWg}x|D]}|j|�q@W|S)z@ just cause this is such a potentially useful looking method... )r�initReadOnlyTransaction�dbMatch�keys�pattern�rpmZRPMMIRE_GLOB�append)�kwargs�_tsZmi�keywordZ
headerList�h�r�/usr/lib/python3.6/rpmUtils.py�installedHeaderByKeywords
rcCs~i}g}g}�xf|D�]\}|d|d|d|dd�}x.|j�D]"}||dks^||dkrB||=qBWtf|�}t|�dkr�|j|�x�|D]�}|d}	|	dkr�d}	|d	}
|
dkr�d}
|d
|d|d|	|
f}|d	dkr�d
|d|d|df}n d|d|d|d|df}d|}
tj|
�}|j�}|j�g}x|D]}|j|j���qHW|j||g�q�WqW||fS)zf given a list of package labels, run rpm -V on them
        and return a dict keyed off that data
    r���)�name�version�release�archN��epochrrrrz%s-%s-%sz%s-%s-%s.%sz/usr/bin/rpmverify -V %s)	rr�lenr
�os�popen�	readlines�close�strip)Zpackages�dataZmissing_packagesZretlist�package�keywords�keyZheaders�headerrrZpkgZpackageLabelZverifystring�fd�resZreslist�linerrr�verifyPackages*sH



 

r)c
Cs~g}|dkr|td��tj�}d}d}x"|j�D]}|dkr@P|d}q2W|}d}�x|j�D�]}|dkrpPt|d�|dt|d�t|d�|d	d
�}	|	ddkr�d|	d<nd|	d|	d<|r�|d
|	d
<|	d
r�t|	d
�|	d
<|j|	�nP|�r@|d
�rt|d
�|	d
<|d�r4t|d�|	d<|j|	�n
|j|	�|dk�r^|||�|d}q`W|jdd�d�|S)z| Return list of packages. Package is hash with keys name, epoch,
        version, release and optionaly arch and cookie
    Nz0Getting list of packages installed on the systemrrrrrr�installtime)rrrrr*rz%srZcookiecSs|d|d|d|dfS)Nrrrrr)�xrrr�<lambda>�sz)getInstalledPackageList.<locals>.<lambda>)r$)�_rrrrr
�sort)
ZmsgCallbackZprogressCallbackZgetArchZgetInfoZpkg_listr�countZtotalrr"rrr�getInstalledPackageListlsP








r0cCs2ytjtj�Wntk
r,td�YnXdS)zSet rpm's verbosity mode
    z4extra verbosity not supported in this version of rpmN)r	ZsetVerbosityZRPMLOG_DEBUG�AttributeError�printrrrr�setDebugVerbosity�sr3)NNNN)rr	Zrhn.i18nrZup2date_clientr�gettextZtranslation�t�hasattrrr-rr)r0r3rrrr�<module>s

B
9