En este momento estás viendo Nala, instalación y uso con ejemplos

Nala, instalación y uso con ejemplos

Nala, instalación y uso con ejemplos

«Nala» es un frontend para «APT» que muestra la gestión de paquetes de una forma más fácil y más colorida. Esta herramienta facilita una interfaz de usuario más amigable para interactuar con «APT». Vemos sus características, como instalarlo y usarlo, con ejemplos.

Sumario

  • Que es «nala»
  • Características de «nala»
  • Instalación
  • Instalación de «nala» con «APT» desde los repositorios.
  • Instalación de «nala» con el paquete «.deb».
  • Instalación de «nala» con el código fuente.
  • Como usar «nala».

Que es nala

«Nala» es una interfaz para «libapt-pkg» que utiliza la API «python-apt». Es software libre con licencia GPL, que viene a traer una alternativa al uso del gestor de paquetes «APT», aunque realmente es una interfaz «frontend» para este gestor, como «Aptitude» o «Synaptic».

Para aquellos que se inician en el uso de sistemas GNU/Linux, puede ser un poco complejo conocer la manera de gestionar los paquetes de software de «APT» al instalar o actualizar software. Según sus desarrolladores, el objetivo de «nala» es resolver esta situación al no mostrar mensajes redundantes, formatear mejor los paquetes, y usar el color para mostrar lo que sucede con un paquete durante su instalación, eliminación o actualización.

Características de nala

Esta herramienta nos ofrece unas nuevas características muy interesantes. Veamos algunas.

Descargas paralelas

La principal característica es que nos brinda la posibilidad de descargas paralelas. Permite la descarga de 3 paquetes de un único espejo configurado en nuestro «sources.list». Al abrir múltiples conexiones con el mismo espejo, acelera la descarga de paquetes pequeños, además nos permite alternar descargas desde distintos espejos, mejorando aun más la velocidad. Si un espejo falla, lo intentará con otro hasta que se agoten los que tenemos definidos en nuestro sistema. Para descargar y verificar los paquetes, «nala» no utiliza «APT».

Nala fetch

Esta función es similar a «netselect» y «netselect-apt». Lo primero que hace es determinar la distribución que tenemos, y después busca los espejos disponibles de nuestra distro. Comprueba las latencias y clasifica los espejos para elegir los más rápidos. Todo un punto a su favor.

«fetch» solo funcionará en Debian, Ubuntu y todos los derivados vinculados a sus repositorios oficiales.

Nala history

Otra gran característica de «nala» es su función «history». Todas las instalaciones, actualizaciones y eliminaciones, las almacena en el fichero «/var/lib/nala/history.json» con un número de «ID» único.

Esto nos permite llamar a «nala history» para comprobar cada operación realizada y aplicar otros comandos como «nala history undo» o «nala history redo». Incluso podemos borrar, de este fichero del historial, aquello que ya no necesitemos con «nala history clear». Especificando el «ID», borrará esa entrada, sin el «ID» borrará todo el historial.

El repositorio oficial se encuentra en «https://gitlab.com/volian/nala», pero lo encontramos reflejado en varios sitios como «GitHub» e incluso «Debian Salsa».

Instalación

En algunos casos, no en el de Debian 11, está en los repositorios y no hay ningún requisito previo, instalamos «nala», reiniciamos la shell y ya lo podemos utilizar. Como hemos comentado, en Debian 11, «nala» no está disponible en los repositorios oficiales como paquete «.deb», pero podemos elegir la versión que queramos y descargar el paquete «.deb», o el código fuente desde su página oficial y compilar e instalar el software. Vemos las formas de instalación.

Para obtener instrucciones de instalación de los desarrolladores, puedes consultar su página wiki.

Instalación de nala con APT desde los repositorios

Esta es la forma más sencilla de instalar «nala». Primero, como siempre, actualizamos nuestro sistema

sudo apt update ; sudo apt upgrade -y
Actualización del sistema
Actualización del sistema

E instalamos «nala»

sudo apt install nala

Si te dice que no encuentra el paquete tendrás que añadir el repositorio con el comando siguiente

echo "deb-src https://deb.volian.org/volian/ scar main" | sudo tee -a /etc/apt/sources.list.d/volian-archive-scar-unstable.list
Añadimos el repositorio
Añadimos el repositorio

Y lo instalas, actualizando primero la lista de paquetes

sudo apt update && sudo apt install nala

Se descargará e instalará el paquete principal y todas las dependencias necesarias. Este método te obliga a utilizar un repositorio inestable, por lo tanto te recomiendo instalar «nala» con uno de los siguientes métodos.

Instalación de nala con el paquete «.deb»

