
    s
e                         U d Z ddlZddlZddlZej                            dd          Zej        e         e	d<   defdZ
d
dej        e         defd	ZdS )zBase configuration management.    Nz	.anaconda	navigator	SUBFOLDERreturnc                     t           j        dk    rd} d}|D ]}t           j                            |d          }|rt           j                            |          sD| p|} t           j                            |t                    }t           j                            |          r|c S | r| S nPt          j	        t                    5  t           j                            d          cddd           S # 1 swxY w Y   t          d          )zReturn user home directory.nt )HOMEAPPDATAUSERPROFILETMP~Nz(Please define environment variable $HOME)osnameenvirongetpathisdirjoinr   
contextlibsuppressBaseException
expanduserRuntimeError)fallbackpath_env_varspath_env_varcurrentinners        =lib/python3.11/site-packages/navigator_updater/config/base.pyget_home_dirr       sI   	w$.W * 	 	L:>>,;;G RW]]7%;%;   *7H gy99Ew}}U##   	O	  // 	+ 	+7%%c**	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ 	+ A
B
BBs   C22C69C6filenamec                     t           j                            t                      t                    }t          j        |d           |  t           j                            ||           S |S )zDReturn absolute path for configuration file with specified filename.T)exist_ok)r   r   r   r    r   makedirs)r!   results     r   get_conf_pathr&   8   sQ    ',,|~~y99FK&&&&w||FH---M    )N)__doc__r   r   typingr   r   r   Finalstr__annotations__r    Optionalr&    r'   r   <module>r/      s    % $ $     				   "w||KEE	6< E E ECc C C C C@ FOC0 C      r'   