File: //lib/python3/dist-packages/UpdateManager/Core/__pycache__/MyCache.cpython-310.pyc
o
z��c�G � @ sZ d dl mZmZ d dlZe�dde� d dlZd dlZd dlZd dl Z zd dl
mZ d dlm
Z
d dlmZ W n eyN d dlmZm
Z
d dlmZ Y nw zd d lmZ W n eyf d d lmZ Y nw d dlZd dlZd dlZd dlZd d
lmZ zd dlmZ W n ey� dZY nw 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� Z d-dd�Zdd� Zd d!� Zd"d#� Zd$d%� Zd&d'� Zd(d)� Zd*d+� ZdS ).�MyCache�UbuntuNc s t j�| ||� || _t| j�dksJ �| �� rJ �| �� i | _i | _ | j
jdkr.| �� | j
jdkr:| j
j
dks<J �d | _tj�d�}|rzt�dd�dd� |D �� d �| _tjdd gd
d��� � t�dd�� fdd�|D �� d �| _d S d | _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)�universal_newlinesc s. g | ]}|� d �sd| d � n� | �qS )z.*r )�
startswithr ��running_kernel_versionr r r c s ���)�apt�Cache�__init__�rootdir�len�req_reinstall_pkgs�_dpkgJournalDirty�
_initDepCache�all_changes�all_news� _depcache�broken_count�saveDistUpgrade� del_count� launchpad�apt_pkg�config�
value_list�re�compile�join�versioned_kernel_pkgs_regexp�
subprocess�check_output�rstrip�running_kernel_pkgs_regexp)�self�progressr$ �apt_versioned_kernel_pkgsr r r r# E sF �
����
���
zMyCache.__init__c C s>