En este caso tenemos que descargar el paquete «.deb» desde su página oficial. Podemos elegir entre las versiones disponibles. En nuestro caso elegimos «nala-legacy_0.11.0_amd64.deb». Lo he probado con otras versiones como la última «nala_0.12.2_all.deb», pero plantea problemas por versiones de «python» en Debian 11.

Página de descargas de nala
Página de descargas de nala

Y lo instalamos con

sudo apt install ./volian-archive*.deb
Instalación del paquete ".deb"
Instalación del paquete «.deb»

En la página oficial del proyecto recomiendan, instalar los siguientes paquetes

Paquetes recomendados
Paquetes recomendados

Instalar el repositorio y la clave

Para instalar el repositorio y la clave ejecuta

volian-archive-keyring_0.1.0_all.deb

Y uno de los siguientes paquetes

volian-archive-nala_0.1.0_all.deb
o
volian-archive-scar_0.1.0_all.deb

Dicen que para Ubuntu 21.04 y Debian 11 puede ser necesario «volian-archive-scar_0.1.0_all.deb». Y que este fichero permitirá que se instalen nuevas dependencias para que «nala» funcione. Aunque ya hemos visto que con la versión «nala-legacy_0.11.0_amd64.deb», no hemos tenido ningún problema.

Vemos la página de GitLab del proyecto
Vemos la página de GitLab del proyecto

Instalación de nala con el código fuente

Hay 2 opciones para instalar el código fuente.

  • Rama principal. Es la versión anterior a la versión actual.
  • Rama principal, pero eliges una versión específica.

Primero nos tenemos que asegurar de tener las dependencias requeridas instaladas.

sudo apt install git python3-apt python3-debian pandoc -y
Instalación de las dependencias requeridas
Instalación de las dependencias requeridas

El siguiente paso es clonar el repositorio de Git.

git clone https://gitlab.com/volian/nala.git

cd nala/
clonar el repositorio de Git
clonar el repositorio de Git

Si necesitas una versión específica, clona y compila con

git clone --branch=v0.12.1 https://gitlab.com/volian/nala.git

cd /nala

sudo make install

Nos pide que instalemos pip3

sudo apt install python3-pip
Instalación de python3-pip
Instalación de python3-pip

Y lo instalamos

sudo make install
Instalando el software
Instalando el software

Al final de la salida anterior nos dice que instalemos el fichero de configuración de «nala»

sudo mkdir -p /etc/nala

sudo cp debian/nala.conf /etc/nala/nala.conf 
Ejemplo de funcionamiento de nala
Ejemplo de funcionamiento de nala

Para versiones anteriores como Debian 10 «Buster» y derivados como Ubuntu 20.04, la instalación es un poco diferente

Con los siguientes comandos instalarás «nala» con «pip», junto con las páginas de manual, las traducciones, las terminaciones de shell y el archivo de configuración.

«nala» requiere «python3.9+», y estas distribuciones no la tienen instalada. Con este método instalamos python3.10 desde su código fuente, ya que es la versión con la que se desarrolla «nala». Descargamos todas las dependencias.

sudo apt-get install -y wget build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev libbz2-dev

Compilamos e instalamos «nala»

sudo make legacy

Con este método, cada vez que queramos actualizar, deberemos ejecutar el siguiente comando, para que omita la actualización de «python».

sudo make legacy-update

Y para desinstalarlo

sudo make uninstall
o 
sudo make uninstall-legacy

Como usar nala

Vemos con algunos ejemplos como utilizar «nala»

Instalación de paquetes

Ya lo tenemos instalado y disponible. Lo podemos utilizar para instalar y administrar paquetes en nuestro sistema. Veamos como funciona.

Para instalar paquetes la sintaxis es muy sencilla

sudo nala install [nombre_del_paquete]

Por ejemplo, en este caso instalamos el paquete «nfs-kernel-server».

sudo nala install nfs-kernel-server
Instalando paquetes con nala
Instalando paquetes con nala

La salida del comando nos muestra una lista formateada de los paquetes que van a ser instalados. Presionas «Y» y comienza la instalación.

Ejecutando la instalación
Ejecutando la instalación

Como vemos en la captura, el instalador muestra dos secciones separadas para descargar e instalar los paquetes, cada una con su barra de progreso. Al finalizar nos mostrará el mensaje «Terminado con exito».

Instalación terminada con éxito
Instalación terminada con éxito

Eliminación de paquetes

La sintaxis también es muy sencilla. Como ves el uso es igual a «apt».

sudo nala remove [nombre_del_paquete]

Desinstalamos el paquete anterior

sudo nala remove nfs-kernel-server

Aquí veremos la barra de progreso y el mensaje de confirmación cuando termine.

Eliminando paquetes con nala
Eliminando paquetes con nala

Eliminación de paquetes y configuración del software

Para esta acción utilizamos el comando «purge», que desinstalará la aplicación y toda la configuración que hayamos hecho.

