Tato příručka vysvětluje, co je conda-forge
kanál, jak instalovat balíčky z conda-forge
a konečně jak trvale povolit conda-forge
kanál pro conda
správce balíčků z příkazového řádku a také z grafického uživatelského rozhraní Anaconda Navigator v Linuxu.
Co je conda-forge?
Ve výchozím nastavení conda
správce balíčků instaluje balíčky z defaults
kanál. Všechny balíčky v defaults
kanál jsou důkladně testovány a udržovány týmem Conda z Anaconda, Inc.
Kromě oficiálních defaults
kanálu, jsou k dispozici některé kanály třetích stran pro hostování a správu balíčků. Jedním z takových kanálů je conda-forge
.
Conda-forge je komunitou vedený kanál, který poskytuje nejnovější balíčky Conda pro širokou škálu softwaru.
defaults
kanál nemusí vždy obsahovat všechny balíčky. Některé balíčky mohou chybět nebo může obsahovat zastaralé balíčky. conda-forge
komunita řeší tyto problémy udržováním aktuálních balíčků s pomocí tisíců přispěvatelů.
Projekt Conda-forge je finančně podporován NumFOCUS, neziskovou organizací věnovanou podpoře open source vědecké počítačové komunity.
Instalujte balíčky z kanálu conda-forge
Je možné instalovat balíčky z konkrétního kanálu, aniž byste jej přidali do našeho systému. Podívejme se na příklad.
Doporučujeme vždy instalovat balíčky z conda-forge
kanál v novém prostředí namísto výchozího base
prostředí.
Následující příkaz vytvoří nové prostředí s názvem testapp a nainstalujte pandy spolu s jeho podpůrnými balíčky v prostředí testapp:
$ conda create --channel conda-forge --name testapp pandas
Nebo,
$ conda create -c conda-forge -n testapp pandas

Zde -c
(--channel
) příznak se používá k explicitnímu zmínce o názvu kanálu, tj. conda-forge
v našem případě.
Aktivujte nově vytvořené prostředí „testapp“:
$ conda activate testapp
Zkontrolujte původ všech nainstalovaných balíčků v prostředí:
$ 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

Jak vidíte ve výše uvedeném výstupu, všechny balíčky jsou nainstalovány z conda-forge
úložiště.
Pokud nechcete vytvářet nové prostředí, ale instalovat balíčky do stávajícího aktivního prostředí, spusťte:
$ conda install --channel conda-forge pandas
Tento příkaz nainstaluje balíček pandas z conda-forge
kanál ve stávajícím prostředí.
Pojďme ověřit, zda conda-forge
kanál se přidá pomocí jedné z následujících metod:
$ conda info
Tento příkaz zobrazí podrobnosti o aktuálně aktivním prostředí conda, včetně kanálů.
[...] 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 [...]
Pokud chcete zobrazit pouze kanály, použijte tento příkaz:
$ conda config --show channels
Ukázkový výstup:
channels: - defaults
Chcete-li zobrazit pouze výchozí kanály, spusťte:
$ conda config --show default_channels
Ukázkový výstup:
default_channels: - https://repo.anaconda.com/pkgs/main - https://repo.anaconda.com/pkgs/r

Jak vidíte ve výše uvedených výstupech, conda-forge
není přidán. Nainstalovali jsme pouze balíčky z conda-forge
kanál, ale ještě jsme ho nepřidali.
Nyní pojďme do toho a přidejte nebo povolte conda-forge
kanál trvale.
Povolit kanál conda-forge pro správce balíčků conda v Linuxu
Jak již bylo řečeno, můžeme přidat nebo povolit conda-forge
kanál buď z commadline nebo z grafického uživatelského rozhraní Anaconda Navigator. Nejprve uvidíme způsob commanline.
1. Přidejte kanál conda-forge z příkazového řádku
Chcete-li povolit conda-forge
kanálu, spusťte z terminálu následující příkaz:
$ conda config --add channels conda-forge
Jak bylo uvedeno dříve, conda
nainstaluje balíčky z defaults
kanál, pokud mu výslovně neřeknete, aby instaloval balíčky z konkrétního kanálu.
Chcete-li instalovat balíčky vždy z conda-forge
, nastavte vyšší prioritu na conda-forge
kanál pomocí příkazu:
$ conda config --set channel_priority strict
Zde je channel_priority strict
volba umístí conda-forge
kanál nad defaults
kanálu a zajistěte, aby všechny závislosti pocházely z conda-forge
kanál, pokud neexistují pouze v defaults
.
Zkontrolujte, zda conda-forge
kanál se přidá pomocí příkazu:
$ conda config --show channels channels: - conda-forge - defaults
Všiml sis? conda-forge
je umístěn v horní části defaults
kanál.
Nyní můžete normálně nainstalovat jakýkoli balíček do vašeho prostředí, aniž byste výslovně zmínili kanál, jak je uvedeno níže:
$ conda install pandas
Balíček bude vždy stažen z conda-forge
kanál.

Pro případ, pokud balíček nebo jeho závislosti nejsou dostupné v conda-forge
, budou staženy z defaults
kanál.
Jak jsem již zmínil, doporučuje se vždy instalovat balíčky do nového prostředí namísto výchozího base
životní prostředí. Tímto způsobem se můžete vyhnout konfliktům balíčků a zachovat čistou base
prostředí.
Přidávání kanálů pomocí příkazového řádku není velký problém. Někteří z vás však dávají přednost grafickému způsobu provádění věcí. Následující část vysvětluje, jak povolit conda-forge
kanál z Anaconda Navigator GUI.
2. Přidejte kanál conda-forge z Anaconda Navigator
Spusťte Anaconda Navigator pomocí příkazu:
$ anaconda-navigator
Klikněte na tlačítko Kanály:

Klikněte na tlačítko Přidat:

Zadejte conda-forge
URL kanálu – https://conda.anaconda.org/conda-forge/
. Stisknutím klávesy ENTER aktualizujte seznam kanálů.

Nakonec klikněte na Aktualizovat kanály tlačítko pro povolení kanálu conda-forge.