= Gestión paquetes
{{tag>linux}}
* [[linux:aptget:apt]]
* [[linux:aptget:repos]]
* [[linux:aptget:dpkg]]
* [[linux:aptget:aptitude]]
* [[linux:aptget:yum]]
* [[linux:aptget:ppa]]
* [[linux:aptget:apk]]
== verificar/actualizar paquete
* mirar si está en el sistema:dpkg --get-selections | grep
* mirar el detalle del paquete: dpkg -l
* actualizar paquete (no instala si no está): sudo apt-get --only-upgrade install
* ejecutar prueba de instalación/actualización:sudo apt-get --only-upgrade install libxml2 --dry-run
== apt-key deprecated
=== 2025/04 - ejemplo anydesk
extrapolar a otros repos....
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://keys.anydesk.com/repos/DEB-GPG-KEY -o /etc/apt/keyrings/keys.anydesk.com.asc
sudo chmod a+r /etc/apt/keyrings/keys.anydesk.com.asc
# Add the AnyDesk apt repository
echo "deb [signed-by=/etc/apt/keyrings/keys.anydesk.com.asc] https://deb.anydesk.com all main" | sudo tee /etc/apt/sources.list.d/anydesk-stable.list > /dev/null
=== previus
Se ha cambiado la manera de gestionar las claves de los repositorios (se abandona apt-key por gpg para la gestión del anillo de claves). Al final, hay que descargar la clave (sea binaria **.gpg** o txt **.asc**) en un directorio (**/etc/apt/trusted.gpg.d**, aunque hay otros sitios donde dejarlo)
* los ficheros en binario se reconocen en todas las versiones de **apt**, mientras que las armaduras ASCII solo a partir de >= 1.4
* también recomienda dejar las keys no gestionadas por apps en **/etc/apt/keyrings** -> haciendo pruebas con **anydesk** y **dropbox**, en esta ubicación no era reconocidas con un ''apt update''
man apt-key:
wget -qO- https://myrepo.example/myrepo.asc | sudo tee /etc/apt/trusted.gpg.d/myrepo.asc
# alternativamente
wget -qO- https://myrepo.example/myrepo.gpg | sudo tee /etc/apt/trusted.gpg.d/myrepo.gpg
* 2 maneras:
*
sudo apt install gnupg -y
wget -O- | gpg --dearmor | sudo tee /usr/share/keyrings/-archive-keyring.gpg
*
sudo mkdir -p /root/.gnupg/S.dirmngr
sudo gpg --no-default-keyring --keyring /usr/share/keyrings/-archive-keyring.gpg --keyserver --recv-keys
* haciendo pruebas con el repositorio de neurodebian, la key descargada con este último comando con su fingerprint no coincide con la misma descargada con ''sudo apt-key adv --recv-keys --keyserver hkps:%%//%%keyserver.ubuntu.com 0xA5D32F012649A5A9'' (no funciona)
sudo apt-key adv --recv-keys --keyserver hkps://keyserver.ubuntu.com
* deja en **/etc/apt/trusted.gpg**, a ser deprecado
Desde Microsoft, uso de **install**:sudo apt-get install wget gpg
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
sudo install -D -o root -g root -m 644 packages.microsoft.gpg /etc/apt/keyrings/packages.microsoft.gpg
sudo sh -c 'echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" > /etc/apt/sources.list.d/vscode.list'
rm -f packages.microsoft.gpg
Indicar donde está la KEY del repositorio (2 formatos):
deb [signed-by=/usr/share/keyrings/-archive-keyring.gpg]
deb [arch=amd64 signed-by=/usr/share/keyrings/-archive-keyring.gpg]
Types: deb
URIs: https://dl.winehq.org/wine-builds/ubuntu
Suites: focal
Components: main
Architectures: amd64 i386
Signed-By: /usr/share/keyrings/winehq-archive.key
/via: [[https://www.linuxuprising.com/2021/01/apt-key-is-deprecated-how-to-add.html]]
== neurodebian apt
Per afegir el repositori de Neurodebian correctament (les instruccions de la pàgina oficinal no funcionen pels canvis de la gestió de las **keys** amb APT)
* [[https://neuro.debian.net/#how-to-use-this-repository]]
- Descarregar **sources** i les claus, ubicant-les a **/usr/share/keyrings**
# per ubuntu 22.04
wget -O- http://neuro.debian.net/lists/jammy.de-m.full | sudo tee /etc/apt/sources.list.d/neurodebian.sources.list
#per tots
sudo GNUPGHOME=/tmp gpg --keyserver hkps://keyserver.ubuntu.com --no-default-keyring --keyring /usr/share/keyrings/neurodebian-archive-keyring.gpg --recv 0xA5D32F012649A5A9
- modificar els **sources** per indicar la ubicació de la clau
deb [signed-by=/usr/share/keyrings/neurodebian-archive-keyring.gpg] http://neuro.debian.net/debian data main
#deb-src [signed-by=/usr/share/keyrings/neurodebian-archive-keyring.gpg] http://neuro.debian.net/debian data main
deb [signed-by=/usr/share/keyrings/neurodebian-archive-keyring.gpg] http://neuro.debian.net/debian jammy main
#deb-src [signed-by=/usr/share/keyrings/neurodebian-archive-keyring.gpg] http://neuro.debian.net/debian jammy main
/via: [[https://github.com/neurodebian/neurodebian/issues/91]]
=== comandos ayuda GPG
gpg --dearmor < filename.txt > filename.bin
gpg --print-md sha1 filename
/via: [[https://www.linuxjournal.com/article/8732]]
== libc6 is not configured yet
error haciendo ''apt upgrade'', libreria no configurada, fallan dependencias (en este caso, libc6:i386)
sudo apt list --installed | grep libc6
sudo dpkg --configure -a