"Husmeando" en los repositorios Debian

Comandos Linux 17 de abr. de 2024

Contenido de los Repositorios de tu distribución

Seguramente en tu distribución Debian tengas configurados varios repositorios que usas o has usado para instalar software.

Lo que quizás no sabías es que puedes averiguar que otros paquetes hay disponibles en esos repositorio que has configurado de una forma muy sencilla.

Cuando configuras un repositorio, apt se encarga de recorrerlo internamente y apuntar todos los paquetes disponibles de ese repositorio para poder localizarlos fácilmente y en caso necesario resolver las dependencias.

La ruta en la que se queda ese listado completo es /var/lib/apt/lists/

Vamos a suponer que has configurado mi repositorio para instalarte alguna aplicación o paquete que he comentado en algún artículo...
¿Pero como puedes saber que otros paquetes hay disponibles?

Obteniendo la lista de "repos"

Lo primero que debes realizar es actualizar la lista mediante el comando apt:

sudo apt update

Despues, listaremos unicamente los ficheros que contienen la lista de paquetes disponibles:

ls -l /var/lib/apt/lists/|grep 'Packages' |grep -v 'Index'

Si por ejemplo quisieramos ver todos los paquetes disponibles para instalar que contiene repositorio.soloconlinux.org.es, simplemente ejecutariamos:

cat  /var/lib/apt/lists/repositorio.soloconlinux.org.es_dists_bookworm* | grep -ie 'Package:' -ie 'Description'|sed 's/Package/\nPackage/g'

...
Package: masterpdfeditor4
Description: Editor de Ficheros PDF. Version FREE para GNU/Linux

Package: nothingpad
Description: NothingPad. Un Bloc de Notas para Linux muy sencillo

Package: opencpn
Description: OpenSource Chart Plotter/Navigator

Package: qphotorec
Description: PhotoRec es un software de recuperación de datos de archivos
 diseñado para recuperar archivos perdidos, incluidos vídeos, imagenes,
 documentos y archivos de discos duros, CDs, DVDs y USBs.
 Compilado y empaquetado por SoloConLinux.

Package: sudo-usuarios
Description: sudo_comodo y sudo_seguro genera un fichero compatible con sudoers 

Package: textsnatcher
Description: Snatch Text with just a Drag

Package: theme-wingulo
Description: Theme WinGulo like Win10 for Desktop (Mate, Gnome, etc)

...

Si quieres ver el detalle completo de cada paquete disponible ejecuta:

cat  /var/lib/apt/lists/repositorio.soloconlinux.org.es_dists_bookworm*

...

Package: nothingpad
Version: 2.0
Architecture: amd64
Maintainer: Solo con Linux <luisgulo@soloconlinux.org.es>
Priority: optional
Section: editors
Filename: pool/main/n/nothingpad/nothingpad_2.0_amd64.deb
Size: 191892
SHA256: 1257c7c51083f466760053301d41f46d0ffe88dbec22d49320a3df0c58ef5b69
SHA1: ad926384e27b44477a5765b1ebd114497f9567d2
MD5sum: 3288f31888d79ac60c4d3cce10bece30
Description: NothingPad
 Un Bloc de Notas para Linux muy sencillo

Package: qphotorec
Version: 7.2-WIP-SoloConLinux-v2
Architecture: all
Maintainer: http://www.cgsecurity.org/wiki/Developers <http://www.cgsecurity.org/wiki/Developers>
Depends: libc6 (>= 2.34), libext2fs2 (>= 1.41.0), libjpeg62-turbo (>= 1.3.1), libncursesw6 (>= 6), libntfs-3g89, libtinfo6 (>= 6), libuuid1 (>= 2.16), zlib1g (>= 1:1.1.4), ntfs-3g
Priority: optional
Section: System
Filename: pool/main/q/qphotorec/qphotorec_7.2-WIP-SoloConLinux-v2_all.deb
Size: 1879988
SHA256: 0ad8947281cfd377b7204dc40f1e6f24a4e6ca51cdb8121f7c58ad19234ad050
SHA1: 0695d390ccf209af6f6a43e5ce1119f1f1296c29
MD5sum: 0220f9e649338677c7aeb5a19e61d0e3
Description: PhotoRec es un software de recuperación de datos de archivos
 diseñado para recuperar archivos perdidos, incluidos vídeos, imagenes,
 documentos y archivos de discos duros, CDs, DVDs y USBs.
 Compilado y empaquetado por SoloConLinux.

