3 g @slddlZddlZddlZejdddZeeds8eje_ejZddZdd Z d d Z dd d Z ddZ dS)Nzrhn-client-toolsT)ZfallbackugettextcCsHtj}g}x2|D]*}||d}|dks2|j r|j|qWg|fS)Nr)aptCacheZ is_installedappend)ZpackagescacheZmissing_packagespackagepkgr /usr/lib/python3.6/debUtils.pyverifyPackagess  r cCs`d}d}|jddkr$|jd\}}|jddkrV|jd}dj|dd}|d }|||fS) NX:-rrr)findsplitjoin)versionepochreleaseZtmpr r r parseVREs rcCstd}d|d||fg}d|kr<|jd|d|jdx2|D]*}tjj||}tjj|rBtjj|SqBWdS)Nz/var/lib/dpkg/infoz%s.listz %s:%s.listrr)rindexospathrisfilegetmtime)Zpkg_nameZpkg_archdirfilesfrr r r installTime(s  r!c Cs|dkr|tdtj}d}x|D]}|jdkr&|d7}q&Wd}g}xv|D]n}|jdkr^qNt|jj\} } } |j| | | |jjdt|j|jjd} |j | |dkr||||d}qNW|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 systemrrz-deb)namerrrZarchZ installtimecSs|dS)Nrr )rr r r Zsz)getInstalledPackageList..)key) _rrZ installedrrr"Z architecturer!rsort) Z msgCallbackZprogressCallbackZgetArchZgetInforZtotalrcountZpkg_listrrrrr r r getInstalledPackageList8s2          r(cCsdS)Nr r r r r setDebugVerbosity]sr))NNNN) rrgettextZ translationthasattrrr%r rr!r(r)r r r r s    $