Comment mettre en place un environnement de développement avec Mamba
Sommaire
Liens rapides
-
Installation de packages supplémentaires
-
Mise à jour des environnements Mamba
Si vous êtes un programmeur, en particulier en science des données ou en analyse, vous avez probablement subi des maux de tête sur les packages inclus dans une distribution Linux. Et s'il y avait un moyen de disposer d'un environnement de programmation séparé pour vos projets qui était isolé du système sans avoir à configurer une machine virtuelle? Mamba pourrait être ce dont vous avez besoin.
Qu'est-ce que Mamba?
Mamba est un gestionnaire de packages destiné à une utilisation par projet. C'est similaire à un gestionnaire de packages que vous trouvez sur un système Linux moderne, mais au lieu de gérer des packages de logiciels pour l'ensemble du système, vous créez des environnements uniquement pour les packages dont vous avez besoin pour votre projet. Mamba est une réimplémentation du gestionnaire de packages Conda. Conda était à l'origine écrite en Python, mais Mamba a été réécrit en C ++ pour une vitesse supplémentaire.
Mamba, comme Conda, est populaire pour la science des données, les statistiques, la biostatistique et l'analyse des données. Il semble avoir une affinité avec Python, étant donné la dénomination sur le thème du serpent. Le nom semble être choisi pour la vitesse du serpent homonyme, car Mamba est une version plus rapide de Conda.
Mamba fait beaucoup de choses que vous vous attendez à ce qu'un gestionnaire de packages fasse, comme la recherche de packages, les installer et les tenir à jour. Vous créez des environnements que vous pouvez activer ou désactiver à volonté lorsque vous le souhaitez. Vous pouvez installer plusieurs environnements sur la même machine.
Pourquoi Mamba?
Si vous utilisez un système de développement de type Linux ou Unix, vous vous demandez peut-être pourquoi vous auriez besoin de quelque chose comme Mamba. Vous n'avez pas déjà de gestionnaire de packages?
Le logiciel installé dans un gestionnaire de packages est destiné au système dans son ensemble. De nombreux systèmes incluent un interprète Python, mais cela est destiné à exécuter des scripts et d'autres programmes qui dépendent de Python, et pas tant pour soutenir vos projets de programmation. Si vous avez besoin d'une version plus récente de Python pour votre propre code que les fournitures système et que vous la mettez à niveau, d'autres scripts et programmes qui dépendent de la version fournie avec votre système peuvent se casser.
En rapport
APT vs Snap vs Flatpak: les gestionnaires de packages Ubuntu ont expliqué (et quand utiliser chacun)
S'il y a une chose que vous obtenez avec les distributions Linux, c'est le choix.
Mamba résout ce problème en vous permettant de créer des environnements pour une tâche isolée du système sous-jacent. Si vous travaillez dans la science des données ou l'analyse, vous pouvez définir un environnement uniquement pour votre travail tout en laissant le système de base intact. Vous pouvez activer votre environnement lorsque vous souhaitez exécuter certains calculs et le désactiver lorsque vous avez terminé.
J'ai utilisé du mamba pour plusieurs pièces sur HTG, dont une récente sur la construction d'un prédicteur de prix d'ordinateur portable.
Installation de mamba
L'installation de Mamba est assez simple dans la plupart des systèmes de type Unix. Je vais démontrer l'installation de Mamba sur un système Debian Linux.
Vous pouvez suivre quelques instructions simples pour télécharger et installer Mamba directement à partir de la page de documentation Mamba. Tout d'abord, vous voudrez télécharger la distribution MinIforge. Il s'agit d'une version minimale de Mamba qui a tous les fichiers de base dont vous avez besoin pour démarrer.
En supposant que vous avez installé Curl, tout ce que vous avez à faire est de coller dans une ligne pour le télécharger sur un système de type Unix:
curl -L -O "https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-$(uname)-$(uname -m).sh"
Après l'avoir téléchargé, vous pouvez maintenant exécuter le script d'installation:
bash Miniforge3-$(uname)-$(uname -m).sh
Le script vous demandera d'appuyer sur Entrée si vous souhaitez continuer, puis passez en revue certains termes de licence. Étant donné que Mamba est open source, ce ne sera probablement pas un problème pour vous. Vous devrez taper « oui » ou « non » pour accepter ou refuser les termes de licence. Pour accepter et continuer avec l'installation, tapez « Oui » à l'invite.
Après cela, vous devrez confirmer le répertoire où vous souhaitez installer vos packages Conda. Par défaut, ce sera dans votre répertoire domestique avec un sous-répertoire « miniforge ».
Lorsque MinIforge est installé, vous obtiendrez alors une invite pour modifier le script de démarrage par défaut de votre shell, tel que .bashrc ou .zshrc, selon le shell que vous utilisez, pour démarrer Mamba automatiquement lorsque vous démarrez un shell. Vous en aurez probablement besoin si vous prévoyez de travailler avec beaucoup de mamba. Cela facilitera l'activation et la désactivation des environnements Mamba. Tapez à nouveau « oui » pour le confirmer.
Créer un environnement
Lorsque vous ouvrez un nouveau terminal, vous avez peut-être remarqué quelque chose de différent dans votre invite de coquille. Vous verrez quelque chose qui dit « (base) ». Cela signifie que le mamba a été activé avec l'environnement de base. C'est exactement ce que cela ressemble: un environnement de base minimal. Vous pouvez vérifier cela en tapant « Python » à l'invite. Dans le message d'introduction, vous pouvez voir que cette version de Python a été « emballée par Conda-Forge ».
Vous pouvez installer d'autres packages dans cet environnement de base, mais vous ne le souhaitez pas. Le but de Mamba est d'avoir tous les packages dont vous avez besoin dans un environnement, et d'autres dont vous avez besoin pour un projet différent dans un autre environnement.
Il est facile de créer des environnements. Pour créer un environnement, vous utilisez la commande Mamba Create avec l'option « -N » suivie du nom de l'environnement que vous souhaitez créer, puis de la liste des packages que vous souhaitez installer dans cet environnement.
Par exemple, pour créer un environnement pour l'informatique statistique nommée « Stats » avec les packages Numpy, Scipy et Pandas Python, utilisez cette commande:
mamba create -n stats numpy scipy pandas
Comme tout autre gestionnaire de packages, il déterminera les packages et leurs dépendances, et vous demandera enfin de confirmer leur installation. Étant donné que l'installation est effectuée dans votre répertoire domestique, vous n'avez pas besoin d'utiliser Sudo ou de fournir un mot de passe racine.
Pour activer l'environnement des statistiques, utilisez la commande « Mamba Activate »:
mamba activate stats
Vous verrez le nom de l'environnement actif passer de la « base » aux « statistiques » dans l'invite. Vous pouvez désormais utiliser les packages que vous avez installés dans cet environnement.
Tessons ceci en exécutant l'interprète interactif Python.
Nous pouvons importer Numpy et le faire fonctionner.
import numpy as np
np.mean((1,2,3,4))
Il rapportera la réponse comme un numéro de point flottant de 2,5.
La plupart du temps, vous vous rendez compte que vous voudrez peut-être ajouter des packages à votre environnement existant. Par exemple, j'aime l'interpréteur Ipython sur l'interprète standard. Je peux l'ajouter de deux manières.
En rapport
Terminal Linux pour les débutants: comment installer et supprimer le logiciel
Permettez-moi de vous transformer en un utilisateur de puissance de terminal Linux!
Je peux l'ajouter en utilisant l'option -N avec « Mamba Installer »
mamba install -n ipython
Je peux également exécuter « Mamba Install » dans un environnement actif pour installer le package dans cet environnement. Étant donné que les « statistiques » sont déjà actives, je le ferai. Il me demandera de confirmer les modifications, puis d'installer Ipython.
Je peux exécuter ipython sur le shell:
ipython
Pour désactiver un environnement quand j'en ai fini, je peux utiliser la commande « Mamba Deagtivate ». Pour prouver qu'Ipython a été installé dans l'environnement « Stats », lorsque j'essaie de l'exécuter, j'obtiens l'erreur « Commande non trouvée » après désactivation.
Pour trouver des packages, vous pouvez utiliser les commandes de recherche « Search Mamba » ou « Mamba Recoupery ».
Par exemple, pour trouver des packages relatifs à Jupyter, une interface de carnet populaire pour l'informatique scientifique:
mamba search jupyter
Mise à jour des environnements Mamba
Comme pour les autres gestionnaires de packages, Mamba est pratique pour garder les packages à jour à mesure que de nouvelles versions deviennent disponibles. Vous pouvez utiliser la commande « Mamba Update ».
Par exemple, pour mettre à jour tous les packages dans l'environnement des statistiques:
mamba update --all -n stats
Alternativement, vous pouvez utiliser « – update-all » au lieu de « – tout » dans la commande, mais ce dernier est plus court. Comme il s'agit d'une nouvelle installation, il n'y a rien à mettre à jour lorsque j'exécute cette commande.
Avec Mamba, vous pouvez créer des environnements adaptés à vos projets de programmation, les activer et les désactiver, et les mettre à jour à volonté. Il peut sembler étrange d'avoir un gestionnaire de packages en plus de votre gestionnaire de packages, mais l'utilisation de Mamba rendra votre projet de programmation beaucoup plus facilement.