Package: sudo-usuarios
Version: 1.1
Architecture: all
Maintainer: Solo con Linux <luisgulo@soloconlinux.org.es>
Provides: sudo_comodo, sudo_seguro
Priority: optional
Section: system
Filename: pool/main/s/sudo-usuarios/sudo-usuarios_1.1_all.deb
Size: 1308
SHA256: 19e855eaad2d51642513dbd4e9a0f3806935c3cad9bb6654640c27db25c8102b
SHA1: 9852f2470e889aefb08a9af83acc9fc38e5cb705
MD5sum: 5eb09c5d5702efa98b01a8cf21200732
Description: sudo_comodo y sudo_seguro genera un fichero compatible con sudoers 
 sudo_comodo te permite usar sudo de forma comoda, no te pregunta la password de root al usarlo.
 sudo_seguto te permite usar sudo de forma segura, preguntandote cada vez la password de root.

Package: theme-wingulo
Version: 1.1
Architecture: all
Maintainer: Solo con Linux <luisgulo@soloconlinux.org.es>
Priority: optional
Section: desktop
Filename: pool/main/t/theme-wingulo/theme-wingulo_1.1_all.deb
Size: 43596588
SHA256: d85c39e90c8f1cbfe10f038a06c617cd694a57de216fa2b2ae494a51222dafa9
SHA1: 68654d9412128d8e609c12a94b7a0b3c34e96cdd
MD5sum: f60769126881801de72ea7ecd31dd074
Description: Theme WinGulo like Win10 for Desktop (Mate, Gnome, etc)
 https://soloconlinux.org.es 

...

De esta forma tan sencilla puedes "husmear" y localizar otros paquetes que quizás no sabías ni que estaban disponibles en los repositorios que tienes configurados en tu equipo Debian.


Localizar que paquete Debian contiene un programa o fichero

Como extra, un pequeño truco para dpkg que va a hacer tu vida de "debianita" más sencilla a la hora de localizar rapidamente programas o ficheros entre la paquetería.

Seguramente necesites usar un programa o localizar un fichero y no sepas que paquete Debian lo contiene, puedes usar el parámetro -S para localizar dentro de la paquetería Debian tanto instalada como disponible donde está.

dpkg -S programa

Ejemplo 1: Que paquete tengo que instalar para poder usar ldapsearch

$ dpkg -S ldapsearch

ldap-utils: /usr/share/man/man1/ldapsearch.1.gz
bash-completion: /usr/share/bash-completion/completions/ldapsearch
ldap-utils: /usr/bin/ldapsearch
fish-common: /usr/share/fish/completions/ldapsearch.fish

Vemos que el binario /usr/bin/ldapsearch está en ldap-utils

Ejemplo 2: Necesito saber donde podría estar glib.h para compilar algo...

$ dpkg -S glib.h

libdbus-glib-1-dev:amd64: /usr/include/dbus-1.0/dbus/dbus-glib.h
autoconf-archive: /usr/share/doc/autoconf-archive/html/ax_005flib_005ftaglib.html
libglib2.0-doc: /usr/share/gtk-doc/html/glib/glib.html
libjpeg62-turbo-dev:amd64: /usr/include/jpeglib.h
libharfbuzz-dev:amd64: /usr/include/harfbuzz/hb-glib.h
libglib2.0-dev:amd64: /usr/include/glib-2.0/glib.h

Vemos que si instalasemos libglib2.0-dev obtendríamos glib.h

Etiquetas

Luis GuLo

🐧 SysAdmin GNU/Linux - 🐳 Docker - 🖥️ Bash Scripting - 🐪 Perl - 🐬 MySQL - 👥 Formador de TI - 👥 Formador de SysAdmin's - 💢 Ansible - ☁️ Cloud Computing - ❤️ Debian GNU/Linux