File: //lib/python3/dist-packages/UpdateManager/Core/__pycache__/MyCache.cpython-38.pyc
U
ρ�f�I � @ sb d dl mZmZ d dlZe�dde� d dlZd dlZd dlZd dl Z z(d dl
mZ d dlm
Z
d dlmZ W n0 ek
r� d dlmZm
Z
d dlmZ Y nX zd d lmZ W n ek
r� d d lmZ Y nX d dlZd dlZd dlZd dlZd d
lmZ zd dlmZ W n ek
�r( dZY nX dZd
Z e d Z!G dd� de"�Z#G dd� dej$j%�Z%dS )� )�absolute_import�print_functionN�ignorezapt API not stable yet)� HTTPError)�urlopen)�urlsplit)r r )�
BadStatusLine)�gettext)� Launchpadz/var/lib/synaptic/preferencesz.https://changelogs.ubuntu.com/changelogs/pool/z%s/%s/%s/%s_%s/%sc @ s e Zd ZdZdS )�HttpsChangelogsUnsupportedErrorz� https changelogs with credentials are unsupported because of the
lack of certitifcation validation in urllib2 which allows MITM
attacks to steal the credentials
N)�__name__�
__module__�__qualname__�__doc__� r r �</usr/lib/python3/dist-packages/UpdateManager/Core/MyCache.pyr 9 s r c @ s� e Zd ZdZd.dd�Zdd� Zdd� Zd d
� Zedd� �Z ed
d� �Z
dd� Zedd� �Zdd� Z
dd� Zdd� Zdd� Zd/dd�Zdd� Zd d!� Zd"d#� Zd$d%� Zd&d'� Zd(d)� Zd*d+� Zd,d-� ZdS )0�MyCacheZUbuntuNc s t j�| ||� || _t| j�dks(t�| �� r4t�| �� i | _ i | _
i | _| jj
dkrb| �� | jj
dkrz| jjdks~t�d | _tj�d�}|r�t�dd�dd� |D �� d �| _tjdd gd
d��� � t�dd�� fdd�|D �� d �| _nd | _d | _d S )
Nr zAPT::VersionedKernelPackages�(�|c S s g | ]}d | �qS )�^r ��.0�pr r r �
<listcomp>` s z$MyCache.__init__.<locals>.<listcomp>�)�unamez-rT)Zuniversal_newlinesc s. g | ]&}|� d �s"d| d � n� | �qS )z.*r )�
startswithr �Zrunning_kernel_versionr r r d s ��)�aptZCache�__init__�rootdir�lenZreq_reinstall_pkgs�AssertionError�_dpkgJournalDirty�
_initDepCache�all_changes�all_news�pro_versions� _depcache�broken_count�saveDistUpgrade� del_count� launchpad�apt_pkg�configZ
value_list�re�compile�joinZversioned_kernel_pkgs_regexp�
subprocessZcheck_output�rstripZrunning_kernel_pkgs_regexp)�selfZprogressr Zapt_versioned_kernel_pkgsr r r r E sH
��
�� �
���
zMyCache.__init__c C s>