本指南解释了什么是 conda-forge
频道,如何安装包 conda-forge
最后如何永久启用 conda-forge
频道 conda
来自命令行的包管理器以及 Linux 中的 Anaconda Navigator GUI。
什么是康达锻造?
默认情况下, conda
包管理器从 defaults
渠道。 中的所有包 defaults
Anaconda, Inc. 的 Conda 团队对频道进行了彻底的测试和维护。
除了官方 defaults
渠道,有一些第三方渠道可用于托管和管理包。 一个这样的渠道是 conda-forge
.
Conda-forge 是社区主导的频道,为各种软件提供最新的 conda 包。
这 defaults
频道可能并不总是包含所有包。 可能有一些丢失的包,或者它可能包含过时的包。 这 conda-forge
社区通过在数千名贡献者的帮助下维护最新的软件包来解决这些问题。
Conda-forge 项目由 NumFOCUS 提供资金支持,NumFOCUS 是一个致力于支持开源科学计算社区的非营利组织。
从 conda-forge 频道安装软件包
可以从特定渠道安装软件包,而无需将其添加到我们的系统中。 让我们看看一个 example.
建议始终从以下位置安装软件包 conda-forge
新环境中的频道而不是默认频道 base
环境。
以下命令将创建一个名为 测试应用 并安装 熊猫 连同它在 testapp 环境中的支持包:
$ conda create --channel conda-forge --name testapp pandas
或者,
$ conda create -c conda-forge -n testapp pandas
这里, -c
(--channel
) 标志用于明确提及频道名称,即 conda-forge
在我们的例子中。
激活新创建的“testapp”环境:
$ conda activate testapp
检查环境中所有已安装包的来源:
$ conda list packages in environment at /home/sk/anaconda3/envs/testapp: # Name Version Build Channel _libgcc_mutex 0.1 conda_forge conda-forge _openmp_mutex 4.5 1_gnu conda-forge ca-certificates 2020.12.5 ha878542_0 conda-forge certifi 2020.12.5 py39hf3d152e_1 conda-forge ld_impl_linux-64 2.35.1 hea4e1c9_2 conda-forge libblas 3.9.0 8_openblas conda-forge libcblas 3.9.0 8_openblas conda-forge libffi 3.3 h58526e2_2 conda-forge libgcc-ng 9.3.0 h2828fa1_18 conda-forge libgfortran-ng 9.3.0 hff62375_18 conda-forge libgfortran5 9.3.0 hff62375_18 conda-forge libgomp 9.3.0 h2828fa1_18 conda-forge liblapack 3.9.0 8_openblas conda-forge libopenblas 0.3.12 pthreads_h4812303_1 conda-forge libstdcxx-ng 9.3.0 h6de172a_18 conda-forge ncurses 6.2 h58526e2_4 conda-forge numpy 1.20.1 py39hdbf815f_0 conda-forge openssl 1.1.1j h7f98852_0 conda-forge pandas 1.2.2 py39hde0f152_0 conda-forge pip 21.0.1 pyhd8ed1ab_0 conda-forge python 3.9.1 hffdb5ce_5_cpython conda-forge python-dateutil 2.8.1 py_0 conda-forge python_abi 3.9 1_cp39 conda-forge pytz 2021.1 pyhd8ed1ab_0 conda-forge readline 8.0 he28a2e2_2 conda-forge setuptools 49.6.0 py39hf3d152e_3 conda-forge six 1.15.0 pyh9f0ad1d_0 conda-forge sqlite 3.34.0 h74cdb3f_0 conda-forge tk 8.6.10 h21135ba_1 conda-forge tzdata 2021a he74cb21_0 conda-forge wheel 0.36.2 pyhd3deb0d_0 conda-forge xz 5.2.5 h516909a_1 conda-forge zlib 1.2.11 h516909a_1010 conda-forge
正如你在上面的输出中看到的,所有的包都是从 conda-forge
存储库。
如果您不想创建新环境但在现有活动环境中安装软件包,请运行:
$ conda install --channel conda-forge pandas
此命令将从 conda-forge
现有环境中的渠道。
让我们验证一下 conda-forge
使用以下方法之一添加频道:
$ conda info
此命令显示当前活动 conda 环境的详细信息,包括通道。
[...] channel URLs : https://repo.anaconda.com/pkgs/main/linux-64 https://repo.anaconda.com/pkgs/main/noarch https://repo.anaconda.com/pkgs/r/linux-64 https://repo.anaconda.com/pkgs/r/noarch [...]
如果您只想显示频道,请使用以下命令:
$ conda config --show channels
样本输出:
channels: - defaults
要仅显示默认频道,请运行:
$ conda config --show default_channels
样本输出:
default_channels: - https://repo.anaconda.com/pkgs/main - https://repo.anaconda.com/pkgs/r

正如您在上面的输出中看到的, conda-forge
不添加。 我们只安装了来自 conda-forge
频道,但我们还没有添加它。
现在让我们继续添加或启用 conda-forge
永久频道。
在 Linux 中为 conda 包管理器启用 conda-forge 通道
如前所述,我们可以添加或启用 conda-forge
来自 commadline 或 Anaconda Navigator 图形用户界面的频道。 首先,我们将看到命令行方式。
1. 从命令行添加 conda-forge 频道
启用 conda-forge
频道,从终端运行以下命令:
$ conda config --add channels conda-forge
如前所述, conda
从安装包 defaults
频道,除非您明确告诉它从特定频道安装软件包。
始终从以下位置安装软件包 conda-forge
设置更高的优先级 conda-forge
频道使用命令:
$ conda config --set channel_priority strict
在这里, channel_priority strict
选项将放置 conda-forge
顶部的通道 defaults
通道并确保所有依赖项都来自 conda-forge
频道,除非它们仅存在于 defaults
.
检查是否 conda-forge
使用命令添加频道:
$ conda config --show channels channels: - conda-forge - defaults
你注意到了吗? conda-forge
被放置在顶部 defaults
渠道。
现在,您通常可以在您的环境中安装任何软件包,而无需明确提及通道,如下所示:
$ conda install pandas
该软件包将始终从 conda-forge
渠道。

以防万一,如果包或其依赖项在 conda-forge
,它们将从 defaults
渠道。
就像我已经提到的,建议始终在新环境而不是默认环境中安装包 base
环境。 这样您就可以避免包装冲突并保持清洁 base
环境。
通过命令行添加频道并不是什么大问题。 但是,你们中的一些人更喜欢以图形方式完成工作。 以下部分说明如何启用 conda-forge
来自 Anaconda Navigator GUI 的频道。
2. 从 Anaconda Navigator 添加 conda-forge 频道
发射 蟒蛇导航器 使用命令:
$ anaconda-navigator
点击频道按钮:

点击添加按钮:

Enter 这 conda-forge
频道网址 – https://conda.anaconda.org/conda-forge/
. 按 ENTER 键更新频道列表。

最后点击 更新频道 按钮以启用 conda-forge 通道。
资源: