Dpkg: Una herramienta intermedia. Antes de conocer como usar dpkg en Debian es preciso un poco de teoría.
El software dpkg es la raiz del sistema de gestión de paquetes de Debian GNU/Linux. Fue creado por Ian Jackson en 1993. Se utiliza para instalar, quitar y proporcionar información sobre los paquetes .deb.
Dpkg en si es una herramienta de bajo nivel. Se necesita un frontal de alto nivel para traer los paquetes desde lugares remotos o resolver conflictos complejos en las dependencias de paquetes. Debian cuenta por defecto con apt para esta tarea, adicional existen otras como aptitude o tasksel.
Tabla de contenido
Instalar un paquete con dpkg
Para instalar el paquete especificado incluyendo el desempaquetado y la configuración en el disco duro haremos una prueba con un paquete de gedit previamente descargado, empezamos:
dpkg –-install gedit_3.30.2-2_amd64.deb

Luego de procesar el paquete nos indica que fue instalado pero tiene dependencias rotas, para verificar dependencias usamos:
dpkg -s gedit | grep ^Depends:

Por ultimo usamos apt para instalar dependencias rotas de forma automatica:
sudo apt-get -f install

Mostrar ficheros que incluye un paquete deb
Para detallar que paquetes vienen encapsulados en un archivo .deb usamos -c y el nombre del archivo:
dpkg -c gedit_3.30.2-2_amd64.deb

De esta forma veras archivos, carpetas, documentación y otras cosas que trae incluido el paquete para instalar en tu sistema.
Listar paquetes ya instalados con dpkg
Para ver todos los paquetes en sistema usamos:
dpkg –l

Si queremos ver solo los que empiecen por una palabra en especial, adaptamos y usamos:
dpkg -l gedit*
Comprobar si un paquete esta instalado con dpkg
Si queremos verificar que haya sido instalado correctamente o simplemente queremos buscar otros paquetes:
sudo dpkg -s gedit

Desinstalar un paquete con dpkg
Seguiremos con nuestro paquete de ejemplo gedit pero recuerda cambiar este por el paquete que estés trabajando. En este caso haremos referencia al nombre del paquete y no al nombre del archivo .deb.
Para eliminar el paquete y todos los archivos de configuración usamos:
sudo dpkg -P gedit

Si queremos solo eliminar el paquete usaremos:
sudo dpkg -r gedit
dpkg –-contents nompaq_VV-R.deb
Otros parámetros para dpkg:
Desempaqueta un archivo .deb en el disco y lo deja sin configurar usando:
dpkg –-unpack nombrepaq_VV-R.deb
Para instalar un grupo de paquetes .deb que esten en una carpeta especifica usamos:
dpkg -R --install paquetesdeb/
Configura un paquete ya desempaquetado con:
dpkg –-configure nombrepaq
Configura todos los paquetes ya desempaquetados, suele ser útil cuando herramientas de alto nivel fallan y no terminan de configurar el paquete por errores no relacionados entre si:
dpkg –-configure –-pending
Lista los ficheros que contienen un paquete instalado:
dpkg –-listfiles nombrepaq
Borra un paquete pero deja los archivos de configuración:
dpkg –-remove nombrepaq
Borra un paquete eliminando todos los archivos de configuración:
dpkg --purge nombrepaq
Muestra el estado de un paquete:
dpkg --status nombrepaq
Lo siguiente nos muestra los paquetes que contienen archivos que coinciden con la palabra que queramos buscar:
dpkg --search PALABRA
Herramientas adicionales necesarias para construir un paquete .deb:
Por otro lado dpkg trae consigo otras herramientas que pueden sernos util en algunos casos, les dejo cada una con un resumen de su función, recomiendo usar –help en las que les resulte interesante.
Empaqueta y desempaqueta los archivos fuentes:
dpkg-source
Lee información de un árbol fuente debían desemquetado y genera un paquete binario de control generando una entrada para este en el fichero debian/files:
dpkg-gencontrol
Calcula las dependencias de ejecutables respecto a las librerías:
dpkg-shlibsdeps
Lee la informacion de un arbol fuente debian desempaquetado y ya construido, generando un fichero de control de los ultimos cambios (un.changes):
dpkg-genchanges
Es un script de control que se puede utilizar para automatizar la construcción de un paquete:
dpkg-buildpackage
Añade una entrada de un fichero a debian/files:
dpkg-distaddfile
Lee el fichero de cambios changes log, de un árbol debian fuente desempaquetado y genera una salida con la información de estos cambios, convenientemente preparado:
dpkg-parsechangelog
Esas serian las opciones básicas para entender el funcionamiento de dpkg, el corazón del gestor de paquete de Debian. Para mas información ingresa aquí.
Cualquier duda en los comentarios.