Si vous effectuez la mise à niveau vers Ubuntu 23.04 et essayez d’exécuter ‘pip install’, vous constaterez qu’il génère une erreur – mais ce n’est pas un bogue.
La raison pour laquelle le pip install
la commande ne fonctionne pas dans Ubuntu 23.04 est due à une intentionnelle changement de politique (également pris en amont d’Ubuntu, Debian) pour éviter les conflits entre les Gestionnaire de paquets Python et le sous-jacent d’Ubuntu APTE.
En gros, tu ne peux pas courir pip install
en dehors d’un environnement virtuel dans Ubuntu 23.04. Si vous essayez, vous obtenez une erreur « environnement géré en externe » semblable à celle-ci :
La bonne nouvelle est qu’il existe un certain nombre de solutions de contournement disponibles qui n’impliquent pas de risquer la stabilité de votre système en installant de force des packages pour annuler le changement de politique.
Installation d’applications Python dans Ubuntu 23.04
1. Utilisez une version de dépôt
Si le package Python dont vous avez besoin se trouve dans les dépôts Ubuntu/Debian, vous pouvez l’installer à partir de là. Par exemple, sudo apt install python3-foo
où ‘foo’ est le nom du paquet que vous voulez.
Si vous n’êtes pas sûr que le paquet que vous voulez est dans le dépôt, tapez simplement python3-
puis frappez le tab
clé pour voir une impression de tout ce qui y est disponible.
2. Créer un environnement virtuel avec venv
Si le package Python que vous souhaitez installer est pas dans les référentiels Ubuntu, ou si vous souhaitez en installer une version plus récente que celle disponible sur Ubuntu, vous pouvez créer un environnement virtuel à l’aide venv
.
Installez-le d’abord :
sudo apt install python3-venv
Exécutez ensuite :
python3 -m venv .venv/anynamehere
Cela créera un répertoire dans votre dossier personnel appelé .venv
. À l’intérieur se trouve votre environnement virtuel (nommé ce que vous avez choisi) avec une copie de python et pip que vous pouvez utiliser pour installer ce dont vous avez besoin à l’intérieur de l’environnement.
Par exemple, j’ai créé un environnement virtuel appelé ‘eternia’, puis j’ai utilisé le binaire ‘pip’ à l’intérieur de celui-ci pour installer (plutôt inutilement car il ne fonctionne plus, mais c’est le premier qui m’est venu à l’esprit) client CLI Twitter Rainbowstream :
Ce n’est pas la solution de contournement la plus horrible, mais c’est un peu « désordonné » car vous devez vous rappeler de vous référer spécifiquement à l’environnement virtuel lorsque vous devez exécuter quelque chose et, franchement, j’ai la capacité de mémoire d’un Spectre ZX.
Utiliser pipx (recommandé)
Enfin, vous pourrez peut-être utiliser pipx
. Le « hic » est que pipx ne fonctionne pas avec les bibliothèques Python, donc si vous en avez besoin, ce choix est exclu. Mais si vous voulez une application Python, il est plus facile de l’utiliser.
Pourquoi?
Eh bien, pipx a) crée automatiquement un environnement virtuel pour chaque application que vous installez, puis b) crée automatiquement un lien vers celui-ci dans .local/bin
pour que vous puissiez l’exécuter à partir de la ligne de commande comme si tout était comme avant – sympa 💪 !
Exécutez cette commande pour installer pipx sur Ubuntu :
sudo apt install pipx
Ajoutez-le à votre PATH (afin que vous puissiez exécuter les choses globalement):
pipx ensurepath
Installez ensuite des applications comme ceci, où « foo » est le nom de l’application que vous souhaitez installer :
pipx install foo
Par exemple, pour installer le S’il te plaît page de démarrage du terminal outil que je viens d’exécuter pipx install please-cli
suivie par please
(comme pipx crée automatiquement un lien symbolique vers celui-ci pour moi et j’ai exécuté le pipx ensurepath
commande).
C’est aussi simple que ça !
Emballer
Dans cet article, je vous ai montré trois façons de contourner le changement de politique pip dans Ubuntu 23.04, ce qui signifie que vous ne pouvez pas simplement exécuter l’installation pip comme dans les versions précédentes. Pipx est la solution la plus simple et la plus élégante car elle réduit les frictions, vous permettant de vous concentrer sur la mise en place et le fonctionnement de vos applications Python préférées.