64 lines
1.9 KiB
Markdown
64 lines
1.9 KiB
Markdown
# Instalación de dependencias para python
|
|
|
|
La conversion del código a Python 3 requiere actualmente los paquetes especificados en `requirements.txt`
|
|
|
|
Para instalar dependencias de python se usa el modulo venv (https://docs.python.org/3/library/venv.html) que instala todas las dependencias en un entorno independiente del sistema.
|
|
|
|
|
|
# Instalación rápida
|
|
|
|
|
|
## Distribuciones antiguas (18.04)
|
|
|
|
**Nota:** En 18.04, `uname` solo se encuentra en `/bin`, lo que causa un error inocuo en el log durante la creación de los repositorios:
|
|
|
|
Failed checking if running in CYGWIN due to: FileNotFoundError(2, 'No such file or directory')
|
|
|
|
Se arregla con el symlink incluido en las instrucciones mas abajo.
|
|
|
|
|
|
sudo apt install -y python3.8 python3.8-venv python3-venv libarchive-dev
|
|
sudo ln -sf /bin/uname /usr/bin/
|
|
python3.8 -m venv venvog
|
|
. venvog/bin/activate
|
|
python3.8 -m pip install --upgrade pip
|
|
pip3 install -r requirements.txt
|
|
|
|
Ejecutar con:
|
|
|
|
python3.8 ./opengnsys_git_installer.py
|
|
|
|
## Distribuciones nuevas (22.04)
|
|
|
|
sudo apt install python3 python3-venv libarchive-dev
|
|
python3 -m venv venvog
|
|
. venvog/bin/activate
|
|
python3 -m pip install --upgrade pip
|
|
pip3 install -r requirements.txt
|
|
|
|
## Agregar clave de SSH si es necesario
|
|
|
|
El proceso falla si no hay clave de SSH en la imagen. Utilizar:
|
|
|
|
/opt/opengnsys/bin/setsslkey
|
|
|
|
para agregarla.
|
|
|
|
# Ejecutar
|
|
|
|
**Nota:** Preferiblemente ejecutar como `root`, ya que `sudo` borra los cambios a las variables de entorno realizadas por venv. El resultado probable es un error de falta de módulos de Python, o un fallo del programa por usar dependencias demasiado antiguas.
|
|
|
|
# . venv/bin/activate
|
|
# ./opengnsys_git_installer.py
|
|
|
|
# Documentación
|
|
|
|
Se puede generar documentación de Python con una utilidad como pdoc3 (hay multiples alternativas posibles):
|
|
|
|
# Instalar pdoc3
|
|
pip install --user pdoc3
|
|
|
|
# Generar documentación
|
|
pdoc3 --force --html opengnsys_git_installer.py
|
|
|