GNU/Linux >> Znalost Linux >  >> Linux

Povolit Conda-forge Channel pro Conda Package Manager

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.


Linux
  1. Jaký je váš oblíbený správce balíčků pro Linux?

  2. 15 Příklady příkazů aptitude pro správu balíčků v Linuxu

  3. Jak povolím v Debianu balíčky, které nejsou zdarma?

  1. Jak používat XBPS Package Manager na Void Linux

  2. Linuxbrew – společný správce balíčků pro Linux a Mac OS X

  3. Jak nainstalovat Pip na Ubuntu – Správce balíčků pro Python

  1. Jak zkontrolovat seznam závislostí pro balíček Deb?

  2. N Update Manager pro Kubuntu?

  3. Jaký je rozdíl mezi Mark for Removal a Mark for Complete Removal v Synaptic Package Manager?