Ce guide explique ce qu'est conda-forge
canal, comment installer des packages à partir de conda-forge
et enfin comment activer en permanence conda-forge
canal pour conda
gestionnaire de paquets depuis la ligne de commande ainsi que depuis l'interface graphique d'Anaconda Navigator sous Linux.
Qu'est-ce que conda-forge ?
Par défaut, le conda
le gestionnaire de packages installe les packages à partir des defaults
canal. Tous les packages dans les defaults
sont minutieusement testés et entretenus par l'équipe Conda d'Anaconda, Inc.
En dehors des defaults
officiels channel, il existe des canaux tiers disponibles pour l'hébergement et la gestion des packages. L'un de ces canaux est conda-forge
.
Conda-forge est une chaîne dirigée par la communauté qui fournit les derniers packages conda pour une large gamme de logiciels.
Les defaults
channel ne contient pas toujours tous les packages. Il peut y avoir des packages manquants ou il peut contenir des packages obsolètes. La conda-forge
La communauté s'attaque à ces problèmes en maintenant des packages à jour avec l'aide de milliers de contributeurs.
Le projet Conda-forge est soutenu financièrement par NumFOCUS, une organisation à but non lucratif dédiée au soutien de la communauté informatique scientifique open source.
Installer les packages à partir du canal conda-forge
Il est possible d'installer des packages à partir d'un canal spécifique sans l'ajouter dans notre système. Voyons un exemple.
Il est recommandé de toujours installer les packages à partir de conda-forge
canal dans un nouvel environnement au lieu de la base
par défaut environnement.
La commande suivante créera un nouvel environnement nommé testapp et installez pandas ainsi que ses packages de support dans l'environnement testapp :
$ conda create --channel conda-forge --name testapp pandas
Ou,
$ conda create -c conda-forge -n testapp pandas
Ici, -c
(--channel
) flag est utilisé pour mentionner explicitement le nom du canal, c'est-à-dire conda-forge
dans notre cas.
Activez l'environnement "testapp" nouvellement créé :
$ conda activate testapp
Vérifiez l'origine de tous les packages installés dans l'environnement :
$ 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
Comme vous le voyez dans la sortie ci-dessus, tous les packages sont installés à partir de conda-forge
référentiel.
Si vous ne souhaitez pas créer de nouvel environnement mais installer des packages dans l'environnement actif existant, exécutez :
$ conda install --channel conda-forge pandas
Cette commande installera le package pandas à partir de conda-forge
canal dans l'environnement existant.
Vérifions si le conda-forge
canal est ajouté en utilisant l'une des méthodes suivantes :
$ conda info
Cette commande affiche les détails de l'environnement conda actuellement actif, y compris les canaux.
[...] 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 [...]
Si vous souhaitez afficher uniquement les chaînes, utilisez cette commande :
$ conda config --show channels
Exemple de résultat :
channels: - defaults
Pour afficher uniquement les chaînes par défaut, exécutez :
$ conda config --show default_channels
Exemple de résultat :
default_channels: - https://repo.anaconda.com/pkgs/main - https://repo.anaconda.com/pkgs/r
Comme vous le voyez dans les sorties ci-dessus, conda-forge
n'est pas ajouté. Nous n'avons installé que les packages de conda-forge
chaîne, mais nous ne l'avons pas encore ajoutée.
Maintenant, allons-y et ajoutons ou activons conda-forge
chaîne en permanence.
Activer le canal conda-forge pour le gestionnaire de packages conda sous Linux
Comme indiqué déjà, nous pouvons ajouter ou activer conda-forge
canal depuis la ligne de commande ou depuis l'interface utilisateur graphique d'Anaconda Navigator. Tout d'abord, nous verrons le chemin de la ligne de commande.
1. Ajouter le canal conda-forge à partir de la ligne de commande
Pour activer conda-forge
canal, exécutez la commande suivante depuis le Terminal :
$ conda config --add channels conda-forge
Comme indiqué précédemment, conda
installe les packages à partir des defaults
à moins que vous ne lui disiez explicitement d'installer des packages à partir d'un canal spécifique.
Pour installer les packages toujours à partir de conda-forge
, définissez une priorité plus élevée sur conda-forge
canal en utilisant la commande :
$ conda config --set channel_priority strict
Ici, le channel_priority strict
l'option placera conda-forge
chaîne en plus de defaults
canal et assurez-vous que toutes les dépendances proviendront du conda-forge
chaîne à moins qu'ils n'existent que sur defaults
.
Vérifiez si conda-forge
le canal est ajouté à l'aide de la commande :
$ conda config --show channels channels: - conda-forge - defaults
As-tu remarqué? conda-forge
est placé en haut de defaults
chaîne.
Maintenant, vous pouvez normalement installer n'importe quel package sur votre environnement sans mentionner explicitement le canal comme ci-dessous :
$ conda install pandas
Le package sera toujours téléchargé depuis le conda-forge
chaîne.
Juste au cas où, si le paquet ou ses dépendances ne sont pas disponibles dans conda-forge
, ils seront téléchargés depuis defaults
chaîne.
Comme je l'ai déjà mentionné, il est recommandé de toujours installer les packages sur un nouvel environnement au lieu de la base
par défaut environnement. De cette façon, vous pouvez éviter les conflits de packages et maintenir une base
propre environnement.
L'ajout de canaux via la ligne de commande n'est pas un gros problème. Cependant, certains d'entre vous préfèrent la manière graphique de faire avancer les choses. La section suivante explique comment activer conda-forge
canal depuis l'interface graphique d'Anaconda Navigator.
2. Ajouter un canal conda-forge depuis Anaconda Navigator
Lancez Anaconda Navigator en utilisant la commande :
$ anaconda-navigator
Cliquez sur le bouton Chaînes :
Cliquez sur le bouton Ajouter :
Entrez le conda-forge
URL du canal - https://conda.anaconda.org/conda-forge/
. Appuyez sur la touche ENTER pour mettre à jour la liste des chaînes.
Cliquez enfin sur Mettre à jour les chaînes bouton pour activer le canal conda-forge.