
    ,jZ                     b    d dl Z d dlZd dlZd dlZd dlZd Zd Zd Zd Zd Z	g fdZ
d Zd	 ZdS )
    Nc                 v   | t           j        v rOt          j                            t           j        t           j                            |           dz                      S t          j                            |          r<t          j                            t          j                            |                    S d S )N   )sysargvospathabspathindexenvironget)argenv_var_names     I/DATA/AppData/hermes/venv/lib/python3.11/site-packages/trame/env/utils.pyfind_env_settingr      s     chwsxs(;(;a(?@AAA	z~~l## =wrz~~l;;<<<= =    c                     t          | |          }|dS t          t          j                  }t	          j        |           t          j        |d          t          j        d|         z   t          j        d d <   dS )NFr   T)find_python_pathlenr   r   site
addsitedir)root_dirsearch_paths_dictpython_lib_pathprev_lengths       r   prepend_python_pathr      sm     'x1BCCOu
 ch--KOO$$$(;<<(38AkM+BBCHQQQK4r   c                 j   g }t           j                            | d          }t          j                    dk    rdnd}t          |          r|                    |           |D ]}||vr|                    |           t          |          r$|                    |          t           j        | <   d S d S )N Windows;:)r   r   r   platformsystemr   appendjoin)var_namepathsresult_pathscurrent_var_valuesys_path_sepa
path_entrys         r   append_path_to_environr+   +   s    L
x44#?,,	99CCsM
 /-... , ,
...
+++
< @,11,??
8@ @r   c                     g }|D ]V}t           j                            | |          }t           j                            |          r|                    |           W|S N)r   r   r$   existsr#   )r   paths_to_tryfound_pathsr   	full_paths        r   filter_existing_pathsr2   ;   s\    K * *GLL400	7>>)$$ 	*y)))r   c                    t           j                            |           st          d|  d           d S t	          j                    |vr#t          dt	          j                                |t	          j                                         }t          | |          }t          |          dk    r-d	                    |          }t          d|  d| d           d S |d         S )	NzWarning: path 'z' does not existzUnhandled system: r   
z4Warning: python library path could not be found in 'z
'. Tried:
r   )
r   r   r.   printr!   r"   	Exceptionr2   r   r$   )r   r   r/   r0   	paths_strs        r   r   r   F   s    7>>(## ::::;;;t 111@X_->->@@AAA7$X_%6%6799L',??K
;1IIl++	33 3%.3 3 3	
 	
 	
 tq>r   c                     |                                 D ]%\  }}t          | |          }t          ||           &t          |  t	          t          |                                            d S r-   )itemsr2   r+   clear_environ_variablesrerun_with_new_environlistkeys)	base_pathadd_path_varsremove_varsnamer&   resolved_pathss         r   rerunrC   ^   ss    $**,, 5 5e.y%@@t^4444[))D!3!3!5!5667777r   c            	         t           j                            d          dk    st           j                                        }d|d<   t	          |           rZt          d           t          d           | D ]*}t          d| d|                    |                      +t          d           t          j        gt          j        z   }t          j
        |t          j        t          j        |           t          j                     d S d S )N__IN_TRAME_RERUNYESzP--------------------------------------------------------------------------------z1Re-excuting with following environment variables:z - =)stdoutstderrenv)r   r   r   copyr   r5   r   
executabler   
subprocessrunrH   rI   exit)var_to_printrJ   rA   cmds       r   r;   r;   g   s    :>>,--66joo"' | 	(OOOEFFF$ 4 42D223774==223333(OOO ~)s3:cjcJJJJ




 76r   c                  j    | D ]/}|t           j        v rt           j                            |           0d S r-   )r   r   pop)namesvars     r   r:   r:   z   s=        "*JNN3   r   )r   r!   r   r   rM   r   r   r+   r2   r   rC   r;   r:    r   r   <module>rW      s    				   



    = = =  2@ @ @     0 13 8 8 8 8  &         r   