a c8h @slddlZddlZddlZejdddZeeds8eje_ejZddZdd Z d d Z dd d Z ddZ dS)Nzrhn-client-toolsT)fallbackugettextcCsBt}g}|D](}||d}|dks.|js||qg|fS)Nr)aptCacheZ is_installedappend)ZpackagescacheZmissing_packagespackagepkgr ;/usr/lib/python3.9/site-packages/up2date_client/debUtils.pyverifyPackagess  r cCs`d}d}|ddkr$|d\}}|ddkrV|d}d|dd}|d}|||fS)NX:-)findsplitjoin)versionepochreleasetmpr r r parseVREs rcCstd}d|d||fg}d|vr<|d|d|d|D].}tj||}tj|r@tj|Sq@dS)Nz/var/lib/dpkg/infoz%s.listz %s:%s.listrr)rindexospathrisfilegetmtime)pkg_nameZpkg_archdirfilesfrr r r installTime(s  r#c Cs|dkr|tdt}d}|D]}|jdkr$|d7}q$d}g}|D]n}|jdkrXqHt|jj\} } } |j| | | |jjdt|j|jjd} | | |dkr||||d}qH|j ddd |S) z} Return list of packages. Package is dict with following keys: name, epoch, version, release and optionaly arch. Nz0Getting list of packages installed on the systemrz-deb)namerrrZarchZ installtimecSs|dS)Nrr )rr r r Zz)getInstalledPackageList..)key) _rrZ installedrrr%Z architecturer#rsort) Z msgCallbackZprogressCallbackZgetArchZgetInfortotalr countZpkg_listrrrrr r r getInstalledPackageList8s4        r-cCsdS)Nr r r r r setDebugVerbosity]sr.)NNNN) rrgettext translationthasattrrr)r rr#r-r.r r r r s    %