Administrador de paquetes GNU Guix

GNU Guix es una herramienta funcional de gestión de paquetes escrita para el sistema GNU. A diferencia de los gestores de paquetes tradicionales, Guix (al igual que Nix, en el que se basa Guix) utiliza un modelo de implementación puramente funcional en el que el software se instala en directorios únicos generados a través de hashes criptográficos, que incluyen todas las dependencias del mismo. Utiliza mecanismos de bajo nivel del administrador de paquetes Nix, pero la configuración y las recetas de paquetes están escritas en Guile Scheme. GNU Guix proporciona 27.030 paquetes disponibles de forma transparente como binarios preconstruidos. Estos paquetes se definen como módulos nativos de Guile, lo que lo convierte en un sistema hackeable.

Características principales de Guix

  • Actualización transaccional
  • Retrocesos
  • Entornos de construcción reproducibles
  • Administración de paquetes sin privilegios
  • Perfiles por usuario
  • más de 28,000 paquetes disponibles

Instalando Guix, actualizando y configurando

Para instalar la herramienta de administración de paquetes Guix, abra un Terminal y ejecute:

$ sudo apt install guix
Para actualizar el demonio de compilación, ejecute
$ sudo -i guix pull
Esto llevará algún tiempo. A continuación, ejecute
$ sudo systemctl restart guix-daemon.service
Ahora, todas las operaciones se ejecutan sin sudo, cada usuario tiene su propia versión de Guix y sus propios paquetes instalados, que son diferentes a los de otros usuarios.

Para actualizar las herramientas de Guix junto con la distribución de los paquetes instalados, ejecute

 guix pull
Esto llevará algún tiempo.

Para integrar Guix en el sistema, ejecute estos pocos comandos:

 bash -l
 guix install glibc-locales
 exit
 bash -l  
 guix install fontconfig font-dejavu font-gnu-freefont gs-fonts
 fc-cache -rv
Puede ignorar los mensajes para establecer variables de entorno porque se establecen automáticamente en un shell de inicio de sesión (lo que se hace mediante "bash -l").

Ejecute lo siguiente para evitar problemas al abrir una sesión gráfica:

 cat >> ~/.profile << EOF
 export XDG_DATA_DIRS="/usr/local/share:/usr/share/\${XDG_DATA_DIRS:+:}\$XDG_DATA_DIRS"
 EOF
Ahora, cierre y vuelva a abrir la sesión gráfica, para asegurarse de que todas las variables de entorno estén configuradas correctamente para que las aplicaciones instaladas desde Guix sean visibles en los menús de MATE.

Ejemplo de cómo instalar un paquete con Guix

Como se muestra arriba, ejecute 'guix install [paquete]' para instalar un paquete.

Para instalar el navegador web GNU IceCat, por ejemplo, ejecute:

 guix install icecat
Después de instalar un paquete, es posible que desee cerrar y volver a abrir la sesión para que todas las variables de entorno se establezcan correctamente.

Actualizando los paquetes instalados

Para actualizar Guix, ejecute
 guix pull
Para actualizar los paquetes instalados, ejecute
 guix package --upgrade
o

 guix package -u

Espacio en la partición raíz

Guix puede ocupar mucho espacio en la partición raíz. Puede verificar cuánto se usa en su partición raíz ejecutando

 df -h /
 Filesystem                   Size  Used Avail Use% Mounted on
 /dev/mapper/vgtrisquel-root  883G  174G  665G  21% /
En este ejemplo, el espacio disponible es de 665 G, que es muy grande. Si el tamaño disponible es inferior a 10 G, considere hacer espacio.

Para hacer espacio, ejecute el recolector de elementos no utilizados de Guix

 gc
Cada vez que se ejecuta "guix upgrade", se crea una nueva "generación" y se mantienen las generaciones anteriores, con versiones anteriores de los paquetes instalados.

Si necesita ahorrar espacio y no necesita usar versiones anteriores de los paquetes instalados, ejecute

 guix package --delete-generations
Y entonces
 gc

Lecturas Adicionales y Videos

https://guix.gnu.org/en/help/

Fuentes

Revisiones

05/28/2025 - 20:49
Carlos segura