<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
3
g/                 @   s<  d dl Zd dlZd dlZd dlZdd Zdd ZG dd dejjj	j
ZG dd	 d	ejjjjZG d
d dejjjjZG dd dejjjZG dd dejjjjZG dd dejjjjZG dd dejjjjZG dd dejjjjZdd Z e!dkr8ye ej"dd  W n  e#k
r6   ej$d Y nX dS )    Nc                s   t  fdd|S )Nc                s   t | j S )N)str
startswith)k)kw '/usr/lib/python3.6/completion_helper.py<lambda>   s    z#filter_list_by_kw.<locals>.<lambda>)filter)r   Zlstr   )r   r   filter_list_by_kw   s    r
   c             C   s   t dd | D S )Nc             S   s   g | ]}t |qS r   )r   ).0xr   r   r   
<listcomp>!   s    z%listpkg_to_setstr.<locals>.<listcomp>)set)pkgsr   r   r   listpkg_to_setstr    s    r   c                   s,   e Zd Z fddZdd Zdd Z  ZS )RemoveCompletionCommandc                s   t t| j| d S )N)superr   __init__)selfargs)	__class__r   r   r   $   s    z RemoveCompletionCommand.__init__c             C   s   d| j j_d| j j_d S )NFT)clidemands	root_usersack_activation)r   r   r   r   	configure'   s    
z!RemoveCompletionCommand.configurec             C   s,   x&t j| j| jjD ]}tt| qW d S )N)ListCompletionCommand	installedbaseopts	pkg_specsprintr   )r   pkgr   r   r   run+   s    zRemoveCompletionCommand.run)__name__
__module____qualname__r   r   r#   __classcell__r   r   )r   r   r   #   s   r   c                   s,   e Zd Z fddZdd Zdd Z  ZS )InstallCompletionCommandc                s   t t| j| d S )N)r   r(   r   )r   r   )r   r   r   r   1   s    z!InstallCompletionCommand.__init__c             C   s"   d| j j_d| j j_d| j j_d S )NFT)r   r   r   available_reposr   )r   r   r   r   r   4   s    

z"InstallCompletionCommand.configurec             C   sN   t tj| j| jj}t tj| j| jj}x|| D ]}tt| q6W d S )N)	r   r   r   r   r   r    	availabler!   r   )r   r   r*   r"   r   r   r   r#   9   s    

zInstallCompletionCommand.run)r$   r%   r&   r   r   r#   r'   r   r   )r   r   r(   0   s   r(   c                   s,   e Zd Z fddZdd Zdd Z  ZS )ReinstallCompletionCommandc                s   t t| j| d S )N)r   r+   r   )r   r   )r   r   r   r   C   s    z#ReinstallCompletionCommand.__init__c             C   s"   d| j j_d| j j_d| j j_d S )NFT)r   r   r   r)   r   )r   r   r   r   r   F   s    

z$ReinstallCompletionCommand.configurec             C   sN   t tj| j| jj}t tj| j| jj}x||@ D ]}tt| q6W d S )N)	r   r   r   r   r   r    r*   r!   r   )r   r   r*   r"   r   r   r   r#   K   s    

