Questa guida spiega cos'è conda-forge
canale, come installare i pacchetti da conda-forge
e infine come abilitare permanentemente conda-forge
canale per conda
gestore di pacchetti dalla riga di comando e dalla GUI di Anaconda Navigator in Linux.
Cos'è conda-forge?
Per impostazione predefinita, il conda
gestore pacchetti installa i pacchetti da defaults
canale. Tutti i pacchetti nei defaults
canale sono testati e mantenuti a fondo dal team Conda di Anaconda, Inc.
A parte i defaults
ufficiali canale, sono disponibili alcuni canali di terze parti per l'hosting e la gestione dei pacchetti. Uno di questi canali è conda-forge
.
Conda-forge è un canale guidato dalla comunità che fornisce gli ultimi pacchetti conda per un'ampia gamma di software.
I defaults
il canale potrebbe non contenere sempre tutti i pacchetti. Potrebbero esserci dei pacchetti mancanti o potrebbe contenere pacchetti obsoleti. La conda-forge
community affronta questi problemi mantenendo i pacchetti aggiornati con l'aiuto di migliaia di contributori.
Il progetto Conda-forge è supportato finanziariamente da NumFOCUS, un'organizzazione no-profit dedicata a supportare la comunità di informatica scientifica open source.
Installa i pacchetti dal canale conda-forge
È possibile installare pacchetti da un canale specifico senza aggiungerlo al nostro sistema. Vediamo un esempio.
Si consiglia di installare sempre i pacchetti da conda-forge
canale in un nuovo ambiente invece della base
predefinita ambiente.
Il comando seguente creerà un nuovo ambiente denominato testapp e installa panda insieme ai suoi pacchetti di supporto nell'ambiente testapp:
$ conda create --channel conda-forge --name testapp pandas
Oppure,
$ conda create -c conda-forge -n testapp pandas
Qui, -c
(--channel
) viene utilizzato per menzionare esplicitamente il nome del canale, ad esempio conda-forge
nel nostro caso.
Attiva l'ambiente "testapp" appena creato:
$ conda activate testapp
Verifica l'origine di tutti i pacchetti installati nell'ambiente:
$ 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
Come puoi vedere nell'output sopra, tutti i pacchetti sono installati da conda-forge
deposito.
Se non desideri creare un nuovo ambiente ma installare i pacchetti nell'ambiente attivo esistente, esegui:
$ conda install --channel conda-forge pandas
Questo comando installerà il pacchetto pandas da conda-forge
canale nell'ambiente esistente.
Verifichiamo se il conda-forge
il canale viene aggiunto utilizzando uno dei seguenti metodi:
$ conda info
Questo comando mostra i dettagli dell'ambiente conda attualmente attivo, inclusi i canali.
[...] 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 [...]
Se vuoi mostrare solo i canali, usa questo comando:
$ conda config --show channels
Risultato di esempio:
channels: - defaults
Per mostrare solo i canali predefiniti, esegui:
$ conda config --show default_channels
Risultato di esempio:
default_channels: - https://repo.anaconda.com/pkgs/main - https://repo.anaconda.com/pkgs/r
Come puoi vedere negli output sopra, conda-forge
non viene aggiunto. Abbiamo installato solo i pacchetti da conda-forge
canale, ma non l'abbiamo ancora aggiunto.
Ora andiamo avanti e aggiungiamo o abilitiamo conda-forge
canale permanentemente.
Abilita il canale conda-forge per il gestore di pacchetti conda in Linux
Come già detto, possiamo aggiungere o abilitare conda-forge
canale dalla riga di comando o dall'interfaccia utente grafica di Anaconda Navigator. Per prima cosa, vedremo il modo in linea di comando.
1. Aggiungi il canale conda-forge dalla riga di comando
Per abilitare conda-forge
canale, esegui il seguente comando dal Terminale:
$ conda config --add channels conda-forge
Come affermato in precedenza, conda
installa i pacchetti da defaults
canale a meno che tu non gli dica esplicitamente di installare i pacchetti da un canale specifico.
Per installare i pacchetti sempre da conda-forge
, imposta una priorità più alta su conda-forge
canale usando il comando:
$ conda config --set channel_priority strict
Qui, il channel_priority strict
l'opzione posizionerà conda-forge
canale sopra defaults
canale e assicurati che tutte le dipendenze provengano da conda-forge
canale a meno che non esistano solo su defaults
.
Controlla se conda-forge
il canale viene aggiunto usando il comando:
$ conda config --show channels channels: - conda-forge - defaults
Hai notato? conda-forge
è posizionato in cima a defaults
canale.
Ora puoi normalmente installare qualsiasi pacchetto sul tuo ambiente senza menzionare esplicitamente il canale come di seguito:
$ conda install pandas
Il pacchetto verrà sempre scaricato da conda-forge
canale.
Per ogni evenienza, se il pacchetto o le sue dipendenze non sono disponibili in conda-forge
, verranno scaricati da defaults
canale.
Come ho già detto, si consiglia di installare sempre i pacchetti su un nuovo ambiente invece della base
predefinita ambiente. In questo modo puoi evitare conflitti tra i pacchetti e mantenere una base
pulita ambiente.
L'aggiunta di canali tramite riga di comando non è un grosso problema. Tuttavia, alcuni di voi preferiscono il modo grafico per fare le cose. La sezione seguente spiega come abilitare conda-forge
canale dalla GUI di Anaconda Navigator.
2. Aggiungi il canale conda-forge da Anaconda Navigator
Avvia Anaconda Navigator usando il comando:
$ anaconda-navigator
Fare clic sul pulsante Canali:
Fare clic sul pulsante Aggiungi:
Inserisci il conda-forge
URL del canale - https://conda.anaconda.org/conda-forge/
. Premere il tasto INVIO per aggiornare l'elenco dei canali.
Infine, fai clic su Aggiorna canali pulsante per abilitare il canale conda-forge.