如何告诉 .zshrc 的 conda init 位置?

How to tell conda init location of .zshrc?

我正在尝试在我的安装脚本中自动安装 miniconda。问题是,我的 .zshrc 在 ~/.config/zsh/ 中,当我 运行

eval "${XDG_DATA_HOME}/miniconda/bin/conda init zsh"

它在我家创建了新的 .zshrc。

我如何告诉 conda init 我的 .zshrc 在哪里?

已知错误,即将修复

这是一个已知问题,已修复 merged into master branch,但尚未发布。该修复假定 ZDOTDIR 环境变量定义了在哪里可以找到 .zshrc 文件。如果没有定义它,那么修复将是

ZDOTDIR=~/.config/zsh conda init zsh

不过,那得等到下个版本了。

临时解决方法

在此期间,您可以手动复制它添加到 ~/.zshrc 的代码并将其附加到您的代码。或者,如果您非常关心 Conda 运行ning 它,您可以 运行 Conda base Python

中的这个脚本

文件:init_zsh.py

#!/usr/bin/env python
from conda.core.initialize import init_sh_user
from conda.base.context import context
from conda.common.path import expand

init_sh_user(expand("$ZDOTDIR/.zshrc"), context.conda_prefix, "zsh")

这对你来说就像

eval "${XDG_DATA_HOME}/miniconda/bin/python init_zsh.py"

假设 ZDOTDIR 已定义。