Jueves 19/01/2023
ETIQUETA | Software
En realidad "apt" y "dpkg" son la misma cosa. De hecho "apt" utiliza a "dpkg" como "back-end" cuando realizamos una instalación. Podriamos definir a "apt" como una interfaz más amigable y completa que "dpkg".
Instalar paquetes locales (descargados previamente de internet) con "apt" en lugar de con "dpkg" tiene la ventaja de que "apt" busca y resuelve las dependencias faltantes.
En el siguiente cuadro te relaciono las cuatro principales funciones de "apt" y "dpkg" con sus diferencias y similitudes.
Función | apt | dpkg |
---|---|---|
1.- Instala paquetes remotos | Si | No |
2.- Instala paquetes locales | Si | Si |
3.- Resuelve dependencias | Si | No |
4.- Lista paquetes Instalados | Si | Si |
Si el paquete que queremos instalar se encuentra ya descargado en nuestro ordenador, solemos instalarlo con "dpkg" (al menos es mi costumbre), cuando sería más lógico hacerlo con "apt" para satisfacer las dependencias con una sola orden.
A modo de ejemplo voy a realizar la instalación del lector de libros foliate, que no se encuentra en los repositorios de Raspberry Pi OS, descargándolo de su página de githuh e instalándolo con ambos métodos:
Haciendo la instalación con "apt"
Lo descargamos con:
wget https://github.com/johnfactotum/foliate/releases/download/2.6.4/com.github.johnfactotum.foliate_2.6.4_all.deb -O foliate.deb
A la descarga con "wget" le hemos añadido al final "-O foliate.deb" para renombrarlo con un nombre más corto y posteriormente pasamos a instalarlo con "apt"
sudo apt install ./foliate.deb
El ./ (punto barra) que precede al nombre del archivo es la ruta relativa que le indica a "apt" que el archivo a instalar se encuentra en el directorio de trabajo actual.
Con esto quedaría instalado con sus dependencias necesarias.
Haciendo la instalación con "dpkg"
En caso de que hubieramos hecho la instalación con "dpkg" hubieramos necesitado los cuatro pasos siguientes:
wget https://github.com/johnfactotum/foliate/releases/download/2.6.4/com.github.johnfactotum.foliate_2.6.4_all.deb -O foliate.deb
sudo dpkg -i foliate.deb
sudo apt install -f
sudo dpkg -i foliate.deb
El tercer paso "sudo apt install -f" instalaría las dependencias faltantes y luego tendríamos que volver a ejecutar "sudo dpkg -i foliate.deb"
Más sobre el uso de "apt" y "dpkg" en este enlace: Apt vs Dpkg
Espero que este pequeño "tip" sea de utilidad.
Salud(os).