JFIF$        dd7 

Viewing File: /usr/lib/python3.9/site-packages/dnf/cli/commands/__pycache__/shell.cpython-39.opt-1.pyc

a

�!cl&�@s�ddlmZddlmZmZddlZddlZddlZddlZddl	Z	ddl
Z
ddlZe	�d�Z
Gdd�de�ZGdd�dejej�ZdS)	�)�commands)�_�ucdN�dnfc@seZdZdZdZdZdZdS)�ShellDemandSheetTN)�__name__�
__module__�__qualname__Zavailable_reposZ	resolvingZ	root_userZsack_activation�r
r
�:/usr/lib/python3.9/site-packages/dnf/cli/commands/shell.pyr%src@s�eZdZdZed�jejjd�Z	ddddddddd	d
d�
Z
dd
�Zedd��Z
dd�Zdd�Zdd�Zdd�Zd)dd�Zd*dd�Zd+dd�Zd,dd �Zd!d"�Zd-d#d$�Zd.d%d&�Zd/d'd(�ZdS)0�ShellCommand)�shell�shzrun an interactive {prog} shell��prog�repo�quitZts_run�transaction�config�resolve�help)
r�
repository�exitr�run�tsrr�
resolvedeprcCs$tj�||�tj�|�d|_dS)Nz> )r�Command�__init__�cmd�Cmd�prompt)�self�clir
r
rr=szShellCommand.__init__cCs*|jddtd�td�jtjjd�d�dS)N�script�?ZSCRIPTzScript to run in {prog} shellr)�nargs�metavarr)�add_argumentr�formatr�util�MAIN_PROG_UPPER)�parserr
r
r�
set_argparserBs
��zShellCommand.set_argparserc
Csl|jj}t�|j_t|�D]L}|�d�r*qzt|jj|�Wqtydt|jj|t||��Yq0qdS)N�__)r"�demandsr�dir�
startswith�getattr�AttributeError�setattr)r!Zdefault_demands�attrr
r
r�	configureHs

zShellCommand.configurecCs$|jjr|�|jj�n|��dS�N)�optsr#�_run_scriptZcmdloop�r!r
r
rrUszShellCommand.runcCs |j��d|j_|j��dSr6)�baseZ_finalize_base�_transaction�	fill_sackr9r
r
r�_clean[s
zShellCommand._cleanc
Csh|r|dkrdS|dkrd}zt�|�}Wn|��YdS0|jjjdd�|jj�|�}|jdkrndS|j|jvr�t	|d|j|j�|dd��n�|jj
�|j�}|du�r\||j�}z|jj�||�}Wnt
y�YdS0z&t�|jj�|j_|��|��WnFtjj�yX}z(t�td	�d
t|��WYd}~dSd}~00n|��dS)N�
ZEOFrF)Zreset_usager
r��Error:� )�shlex�split�_helpr"�	optparserrZparse_main_argsZcommand�MAPPINGr1Zcli_commands�getZparse_command_args�
SystemExit�copy�deepcopyr.r5rr�
exceptions�Error�logger�errorrr)r!�lineZs_liner7Zcmd_clsr�er
r
r�onecmd`s<
$

zShellCommand.onecmdNc	Cs�dd�}|rt|�dkr&|�d�dS|d}t|�dkrB|dnd}|�d�}|dkr�|d|�}||dd�}|jj�|�}|D]}||||�q�|s�t�td	�|�n||||jj	�dS)
NcSsP|rt|||�n:ztd�|t|t|����Wnt�td��Yn0dS)Nz{}: {}zUnsupported key value.)r3�printr(r1�strrM�warningr)�key�val�confr
r
r�print_or_set�sz*ShellCommand._config.<locals>.print_or_set�rrr?�.���zCould not find repository: %s)
�lenrD�findr:�repos�get_matchingrMrTrrW)	r!�argsrXrUrVZperiodZ	repo_namer^rr
r
r�_config�s$	


�zShellCommand._configcCs�t|t�rt|�dkr|dn|}d}|r�|dkrBtd��|�}n�|dkrZtd��|�}nv|dvrrtd��|�}n^|d	kr�td
��|�}nF|dvr�td��|�}n.|d
kr�td��|�}n|dvr�td��|�}|s�|jj��td�}td|�dS)z�Output help information.

        :param args: the command to output help information about. If
           *args* is an empty, general help will be output.
        rNrz�{} arg [value]
  arg: debuglevel, errorlevel, obsoletes, gpgcheck, assumeyes, exclude,
        repo_id.gpgcheck, repo_id.exclude
    If no value is given it prints the current value.
    If value is given it sets that value.rz{} [command]
    print help)rrz�{} arg [option]
  list: lists repositories and their status. option = [all | id | glob]
  enable: enable repositories. option = repository id
  disable: disable repositories. option = repository idrz"{}
    resolve the transaction set)rrzy{} arg
  list: lists the contents of the transaction
  reset: reset (zero-out) the transaction
  run: run the transactionrz{}
    run the transaction)rrz{}
    exit the shella�Shell specific arguments:

config                   set config options
help                     print help
repository (or repo)     enable, disable or list repositories
resolvedep               resolve the transaction set
transaction (or ts)      list, reset or run the transaction set
run                      resolve and run the transaction set
exit (or quit)           exit the shellr>)	�
isinstance�listr\rr(r"rE�
print_helprR)r!r`�arg�msgr
r
rrD�sF"�������
zShellCommand._helpcCs�|r|dnd}|dvr6|�dd�|dd���n�|dvr�|jjj}d}|dd�D]L}|�|�}|r|t||��d}qXt�t	d	�dt	d
�|jj
j�|��qX|r�|j�
�d|j_n
|�d�dS)Nr�rcNz	repolist rAr?)�enable�disableFTr@zUnknown repo: '%s'r)rQ�joinr"r:r^r_r1rMZcriticalr�output�term�boldr<Z_compsrD)r!r`rr^r<r�rr
r
r�_repo�s$

