Instalar dependencias de desarrollo#

El contenido de este repositorio se convierte de archivos fuente escritos en Markdown hacia un sitio estático HTML que está hospedado en GitLab pages. Esto es posible gracias al software mkdocs que se puede ejecutar en el pipeline de CI/CD de GitLab o de manera local utilizando el Makefile que viene incluido en el sitio.

El repositorio también tiene un archivo de configuración del software pre-commit que nos ayuda a evitar los errores comunes cuando se envían archivos al repositorio de git.

Note

  • Se muestran los comandos para instalar las dependencias en las distribuciones compatibles con Debian y Enterprise Linux
  • En otras distribuciones de GNU/Linux se utilizan diferentes gestores de paquetes:
    • apk, emerge, zypper, tce, nix, xbps, …
  • Si utilizas macOS, puedes instalar paquetes con brew
  • Si utilizas Windows, puedes instalar paquetes con choco, winget o de manera manual

Instalación git#

Necesitas tener la herramienta git instalada para hacer uso de los repositorios.

Para Debian se instala con apt

root@debian:~# apt install git

En Enterprise Linux se instala con yum o dnf

[root@rocky ~]# dnf install git

Si utilizas macOS, puedes instalar mediante brew

% brew install git

Si utilizas Windows, puedes instalar via choco

PS C:\> choco install git

También puedes utilizar winget

PS C:\> winget install git

Instalación de make#

Es necesario instalar make para construir el sitio de manera local.

root@debian:~# apt install build-essential make
[root@rocky ~]# dnf groupinstall 'Development Tools'

Instalación de herramientas adicionales#

Instala las herramientas adicionales

root@debian:~# apt install tree
[root@rocky ~]# dnf install tree

Instalación de Python#

Instala el lenguaje de programación Python con la versión 3.11, 3.12 o 3.13 en tu máquina local.

Para Debian se instala con apt

root@debian:~# apt install python3

En Enterprise Linux se instala con yum o dnf

[root@rocky ~]# dnf install python3

Si utilizas macOS, puedes instalar mediante brew

% brew install python3

Puedes descargar el instalador y ejecutarlo manualmente:

  • https://www.python.org/downloads/windows/

Si utilizas Windows, puedes instalar via choco

- https://community.chocolatey.org/packages?q=python
PS C:\> choco install python3

También puedes utilizar winget

- https://winstall.app/apps?q=python
PS C:\> winget install git

Instalación de dependencias de Python#

Los programas pre-commit y mkdocs están escritos en Python y son necesarias las dependencias de desarrollo para el manejador de paquetes de Python (pipx) para poder instalarlos en el sistema.

# apt install python3-dev python3-pip pipx

Verifica que tengas pip3 instalado y actualizado.

$ which pipx
/usr/bin/pipx

Danger

  • Asegúrate de ejecutar pipx y no pip
  • Nunca debes ejecutar pipx con sudo

Agrega una ruta para alterar la variable de entorno PATH para tu usuario.

Utilizando pipx#

$ pipx ensurepath
Success! Added /home/tonejito/.local/bin to the PATH environment variable.

Consider adding shell completions for pipx. Run 'pipx completions' for instructions.

You will need to open a new terminal or re-login for the PATH changes to take effect.

Otherwise pipx is ready to go! ✨ 🌟 ✨

Configuración manual de PATH#

$ echo 'export PATH=${HOME}/.local/bin:${PATH}' >> ~/.bashrc

Note

  • Revisa que sólo tengas una vez la línea de export PATH en tu archivo ~/.bashrc

Warning

Debes de realizar alguna de las siguientes acciones después de modificar el archivo ~/.bashrc:

  • Ejecuta source ~/.bashrc en la terminal actual para incluir los cambios
  • Abre otra ventana de la terminal para que se lea el nuevo contenido del archivo ~/.bashrc
  • Cierra y abre tu sesión para que reconozca los cambios
  • Reinicia tu máquina

Instalación de pre-commit#

Instala pre-commit en tu perfil de usuario.

$ pipx install pre-commit
  creating virtual environment
  installing pre-commit
  installed package pre-commit 3.4.0, installed using Python 3.11.2
  These apps are now globally available
    - pre-commit
done! ✨ 🌟 ✨

Danger

  • Asegúrate de ejecutar pipx y no pip
  • Nunca debes ejecutar pipx con sudo

Verifica que el shell reconozca la ubicación de pre-commit.

$ which pre-commit
/home/tonejito/.local/bin/pre-commit

Instalación de mkdocs#

Se instala mkdocs para ejecutar el equivalente del pipeline de CI/CD de manera local.

$ pipx install mkdocs
creating virtual environment
installing mkdocs
⚠️  Note: mkdocs was already on your PATH at /usr/bin/mkdocs
installed package mkdocs 1.6.0, installed using Python 3.11.2
These apps are globally available
- mkdocs
done!

Danger

  • Asegúrate de ejecutar pipx y no pip
  • Nunca debes ejecutar pipx con sudo

Verifica que el shell reconozca la ubicación de mkdocs.

$ which mkdocs
/home/tonejito/.local/bin/mkdocs

Descarga el archivo requirements.txt de la página del curso.

$ wget -c -nv 'https://Redes-Ciencias-UNAM.gitlab.io/requirements.txt'

Instala las dependencias de mkdocs utilizando el archivo requirements.txt

$ sed '/^#/d' < requirements.txt | xargs pipx inject mkdocs
  injected package pre-commit into venv mkdocs
done! ✨ 🌟 ✨
  injected package mkdocs into venv mkdocs
done! ✨ 🌟 ✨
  injected package mkdocs into venv mkdocs
done! ✨ 🌟 ✨
  injected package mkdocs-material into venv mkdocs
done! ✨ 🌟 ✨
  injected package mkdocs-material-extensions into venv mkdocs
done! ✨ 🌟 ✨
  injected package mkdocs-exclude into venv mkdocs
done! ✨ 🌟 ✨
  injected package pymdown-extensions into venv mkdocs
done! ✨ 🌟 ✨
  injected package mkdocs-pymdownx-material-extras into venv mkdocs
done! ✨ 🌟 ✨
  injected package mkdocs-awesome-pages-plugin into venv mkdocs
done! ✨ 🌟 ✨
  injected package icalendar into venv mkdocs
done! ✨ 🌟 ✨

Note

Este comando tarda un poco en instalar todas las dependencias dentro del venv creado por pipx para mkdocs


Note


Página anterior Arriba Página siguiente