47
47
except ImportError :
48
48
MAMBA_PYTHON_AVAILABLE = False
49
49
50
- try :
51
- check_call (["mamba" , "--version" ], ** SILENT )
52
- MAMBA_AVAILABLE = True
53
- except FileNotFoundError :
54
- MAMBA_AVAILABLE = False
55
-
56
- try :
57
- check_call (["micromamba" , "--version" ], ** SILENT )
58
- MICROMAMBA_AVAILABLE = True
59
- except FileNotFoundError :
60
- MICROMAMBA_AVAILABLE = False
50
+ MAMBA_COMMAND = shutil .which ("mamba" )
61
51
62
- try :
63
- check_call (["conda" , "--version" ], ** SILENT )
64
- CONDA_AVAILABLE = True
65
- except FileNotFoundError :
66
- CONDA_AVAILABLE = False
52
+ MICROMAMBA_COMMAND = shutil .which ("micromamba" )
67
53
54
+ CONDA_COMMAND = shutil .which ("conda" )
68
55
69
56
class PackagesList (List ):
70
57
def from_string (self , s ):
@@ -252,15 +239,15 @@ def create_env(self):
252
239
for channel in self .channels :
253
240
channels .extend (["-c" , channel ])
254
241
255
- if MAMBA_AVAILABLE :
242
+ if MAMBA_COMMAND :
256
243
# Mamba needs the directory to exist already
257
244
self .prefix_path .mkdir (parents = True , exist_ok = True )
258
- return self ._create_env_with_config ("mamba" , channels )
245
+ return self ._create_env_with_config (MAMBA_COMMAND , channels )
259
246
260
- if MICROMAMBA_AVAILABLE :
247
+ if MICROMAMBA_COMMAND :
261
248
run (
262
249
[
263
- "micromamba" ,
250
+ MICROMAMBA_COMMAND ,
264
251
"create" ,
265
252
"--yes" ,
266
253
"--root-prefix" ,
@@ -276,8 +263,8 @@ def create_env(self):
276
263
)
277
264
return
278
265
279
- if CONDA_AVAILABLE :
280
- return self ._create_env_with_config ("conda" , channels )
266
+ if CONDA_COMMAND :
267
+ return self ._create_env_with_config (CONDA_COMMAND , channels )
281
268
282
269
raise RuntimeError (
283
270
"""Failed to create the virtual environment for xeus-python,
0 commit comments