File: //lib/python3/dist-packages/DistUpgrade/__pycache__/DistUpgradeMain.cpython-38.pyc
U
٪zce$ �
@ s� d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlZd dl m Z d dl
mZ d dlmZ ddddd d
ddd
dg
Z
ddlmZ dd� Zdd� Zdd� Zdd� Zdd� Zdd� ZdS )� N)�datetime)�OptionParser)�gettextz/binz/bootz/etcz/initrdz/libz/lib32z/lib64z/sbinz/usrz/var� )�DistUpgradeConfigc C s� t � } | jddddtd�d� | jddd d
d� | jdd
d d� | jdd
dd� | jdddtd�d� | jdddtd�d� | jddd
d td�d� | jdd d
td�d� | jdd d!td"�d� | jd#d d$d
td%�d&� | �� S )'z/ setup option parser and parse the commandline �-cz--cdromZ cdromPathNzAUse the given path to search for a cdrom with upgradable packages)�dest�default�helpz--have-prerequistsZhavePrerequists�
store_trueF)r �actionr z--with-networkZwithNetwork)r r z--without-networkZstore_falsez
--frontend�frontendz_Use frontend. Currently available:
DistUpgradeViewText, DistUpgradeViewGtk, DistUpgradeViewKDEz--mode�modeZdesktopz(*DEPRECATED* this option will be ignoredz --partial�partialz:Perform a partial upgrade only (no sources.list rewriting))r r r r
z--disable-gnu-screenzDisable GNU screen support)r r r
z --datadir�datadir�.zSet datadirz--devel-releaseZ
devel_releasez"Upgrade to the development release)r r r r
)r Z
add_option�_�
parse_args)�parser� r �=/usr/lib/python3/dist-packages/DistUpgrade/DistUpgradeMain.py�do_commandline6 sB � �
�
�
��
� �r c
C sJ |� ddd�}tj�|�s$t�|� t�|d �r�t�� }|d|j|j |j
|j|jf }tj�|�spt�|� t�|d �D ]"}t
�|tj�|tj�|��� q~tj�|d�}| jr�|d7 }t|d�� W 5 Q R X tjtj|d d
d� t�d|j � t�d
d�t�� � � tj�d�}|d jj}t�d| � t�dtj � |S )z setup the logging ZFilesZLogDirz/var/log/dist-upgrade/z/*.logz/%04i%02i%02i-%02i%02izmain.logz.partial�az%%(asctime)s %(levelname)s %(message)s�w)�level�filename�format�filemodezUsing config files '%s'zuname information: '%s'� N�aptzapt version: '%s'zpython version: '%s') ZgetWithDefault�os�path�exists�mkdir�globr �nowZyearZmonthZdayZhourZminute�shutilZmove�join�basenamer �open�loggingZbasicConfig�DEBUG�infoZconfig_files�unamer �apt_pkgZCacheZcurrent_verZver_str�sys�version) �options�config�logdirr% Z
backup_dir�f�fname�cacheZapt_versionr r r �
setup_loggingQ s6
�r7 c
C s� zddl m} W n tk
r0 t�d� Y d S X tj�| d�}t�d| � t� d�}|� }|j
d|ddd � t� |� zLtjd
dgtj
dd��� d
}ttj�| d�d��}|�|� W 5 Q R X W n0 tk
r� } zt�d| � W 5 d }~X Y nX d S )Nr )�AptClonezfailed to import AptClonezapt-clone_system_state.tar.gzzcreating statefile: '%s'�6 �/T)Z sourcedir�targetZwith_dpkg_statusZ
scrub_sourcesZlspciz-nn��stdoutZuniversal_newlinesr z lspci.txtr zlspci failed: %s)Z apt_cloner8 �ImportErrorr* �errorr r! r'