3
Õì2aÛH ã @ sº d dl Z d dlZd dlZd dlZd dlZd dlZe jeƒZG dd„ dƒZ d
dd„Z
ddd„Zed kr¶d
Zyeƒ d ZW n4 e
k
rª Z zede ejd� W Y ddZ[X nX ejeƒ dS )é Nc @ s‚ e Zd Zddd„Zdd„ Zdd„ Zd d
„ Zdd„ Zej d
krDdd„ Z
ddd„Zdd„ Zdd„ Z
dd„ Zdd„ Zdd„ Zdd„ ZdS ) Ú
EnvBuilderFNc C s( || _ || _|| _|| _|| _|| _d S )N)Úsystem_site_packagesÚclearÚsymlinksÚupgradeÚwith_pipÚprompt)Úselfr r r r r r © r
ú-/opt/alt/python36/lib64/python3.6/__init__.pyÚ__init__* s zEnvBuilder.__init__c C sx t jj|ƒ}| j|ƒ}| j}d| _| j|ƒ | j|ƒ | jrF| j|ƒ | j s`| j
|ƒ | j|ƒ |rtd| _| j|ƒ d S )NFT)ÚosÚpathÚabspathÚensure_directoriesr Úcreate_configurationÚsetup_pythonr Ú
_setup_pipr Ú
setup_scriptsÚ
post_setup)r Úenv_dirÚcontextZtrue_system_site_packagesr
r
r Úcreate3 s
zEnvBuilder.createc C s` xZt j|ƒD ]L}t jj||ƒ}t jj|ƒs6t jj|ƒrBt j|ƒ qt jj|ƒrtj |ƒ qW d S )N)
r
Úlistdirr ÚjoinÚislinkÚisfileÚremoveÚisdirÚshutilZrmtree)r r Úfnr
r
r Úclear_directoryM s zEnvBuilder.clear_directoryc C s² dd„ }t jj|ƒr$| jr$| j|ƒ tjƒ }||_t jj|ƒd |_ | j
d k rT| j
n|j }d| |_
||ƒ t j}tj
dkr�d|kr�t jd }ntj}t jjt jj|ƒƒ\}}||_||_||_tj
dkräd} d }
t jj|d
dƒ}n(d} d
}
t jj|ddtjd d… dƒ}t jj||
ƒ |_}||ƒ ||ƒ tjdk�r|t jdk�r|tj
dk�r|t jj|dƒ}
t jj|
ƒ�s|t jd|
ƒ t jj|| ƒ |_}| |_t jj||ƒ|_||ƒ |S )Nc S s@ t jj| ƒst j| ƒ n$t jj| ƒs0t jj| ƒr