sudo nala purge [nombre_del_paquete]

En mi caso

sudo nala purge nfs-kernel-server
Eliminación del paquete y su configuración
Eliminación del paquete y su configuración

Actualización de paquetes

Para actualizar la lista de paquetes disponibles en los repositorios que tengamos en «sources.list» ejecutamos

sudo nala update
Actualización de paquetes con nala
Actualización de paquetes con nala

Realiza lo mismo que «apt update» y nos muestra un mensaje indicando si hay paquetes para instalar.

Lista de paquetes disponibles

Para ver la lista de paquetes disponibles para instalar ejecuta

nala list
Lista de paquetes disponibles con nala
Lista de paquetes disponibles con nala

Nos da una lista muy larga de paquetes que puedes instalar.

Si añadimos la opción «upgradeable» nos dirá los paquetes que podemos actualizar.

nala list --upgradeable
Paquetes para actualizar con nala
Paquetes para actualizar con nala

Otras opciones que podemos utilizar con «list» son

  • –installed (-i) muestra solo los paquetes instalados en el sistema.
  • –nala-installed (-N) muestra los paquetes instalados usando nala.
  • –all-versions (-a) [nombre_del_paquete] enumera todas las versiones del paquete dado.

Actualización de paquetes

Si lo que queremos es actualizar paquetes ya instalados

sudo nala upgrade
Actualización de paquetes instalados con nala
Actualización de paquetes instalados con nala

Cuando ejecutamos este comando, «nala» primero actualiza la lista de paquetes, y luego nos muestra una lista de paquetes a actualizar. Con «Y» y «Enter», se iniciará el proceso. Al acabar tendremos el mensaje de confirmación.

Nala fetch

Como hemos comentado en las características de «nala», una de las ventajas que tiene sobre «APT», es que selecciona los espejos de descarga más rápidos. Genera una lista de espejos de descargas ordenada por latencias, para que elijamos.

Para ver esta lista ejecuta

sudo nala fetch

«nala» hace su trabajo y nos muestra la lista ordenada

Lista de espejos disponibles
Lista de espejos disponibles

Ahora elegimos los espejos que queremos utilizar, indicando los números del índice mostrado, separados por un espacio, presionamos «Enter» y confirmamos con «Y».

«nala» escribirá la nueva lista de espejos en nuestro fichero «/etc/apt/sources.list.d/nala-sources.list».

Elegimos espejos
Elegimos espejos

Ver detalles de los paquetes

Para ver los detalles de un paquete concreto ejecuta

nala show [nombre_del_paquete]
# por ejemplo
nala show xwayland
Ver los detalles de un paquete
Ver los detalles de un paquete

En la salida del comando anterior veremos información esencial del paquete, como el nombre, versión, la arquitectura, el tamaño, la sección del repositorio, la información del mantenedor, la descripción del paquete y las dependencias.

Historial de nala

Otra de las características que hemos comentado, es que «nala», crea una lista de operaciones realizadas, asignándoles un identificador único «ID». Podemos ver el historial de operaciones realizas con «nala». Para ello ejecuta

nala history
Historial de nala
Historial de nala

Tienes más opciones como por ejemplo, para deshacer los cambios realizados por una operación ejecuta

sudo nala history undo [operación-id]

Para revertir los cambios

sudo nala history redo [operación-id]

Si quieres borrar una entrada del historial

sudo nala history clear [operación-id]

Para borrar la lista entera del historial

sudo nala history clear --all

Limpiar el repositorio local

Para eliminar los ficheros de caché locales ejecuta

sudo nala clean

Otros argumentos disponibles

Aún tenemos más opciones, las vemos

  • –assume-yes (-y) proporciona la respuesta afirmativa a todas las solicitudes y permite que el comando se ejecute de forma no interactiva.
  • –debug y –verbose (-v) proporcionan información adicional relacionada con la depuración.
  • –download-only (-d) le dice a «nala» que descargue paquetes pero no que los desempaquete ni instale.
  • –help (-h) muestra la sección de ayuda.
  • –no-autoremove desactiva la eliminación automática de paquetes.
  • –no-update le indica a nala que omita la actualización de los paquetes.
  • –raw-dpkg deshabilita el formateo y muestra la salida de «dpkg» sin procesar.
  • –remove-essential permite eliminar todos los paquetes, incluidos los esenciales.
  • –update le dice a nala que realice la actualización del paquete.
  • –version muestra el número de versión de nala.

Si tienes algún comentario que hacer sobre este artículo, al pie del post tienes un formulario para hacerlo.

Si quieres contactar conmigo por cualquier otro asunto relacionado con el sitio, en la página de contacto , tienes un formulario más adecuado.

Y para suscribirte y recibir las novedades publicadas, tienes un enlace en pie de la página o desde aquí mismo.

Deja una respuesta

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