File: //lib64/python3.9/venv/__pycache__/__init__.cpython-39.pyc
a
    �DOgC_  �                
   @   s�   d Z ddlZddlZddlZddlZddlZddlZddlZddlZdZ	e�
e�ZG dd� d�Z
ddd�Zdd	d
�Zedkr�dZze�  dZW n6 ey� Z zed
e ejd� W Y dZ[n
dZ[0 0 e�e� dS )z�
Virtual environment (venv) package for Python. Based on PEP 405.
Copyright (C) 2011-2014 Vinay Sajip.
Licensed to the PSF under a contributor agreement.
�    N)�pipZ
setuptoolsc                   @   s�   e Zd ZdZd dd�Zdd� Zdd	� Zd
d� Zdd
� Ze	j
dkrLd!dd�Zn
d"dd�Zdd� Zdd� Z
dd� Zdd� Zdd� Zdd� Zdd� ZdS )#�
EnvBuildera�  
    This class exists to allow virtual environment creation to be
    customized. The constructor parameters determine the builder's
    behaviour when called upon to create a virtual environment.
    By default, the builder makes the system (global) site-packages dir
    *un*available to the created environment.
    If invoked using the Python -m option, the default is to use copying
    on Windows platforms but symlinks elsewhere. If instantiated some
    other way, the default is to *not* use symlinks.
    :param system_site_packages: If True, the system (global) site-packages
                                 dir is available to created environments.
    :param clear: If True, delete the contents of the environment directory if
                  it already exists, before environment creation.
    :param symlinks: If True, attempt to symlink rather than copy files into
                     virtual environment.
    :param upgrade: If True, upgrade an existing virtual environment.
    :param with_pip: If True, ensure pip is installed in the virtual
                     environment
    :param prompt: Alternative terminal prefix for the environment.
    :param upgrade_deps: Update the base venv modules to the latest on PyPI
    FNc                 C   sF   || _ || _|| _|| _|| _|dkr6tj�t�� �}|| _	|| _
d S )N�.)�system_site_packages�clear�symlinks�upgrade�with_pip�os�path�basename�getcwd�prompt�upgrade_deps)�selfr   r   r   r   r	   r   r   � r   �%/usr/lib64/python3.9/venv/__init__.py�__init__/   s    zEnvBuilder.__init__c                 C   s�   t j�|�}| �|�}| j}d| _| �|� | �|� | jrF| �|� | j	s`| �
|� | �|� |rtd| _| �|� | jr�| �
|� dS )z�
        Create a virtual environment in a directory.
        :param env_dir: The target directory to create an environment in.
        FTN)r
   r   �abspath�ensure_directoriesr   �create_configuration�setup_pythonr	   �
_setup_pipr   �
setup_scripts�
post_setupr   �upgrade_dependencies)r   �env_dir�contextZtrue_system_site_packagesr   r   r   �create<