�

zShellCommand._repoc
CsNz|jj�|jjj�Wn0tjjyH}zt|�WYd}~n
d}~00dSr6)	r"r:rr.Z
allow_erasingrrKZ
DepsolveErrorrR)r!r`rPr
r
r�_resolve�szShellCommand._resolvec	Cs�zTt|d��6}|��}|D]}|�d�s|�|�qWd�n1sH0YWn8ty�t�td�|jj	j
�|��t�
d�Yn0dS)Nrn�#z!Error: Cannot open %s for readingr?)�open�	readlinesr0rQ�IOErrorrM�inforr:rkrlrm�sysr)r!�file�fd�linesrOr
r
rr8�s
.zShellCommand._run_scriptc
Cs�|r|dnd}|dkr$|��dS|��|dvrZ|jjr�|jj�|jj�}t�|�n||dkr�z|j��WnBt	j
jy�}z&t�t
d�dt|��WYd}~nd}~00t�t
d��|��n
|�d�dS)	Nr�resetrgrr@rAz	Complete!r)r=rpr:r;rkZlist_transactionrMruZdo_transactionrrKrLrNrrrD)r!r`r�outrPr
r
rr;	s"0
zShellCommand._transactioncCs|�dg�dS)Nr)r;�r!r`r
r
r�_ts_run"szShellCommand._ts_runcCst�td��t�d�dS)Nz
Leaving Shellr)rMrurrvrr|r
r
r�_quit%szShellCommand._quit)N)N)N)N)N)N)N)rrr	�aliasesrr(rr)r*ZsummaryrFr�staticmethodr,r5rr=rQrarDrorpr8r;r}r~r
r
r
rr,s8�

&

;



r)Zdnf.clirZdnf.i18nrrZdnf.utilrrrIZloggingrBrvZ	getLoggerrM�objectrrrrr
r
r
r�<module>s

Back to Directory  nL+D550H?Mx ,D"v]qv;6*Zqn)ZP0!1 A "#a$2Qr D8 a Ri[f\mIykIw0cuFcRı?lO7к_f˓[C$殷WF<_W ԣsKcëIzyQy/_LKℂ;C",pFA:/]=H  ~,ls/9ć:[=/#f;)x{ٛEQ )~ =𘙲r*2~ a _V=' kumFD}KYYC)({ *g&f`툪ry`=^cJ.I](*`wq1dđ#̩͑0;H]u搂@:~וKL Nsh}OIR*8:2 !lDJVo(3=M(zȰ+i*NAr6KnSl)!JJӁ* %݉?|D}d5:eP0R;{$X'xF@.ÊB {,WJuQɲRI;9QE琯62fT.DUJ;*cP A\ILNj!J۱+O\͔]ޒS߼Jȧc%ANolՎprULZԛerE2=XDXgVQeӓk yP7U*omQIs,K`)6\G3t?pgjrmۛجwluGtfh9uyP0D;Uڽ"OXlif$)&|ML0Zrm1[HXPlPR0'G=i2N+0e2]]9VTPO׮7h(F*癈'=QVZDF,d߬~TX G[`le69CR(!S2!P <0x<!1AQ "Raq02Br#SCTb ?Ζ"]mH5WR7k.ۛ!}Q~+yԏz|@T20S~Kek *zFf^2X*(@8r?CIuI|֓>^ExLgNUY+{.RѪ τV׸YTD I62'8Y27'\TP.6d&˦@Vqi|8-OΕ]ʔ U=TL8=;6c| !qfF3aů&~$l}'NWUs$Uk^SV:U# 6w++s&r+nڐ{@29 gL u"TÙM=6(^"7r}=6YݾlCuhquympǦ GjhsǜNlɻ}o7#S6aw4!OSrD57%|?x>L |/nD6?/8w#[)L7+6〼T ATg!%5MmZ/c-{1_Je"|^$'O&ޱմTrb$w)R$& N1EtdU3Uȉ1pM"N*(DNyd96.(jQ)X 5cQɎMyW?Q*!R>6=7)Xj5`J]e8%t!+'!1Q5 !1 AQaqё#2"0BRb?Gt^## .llQT $v,,m㵜5ubV =sY+@d{N! dnO<.-B;_wJt6;QJd.Qc%p{ 1,sNDdFHI0ГoXшe黅XۢF:)[FGXƹ/w_cMeD,ʡcc.WDtA$j@:) -# u c1<@ۗ9F)KJ-hpP]_x[qBlbpʖw q"LFGdƶ*s+ډ_Zc"?%t[IP 6J]#=ɺVvvCGsGh1 >)6|ey?Lӣm,4GWUi`]uJVoVDG< SB6ϏQ@ TiUlyOU0kfV~~}SZ@*WUUi##; s/[=!7}"WN]'(L! ~y5g9T̅JkbM' +s:S +B)v@Mj e Cf jE 0Y\QnzG1д~Wo{T9?`Rmyhsy3!HAD]mc1~2LSu7xT;j$`}4->L#vzŏILS ֭T{rjGKC;bpU=-`BsK.SFw4Mq]ZdHS0)tLg