Pyenv es una herramienta enfocada en la administración de múltiples versiones de Python en sistemas Linux.
Según Wikipedia, Python es un lenguaje de programación interpretado cuya filosofía hace hincapié en una sintaxis que favorezca un código legible. Quienes utilizan este lenguaje, les resulta conveniente tener varias versiones del interprete instalado sobre el mismo sistema. Es aquí donde Pyenv entra en acción, esta sencilla herramienta puede gestionar distintas versiones de Python, no sólo entre las versiones 2.x o 3.x, sino también versiones de Anaconda, Ironpython, Jython, Micropython, Miniconda, Pypy, Pyston y Stackless.
Este articulo muestra la instalación del software sobre un Linux distribución Ubuntu en su versión 18.04 LTS. En particular sobre el sistema que realizo el trabajo es un KDE Neon (Plasma) 18.04.
Instalación de dependencias
Para instalar Pyenv en sistemas Ubuntu y/o derivados, inicialmente instalo las siguientes dependencias.
apt -y update && sudo apt-get install -y make build-essential git libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev
Instalar Pyenv
A continuación instalo con el siguiente comando:
curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer libnss3-tools python3-ven | bash
Nota: observar que la herramienta que instalada en la cuenta propia del usuario autenticado, por ende disponible solo para este usuario. Observar ademas, que esto permite tener diferentes versiones instaladas en el equipo, separadas de la versión global del sistema operativo.
La instalación indica que debe agregarse al env del usuario, en mi ejemplo lo realizo en el archivo ~/.bashrc del siguiente modo:
echo -e 'export PATH="/home/dzamo/.pyenv/bin:$PATH"\neval "$(pyenv init -)" \neval "$(pyenv virtualenv-init -)"' >> ~/.bashrc
Pyenv quedo instalado para poder utilizarlo ejecutar las órdenes desde el .bashrc en el entorno actual del shell
source ~/.bashrc
Y ahora ya agregado al env el usuario puede utilizar la herramienta.
Usando Pyenv
Los siguientes comandos son similares, y muestran todas las versiones disponibles para instalar.
pyenv install --list
ó
pyenv install -l
En mi sistema solo existe una que puede ser mostrada con el comando:
pyenv versions
Para instalar la versión 3.5.0 ejecuto:
pyenv install 3.5.0
Y para cambiarse a la versión antes instalada ejecuto:
pyenv global 3.5.0
Una documentación mas extensa puede encontrarla aquí