File: //usr/share/apt-listchanges/__pycache__/ALCApt.cpython-39.pyc
a
Dc``� � @ sP d dl Z d dlZd dlmZ dd� Zdd� ZG dd� de�ZG d d
� d
e�Z dS )� N)�_c C s | � � dv S )N)�1Zyes�true�withZon�enable)�lower��value� r
�$/usr/share/apt-listchanges/ALCApt.py�_parse_apt_bool s r c C s$ z
t | �W S ty Y dS 0 d S )Nr )�int� Exceptionr r
r
r �_parse_apt_int$ s
r c @ s e Zd ZdS )�AptPipelineErrorN)�__name__�
__module__�__qualname__r
r
r
r r , s r c sD e Zd Z� fdd�Zdd� Zdd� Zdd� Zd d
� Zdd� Z� Z S )
�AptPipelinec s t � �� || _d S )N)�super�__init__�_config)�selfZconfig�� __class__r
r r 0 s
zAptPipeline.__init__c C s� | j jrt�td�� | �� �.}| �|� | �|� | �|�}W d � n1 sR0 Y | j jr�t�td�� |D ]}t�d| � qvt�d� |S )NzAPT pipeline messages:zPackages list:� %s� )r �debug�ALCLogr �_open_apt_fd�
_read_version�
_read_options�_read_packages)r �fdZdebs�dr
r
r �read4 s
(
zAptPipeline.readc
C s� dt jvrttd���ztt jd �}W n2 tyZ } zttd��|�W Y d }~n
d }~0 0 | jjrvt�td�| � |dkr�t� td�� n|dk r�ttd���zt �
|d �W S ty� } z(ttd
�|t|�d� �|�W Y d }~n
d }~0 0 d S )NZAPT_HOOK_INFO_FDz{APT_HOOK_INFO_FD environment variable is not defined
(is Dpkg::Tools::Options::/usr/bin/apt-listchanges::InfoFD set to 20?)zDInvalid (non-numeric) value of APT_HOOK_INFO_FD environment variablez7Will read apt pipeline messages from file descriptor %dr z�Incorrect value (0) of APT_HOOK_INFO_FD environment variable.
If the warning persists after restart of the package manager (e.g. aptitude),
please check if the /etc/apt/apt.conf.d/20listchanges file was properly updated.� z�APT_HOOK_INFO_FD environment variable is incorrectly defined
(Dpkg::Tools::Options::/usr/bin/apt-listchanges::InfoFD should be greater than 2).Zrtz3Cannot read from file descriptor %(fd)d: %(errmsg)s)r# �errmsg)�os�environr r r
r r r r Zwarning�fdopen�str)r Zapt_hook_info_fd_val�exr
r
r r D s,
���zAptPipeline._open_apt_fdc C s: |� � �� }|dkr ttd���| jjr6t�d| � d S )Nz VERSION 2zqWrong or missing VERSION from apt pipeline
(is Dpkg::Tools::Options::/usr/bin/apt-listchanges::Version set to 2?)r )�readline�rstripr r r r r )r r# �versionr
r
r r ` s
zAptPipeline._read_versionc C s� |� � �� }| jjr"t�d| � |s*d S | jjsl|�d�rlt|td�d � �rld| j_ t
d| jj�| j_q |�d�r t
t|td�d � �| jj�| j_q d S )Nr zAPT::Get::Assume-Yes=F� zquiet=)
r- r. r r r Zignore_apt_assume�
startswithr �lenZconfirm�max�quietr )r r# �liner
r
r r! h s ��
zAptPipeline._read_optionsc C s i }g }g }d}|� � D ]�}|�� }| jjr:t�d| � |sB q�|�d d�\}}} }
}| dkrbq|dksr|dkr~|�|� q|dkr�d}|d kr�|�|� q|||<