Поиск по сайту:

Включить канал Conda-forge для диспетчера пакетов Conda

В этом руководстве объясняется, что такое канал conda-forge, как устанавливать пакеты из conda-forge и, наконец, как навсегда включить канал conda-forge для менеджера пакетов conda из командной строки, а также из графического интерфейса Anaconda Navigator в Linux.

Что такое конда-форж?

По умолчанию менеджер пакетов conda устанавливает пакеты из канала defaults. Все пакеты в канале defaults тщательно тестируются и поддерживаются командой Conda из Anaconda, Inc.

Помимо официального канала defaults, существует несколько сторонних каналов для размещения пакетов и управления ими. Одним из таких каналов является conda-forge.

Conda-forge — это канал под руководством сообщества, который предоставляет новейшие пакеты conda для широкого спектра программного обеспечения.

Канал defaults не всегда может содержать все пакеты. Возможно, некоторые пакеты отсутствуют или могут содержать устаревшие пакеты. Сообщество conda-forge решает эти проблемы, поддерживая актуальность пакетов с помощью тысяч участников.

Проект Conda-forge финансируется NumFOCUS, некоммерческой организацией, занимающейся поддержкой сообщества научных вычислений с открытым исходным кодом.

Установите пакеты с канала conda-forge

Возможна установка пакетов из определенного канала, не добавляя его в нашу систему. Давайте посмотрим пример.

Рекомендуется всегда устанавливать пакеты из канала conda-forge в новую среду вместо среды base по умолчанию.

Следующая команда создаст новую среду с именем testapp и установит pandas вместе с вспомогательными пакетами в среде testapp:

conda create --channel conda-forge --name testapp pandas

Или,

conda create -c conda-forge -n testapp pandas

Установите пакеты с канала conda-forge

Здесь флаг -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

Как вы видите в приведенном выше выводе, все пакеты устанавливаются из репозитория conda-forge.

Если вы не хотите создавать новую среду, а устанавливаете пакеты в существующую активную среду, запустите:

conda install --channel conda-forge pandas

Эта команда установит пакет 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

Как видно из приведенных выше результатов, conda-forge не добавляется. Мы установили только пакеты из канала conda-forge, но еще не добавили их.

Теперь давайте добавим или включим канал conda-forge навсегда.

Включить канал conda-forge для диспетчера пакетов conda в Linux

Как уже говорилось, мы можем добавить или включить канал conda-forge либо из командной строки, либо из графического пользовательского интерфейса 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 канал, если только они не существуют только в default.

Проверьте, добавлен ли канал conda-forge с помощью команды:

$ conda config --show channels
channels:
  - conda-forge
  - defaults

Ты заметил? conda-forge размещается в верхней части канала defaults.

Теперь вы можете обычно устанавливать любой пакет в своей среде без явного упоминания канала, как показано ниже:

conda install pandas

Пакет всегда будет загружаться с канала conda-forge.

Установите пакеты из conda-forge в Linux

На всякий случай, если пакет или его зависимости недоступны в conda-forge, они будут загружены из канала defaults.

Как я уже упоминал, рекомендуется всегда устанавливать пакеты в новой среде вместо среды base по умолчанию. Таким образом вы сможете избежать конфликтов пакетов и поддерживать чистую среду base.

Добавление каналов через командную строку не составляет большого труда. Однако некоторые из вас предпочитают графический способ выполнения задач. В следующем разделе объясняется, как включить канал conda-forge из графического интерфейса Anaconda Navigator.

2. Добавьте канал conda-forge из Anaconda Navigator.

Запустите Anaconda Navigator с помощью команды:

anaconda-navigator

Нажмите кнопку «Каналы»:

Нажмите кнопку «Каналы» в графическом интерфейсе Anaconda Navigator.

Нажмите кнопку «Добавить»:

Нажмите «Добавить», чтобы добавить новый канал.

Введите URL-адрес канала conda-forgehttps://conda.anaconda.org/conda-forge/. Нажмите клавишу ENTER, чтобы обновить список каналов.

Введите URL-адрес канала conda-forge.

Наконец, нажмите кнопку Обновить каналы, чтобы включить канал conda-forge.

Ресурс:

  • Веб-сайт Conda-forge

Статьи по данной тематике