快速安装 Micromamba
Micromamba 是一个静态链接的 C++ 可执行文件,在 Windows 上就是一个 micromamba.exe 文件,下载下来就直接可以用,甚至都不需要专门安装。唯一需要做的就是设置 Shell 的 Profile 文件,使 micromamba 成为可以在命令行里调用的一个命令。
Micromamba 支持 Linux、MacOS 和 Windows,具体的安装过程可参阅文档:
https%3A//mamba.readthedocs.io/en/latest/installation.html%23micromamba
以 Windows 为例(以下命令需要在 PowerShell 中执行)
首先我们下载最新版本的 Micromamba 到本地,并解压。这里面唯一有用的就是"micromamba**.**exe"这一个可执行文件,其他的大概是一些文档?全给删掉似乎也没什么影响
Invoke-Webrequest -URI https://micro.mamba.pm/api/micromamba/win-64/latest -OutFile micromamba.tar.bz2
tar xf micromamba.tar.bz2 -d micromamba
./micromamba/Library/bin/micromamba.exe shell init -s powershell -p ~/micromamba
上面这行命令会在 PowerShell 的 Profile 文件中(对应 Bash 的.bashrc
,默认位于 $HOME/Documents/WindowsPowerShell/profile.ps1
,$HOME
是 C:\Users\你的用户名\
)中添加这样一段代码,与 conda 类似
#region mamba initialize
# !! Contents within this block are managed by 'mamba shell init' !!
$Env:MAMBA_ROOT_PREFIX = "C:\Users\你的用户名\micromamba"
$Env:MAMBA_EXE = "C:\Users\你的用户名\micromamba\micromamba.exe"
(& $Env:MAMBA_EXE 'shell' 'hook' -s 'powershell' -p $Env:MAMBA_ROOT_PREFIX) | Out-String | Invoke-Expression
#endregion
之后退出所有命令行,再重开就可以使用 micromamba 或者 mamba 命令了。
当然如果你从来没配置过 PowerShell 的话,Windows 默认的安全策略可能会禁止执行 ps1 文件,也就是说以上代码不能在 PowerShell 打开时执行,会报一个错。那么还需要以管理员权限打开 PowerShell,设置一下安全策略,与 conda 一样(不知道有没有设置单独文件的安全策略的命令,我自己一直这样全局设置的)
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned
设置别名
“C:\Users\25122\Documents\WindowsPowerShell\profile.ps1”
$MambaModuleArgs = @{} #添加在第一行
Set-Alias -Name ll -Value Get-ChildItem #添加在最后一行
以下内容参考参考:https://zhuanlan.zhihu.com/p/622346839
配合 VSCode 使用
VSCode 已经提供了非常好的 Python 支持,在 VSCode 中安装 Python 扩展后,可以使用函数定义跳转、自动提示补全、代码格式化、Debug 等实用功能。但这一切都依赖一个 Python 的环境。如果使用 Conda,VSCode 可以自动识别通过 Conda 安装的 Python 环境,并允许用户针对每个项目选择特定的 Python 环境,如下如所示。
在 VSCode 的右下角可以选择 Python 环境
但 VSCode 目前还不能自动识别 micromamba 配置的 Python 环境,因此需要手动做一些配置。下面是我折腾出的一个能用的方案,如果有更好的方法可以评论区告诉我 QAQ
- 首先打开Settings,搜索 venv ,设置虚拟环境的搜索路径。这两个设置二选一即可。因为我把 micromamba 的根目录放在了 $HOME 下,所以只设置第一个也可以,如果放在 $HOME 以外的目录则需要设置第二个。
对应的 JSON 设置为
{
"python.venvFolders": [
"micromamba"
],
"python.venvPath": "~/micromamba/envs"
}
2. 设置搜索环境后,VSCode 可以识别出对应的环境是 conda 创建的(毕竟 mamba 兼容 conda),因此在打开文件夹的时候,会尝试调用 conda activate
命令激活环境,但 mamba 并没有提供名为 conda 的命令行接口,因此 VSCode 会在开启命令行时提示 conda 不存在从而报错。一个变通方法是在 PowerShell 中设置一个 alias,让 conda 成为 micromamba 的别名,从而让 conda 命令也可以使用,具体需要在 PowerShell 的 profile.ps1
文件中添加
Set-Alias -name conda -value micromamba
设置完成后,可以启动一个 PowerShell 命令行验证一下命令是否可用,然后重启 VSCode,就可以在右下角选环境了。选好环境后,相关的功能都可以使用。