single-image

Nix: Un gestor de paquetes puramente funcional para GNU/Linux

Nix es un potente sistema de gestión de paquetes puramente funcional diseñado para una gestión de paquetes fiable y reproducible, publicado bajo los términos de la LGPLv2.1 de GNU. Es el principal sistema de gestión de paquetes en NixOS, una distribución de Linux poco conocida.

Nix ofrece actualizaciones, múltiples versiones de instalación de paquetes, gestión de paquetes multiusuario y configuración sin esfuerzo de entornos de compilación para un paquete, independientemente de los lenguajes de programación y herramientas que utilice un desarrollador.

Bajo Nix, los paquetes se construyen a partir de un lenguaje de paquetes funcional llamado “Nix Expressions”. Este enfoque funcional de la gestión de paquetes garantiza que la instalación o actualización de un paquete no pueda romper otros paquetes.

Nix también tiene soporte multiusuario, lo que implica que los usuarios normales (o no privilegiados) del sistema pueden instalar paquetes de forma segura y cada usuario es identificado por un perfil (una colección de paquetes en la tienda Nix que aparecen en el PATH del usuario).

En caso de que un usuario haya instalado un paquete, si otro usuario intenta instalar el mismo paquete, el paquete no se creará ni se descargará por segunda vez.

Actualmente soporta Linux (i686, x86_64) y Mac OS X (x86_64). Sin embargo, es bastante portable, puedes probarlo en la mayoría de las plataformas que soportan POSIX y tienen un compilador C++11.

En este artículo, mostraremos cómo instalar (en modo multiusuario) y usar el gestor de paquetes Nix en Linux. Discutiremos algunas de las tareas básicas de gestión de paquetes en relación con las herramientas comúnmente utilizadas.

Cómo instalar Nix Package Manager en Linux

Instalaremos la última versión de Nix (v2.1.3 en el momento de escribir este artículo) en modo multiusuario. Afortunadamente, hay un script de instalación preparado que puedes ejecutar desde tu shell como un usuario normal usando el siguiente comando curl en tu sistema.

$ sh <(curl https://nixos.org/nix/install) --daemon

Ejecutando el comando anterior descargará el último tarball binario nix, y aterrizará en la pantalla de instalación multiusuario nix como se muestra en la captura de pantalla.

 

 

 

 

 

 

 

 

 

Para ver una lista detallada de lo que sucederá durante el proceso de instalación, escribe y y pulsa Enter. Si estás satisfecho y listo para continuar, escribe y y y pulsa Enter.

El script invocará el comando sudo muchas veces según sea necesario. Necesitas permitirle usar sudo contestando y y presionando Enter.

El instalador ejecutará algunas pruebas y generará un informe de configuración de Nix, creará usuarios de build entre los IDs de usuario 30001 y 30032, y un grupo con el ID de grupo 30000. Introduce y para continuar cuando se te pida. Establecerá los grupos de compilación para los diferentes usuarios de la compilación, haciendo la estructura básica de directorios de Nix.

Modificará el fichero /etc/bashrc, (y /etc/zshrc para el zsh) si existen. Ten en cuenta que primero realiza una copia de seguridad de los archivos mencionados con una extensión.backup-before-nix y el instalador también crea el archivo /etc/profile.d/nix.sh.

El instalador también configurará el servicio nix-daemon y el servicio nix-daemon socket, cargará la unidad systemd para nix-daemon e iniciará los dos servicios mencionados anteriormente.

Una vez finalizada la instalación, es necesario abrir una nueva ventana de terminal para comenzar a utilizar Nix. Alternativamente, cierra y vuelve a abrir tu shell para aplicar los cambios recientes. Luego busca el archivo /etc/profile.d/nix.sh (debido a que no es un archivo de inicio de shell, abrir un nuevo shell no lo hará).

$ source /etc/profile.d/nix.sh

A continuación, ejecuta el siguiente comando para descargar algunas rutas de la página web oficial del proyecto, necesarias para que Nix funcione. Después de descargar y copiar todas las rutas a las ubicaciones correctas, verás un resumen del tipo de instalación del sistema y de Nix como se muestra en la captura de pantalla.

$ nix-shell -p nix-info --run "nix-info -m"

 

Cómo usar Nix Package Manager en Linux

En Nix, la gestión de paquetes se realiza mediante la utilidad nix-env. Se utiliza para instalar, actualizar y eliminar/borrar paquetes, y para consultar qué paquetes están instalados o están disponibles para su instalación.

Todos los paquetes se encuentran en un canal Nix, que es una URL que apunta a un repositorio que comprende tanto una colección de expresiones Nix como un puntero a una caché binaria.

El canal por defecto es Nixpkgs y la lista de canales suscritos se almacena en canales ~/.nix, puedes listarlos usando el siguiente comando (sin salida significa sin canales).

Comparte

(Artículo visitado 243 veces, 1 visitas hoy)

Responder

avatar
Photo and Image Files
 
 
 
Audio and Video Files
 
 
 
Other File Types
 
 
 

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

  Suscribirse  
Notificarme de

Quizás también te interese ..