a
!cz2 @ s d dl mZ d dl mZ d dlmZ d dlmZmZmZm Z d dl
mZ d dlZ
d dlZ
d dlZ
d dlZd dlZd dlZd dlZedZdd Zd
d Zdd
Zdd ZG dd dejZdS ) )absolute_import)unicode_literals)commands)_ucdfill_exact_widthexact_width)OptionParserNdnfc C sd |rt j| j ntd}| jdkr4td| S | jsFtd| S t| j}td||f S d S )NunknownzNever (last: %s)zInstant (last: %s)z%s second(s) (last: %s))r
utilnormalize_time_repogetTimestampr Zmetadata_expire_num2ui_num)repomdlastnum r =/usr/lib/python3.9/site-packages/dnf/cli/commands/repolist.py_expire_str% s
r c C s t tjd| dS )Nz%dT)r r
Zpycompformat)r r r r r 0 s r c C sF | j }| j }|D ](}t||r. dS t||r dS qdS )NTF)idlowernamefnmatch)r patternsridZrnmpatr r r _repo_match4 s
r! c C s: d}| j tjdj|jdD ]}||j7 }qtjj |S )Nr flagsZreponame__eq)
queryhawkeyIGNORE_EXCLUDESfiltermr _sizer
clir Z
format_number)sackr retpkgr r r
_repo_size? s r. c @ s@ e Zd ZdZdZedZedd Zdd Z dd Z
d
d ZdS )
RepoListCommandzVA class containing methods needed by the cli to execute the
repolist command.
)Zrepolistrepoinfoz,display the configured software repositoriesc C sx | }|jddddd tdd |jddddtd d
|jddddtd
d
| jddddg dtjtdd d S )Nz--all
_repos_actionstore_constallzshow all repos)destactionconstdefaulthelpz --enabledenabledzshow enabled repos (default))r4 r5 r6 r8 z
--disableddisabledzshow disabled reposrepos*enabled-defaultZ
REPOSITORY)r3 r9 r: zRepository specification)nargsr7 metavarchoicesr5 r8 )add_mutually_exclusive_groupadd_argumentr r ZPkgNarrowCallback)parserZ repolimitr r r
set_argparserN s$ zRepoListCommand.set_argparserc C s | j js| jjtjtjd d S )N)stdoutstderr)optsquietr* Zredirect_loggerloggingZWARNINGINFO)selfr r r
pre_configure_ s zRepoListCommand.pre_configurec C sT | j js| j | jj}| jjjs0| j jdkr