zReinstallCompletionCommand.run)r$   r%   r&   r   r   r#   r'   r   r   )r   r   r+   B   s   r+   c                   sH   e Zd Z fddZdd Zedd Zedd Zed	d
 Z  Z	S )r   c                s   t t| j| d S )N)r   r   r   )r   r   )r   r   r   r   T   s    zListCompletionCommand.__init__c             C   s   | j }| jj}| jj}t|dkrH|d |krHtdjt|d | n|dkr`| j| j	|}n||dkrx| j
| j	|}nd|dkr| j| j	|}nLt| j
| j	|}t| j| j	|}||B }|stdjt|d | d S x|D ]}tt| qW d S )N   
r   r*   updatesr   )Z
pkgnarrowsr   ZpackagesZpackages_actionlenr!   joinr
   r   r   r*   r.   r   r   )r   subcmdsr   actionr   r*   r   r"   r   r   r   r#   W   s&    
zListCompletionCommand.runc             C   s    | j j j jdj|d dS )Nz{}*r   )
name__glob)sackqueryr   filtermformat)r   argr   r   r   r   n   s    zListCompletionCommand.installedc             C   s    | j j j jdj|d dS )Nz{}*r   )r3   )r4   r5   r*   r6   r7   )r   r8   r   r   r   r*   r   s    zListCompletionCommand.availablec             C   s   | j dj|d gddS )Nz{}*r   F)Zprint_)Zcheck_updatesr7   )r   r8   r   r   r   r.   v   s    zListCompletionCommand.updates)
r$   r%   r&   r   r#   staticmethodr   r*   r.   r'   r   r   )r   r   r   S   s
   r   c                   s$   e Zd Z fddZdd Z  ZS )RepoListCompletionCommandc                s   t t| j| d S )N)r   r:   r   )r   r   )r   r   r   r   |   s    z"RepoListCompletionCommand.__init__c             C   s   | j }|jdkr>tdjt|jd dd | jjj D  nn|jdkrvtdjt|jd dd | jjj D  n6|jdkrtdjt|jd d	d | jjj D  d S )
Nenabledr-   r   c             S   s   g | ]
}|j qS r   )id)r   rr   r   r   r      s    z1RepoListCompletionCommand.run.<locals>.<listcomp>Zdisabledc             S   s   g | ]}|j s|jqS r   )r;   r<   )r   r=   r   r   r   r      s    allc             S   s   g | ]
}|j qS r   )r<   )r   r=   r   r   r   r      s    )	r   Zrepos_actionr!   r0   r
   Zreposr   Ziter_enabledr>   )r   r   r   r   r   r#      s    


zRepoListCompletionCommand.run)r$   r%   r&   r   r#   r'   r   r   )r   r   r:   {   s   r:   c                   s,   e Zd Z fddZdd Zdd Z  ZS )UpgradeCompletionCommandc                s   t t| j| d S )N)r   r?   r   )r   r   )r   r   r   r      s    z!UpgradeCompletionCommand.__init__c             C   s"   d| j j_d| j j_d| j j_d S )NFT)r   r   r   r)   r   )r   r   r   r   r      s    

z"UpgradeCompletionCommand.configurec             C   s,   x&t j| j| jjD ]}tt| qW d S )N)r   r.   r   r   r    r!   r   )r   r"   r   r   r   r#      s    zUpgradeCompletionCommand.run)r$   r%   r&   r   r   r#   r'   r   r   )r   r   r?      s   r?   c                   s,   e Zd Z fddZdd Zdd Z  ZS )DowngradeCompletionCommandc                s   t t| j| d S )N)r   r@   r   )r   r   )r   r   r   r      s    z#DowngradeCompletionCommand.__init__c             C   s"   d| j j_d| j j_d| j j_d S )NFT)r   r   r   r)   r   )r   r   r   r   r      s    

z$DowngradeCompletionCommand.configurec             C   s0   x*t j| j| jjj D ]}tt| qW d S )N)r   r*   r   r   r    Z
downgradesr!   r   )r   r"   r   r   r   r#      s    zDowngradeCompletionCommand.run)r$   r%   r&   r   r   r#   r'   r   r   )r   r   r@      s   r@   c                   s$   e Zd Z fddZdd Z  ZS )CleanCompletionCommandc                s   t t| j| d S )N)r   rA   r   )r   r   )r   r   r   r      s    zCleanCompletionCommand.__init__c             C   s0   t jjjjj }tdjt| j	j
d | d S )Nr-   r,   )dnfr   commandscleanZ_CACHE_TYPESkeysr!   r0   r
   r   type)r   r1   r   r   r   r#      s    zCleanCompletionCommand.run)r$   r%   r&   r   r#   r'   r   r   )r   r   rA      s   rA   c             C   s   t jjj }t jj|}| d dkrP|jg g | tdjt| d |j d S |jj	  |j
t |j
t |j
t |j
t |j
t |j
t |j
t |j
t |j|  y|j  W n& tt jjfk
r   tjd Y nX d S )Nr   Z_cmdsr-   r,   )rB   r   ZBaseCliZCliZinit_pluginsr!   r0   r
   Zcli_commandsclearZregister_commandr   r(   r+   r   r:   r?   r@   rA   r   r#   OSError
exceptionsErrorsysexit)r   r   r   r   r   r   main   s(    









rM   __main__r,   )%Zdnf.exceptionsrB   Zdnf.cliZdnf.cli.commands.cleanrK   r
   r   r   rC   removeZRemoveCommandr   ZinstallZInstallCommandr(   Z	reinstallZReinstallCommandr+   ZListCommandr   ZrepolistZRepoListCommandr:   ZupgradeZUpgradeCommandr?   Z	downgradeZDowngradeCommandr@   rD   ZCleanCommandrA   rM   r$   argvKeyboardInterruptrL   r   r   r   r   <module>   s&   (	
