Me falla la actualización de mi linux manjaro

al actualizar mi manjaro me dice que hay un fallo al preparar la operación, luego dice…
no se pudieron satisfacer las dependencias:

  • incapaz de satisfacer la dependenciaexpat=2.7.0’ requerida por lib32-expat

alguien sabe como reparar ese problema?

muchas gracias de antemano

¿Será que necesitas el paquete expat o tienes instalada una versión antigua? Instala la última (2.7.1) con:

sudo pacman -S expat

Y luego prueba a actualizar.

1 Like

maestro, hice lo que escribiste y me respondió esto la terminal…

resolviendo dependencias…
buscando conflictos entre paquetes…
error: no se pudo preparar la operación (no se pudieron satisfacer las dependencias)
:: instalando expat (2.7.1-1) se rompe la dependencia con «expat=2.6.4», necesaria para el paquete lib32-expat

Parece que ya le sucedió lo mismo a alguien hace unos meses:

Lo solucionó con sudo pacman -Rdd lib32-expat y luego sudo pacman -Syu comprobando también que en /etc/pacman.conf no esté desactivado el repositorio [multilib].

primero puse sudo pacman -Rdd lib32-expat …hasta ahí bien

después puse sudo pacman -Syu y sucedió esto…

Sincronizando las bases de datos de los paquetes…
error: no se han podido sincronizar todas las bases de datos (no se pudo bloquear la base de datos)

:frowning:

Prueba esto:

sudo rm /var/lib/pacman/db.lck 
sudo pacman -Scc
sudo pacman-mirrors -c Global 
sudo pacman -Syyu

Actualizará tus espejos, limpiará tu caché.

2 Likes

Cuando haces una actualización crea un fichero /var/lib/pacman/db.lck que indica que está usando la base de datos de paquetes y al acabar lo borra. Por algún motivo lo ha creado y no lo ha borrado, así que cuando intentas ejecutar pacman se cree que la base de datos está siendo usada y da ese error. La solución es borrarlo como te dice Wollie. Que haya suerte y lo soluciones definitivamente.

1 Like

Tal vez podrias empezar por mostrar la conf de tu pacman.

realicé sudo rm /var/lib/pacman/db.lck …como respuesta obtuve…
no se puede borrar ‘/var/lib/pacman/db.lck’: No existe el fichero o el directorio

Luego realicé sudo pacman -Scc y todo bien, luego realicé sudo pacman-mirrors -c Global y ningún problema …

…pero luego realicé sudo pacman -Syyu y sucedió lo siguiente …
Sincronizando las bases de datos de los paquetes…
core 142,4 KiB 307 KiB/s 00:00 [######################] 100%
extra 8,3 MiB 6,21 MiB/s 00:01 [######################] 100%
no se pudo descargar community.db
error: no se pudo obtener el archivo «community.db» desde mirrors2.manjaro.org: The requested URL returned error: 404
error: no se pudo obtener el archivo «community.db» desde mirrors.manjaro.org: The requested URL returned error: 404
error: no se han podido sincronizar todas las bases de datos (no se pudieron descargar algunos archivos)

:frowning:

El repositorio community ya no existe. Edita el fichero /etc/pacman.conf, busca estas tres líneas y bórralas o ponles un # delante.

[community]
SigLevel = PackageRequired
Include = /etc/pacman.d/mirrorlist
2 Likes

maestro, solo se cortar y pegar las lineas para el comando, no entiendo lo otro que me dices. Si me das las lineas para la terminal, las corto y las pego. Conozco lo básico de linux.

puse las dos líneas de comando que me diste y me respondió …
orden no encontrada

No eran órdenes para teclear. Tienes que editar un fichero desde el terminal. Pon:

sudo nano /etc/pacman.conf

Te aparecerá el contenido del fichero que controla las actualizaciones. Baja hasta encontrar la linea:

[community]

Y le pones un # delante para anularla. Justo a continuación vendrán otras dos líneas, una que empieza por Siglevel o otra que empieza por Include. Lo mismo, ponle un # delante de cada una.

Guardas el archivo (Ctrl+W para guardar, Ctrl+X para salir) y ya deberías poder actualizar sin problemas.

entendido, lo único que no me funciona es ctr+W ni ctr+X, me lanza la parte inferior de la terminal donde dice Buscar:

Lo dije de memoria y me debí equivocar en alguno, quizá grabar sea Ctrl+S y Ctrl+W es buscar.

Casi mejor dale directamente a Ctrl+X y te preguntará si lo quieres guardar (le dices que si).

lo logré, ahora pasa esto: al actualizar me sale lo siguiente…

no se pudieron satisfacer las dependencias:

  • incapaz de satisfacer la dependenciaexpat=2.7.0’ requerida por lib32-expat
  • incapaz de satisfacer la dependencialib32-expat’ requerida por lib32-fontconfig
  • incapaz de satisfacer la dependencialibexpat.so=1-32’ requerida por lib32-fontconfig

control+o >> save
control+x >> exit

[xavier@bienllegau ~]$ pamac info expat
Nombre                    : expat
Versión                   : 2.7.1-1
Descripción               : An XML parser library
URL                       : https://libexpat.github.io/
Licencias                 : MIT
Repositorio               : core
Tamaño de la Instalación  : 452,1 kB
Grupos                    : --
Depende de                : glibc
Dependencias opcionales   : --
Requerido por             : audacity avahi dbus dbus-broker dbus-glib exiv2
                            fontconfig git lib32-expat libreoffice-fresh libwmf
                            mesa neon perl-xml-parser polkit python
                            qt6-webengine vulkan-intel vulkan-radeon wayland
                            webkit2gtk webkit2gtk-4.1 webkitgtk-6.0
                            wxwidgets-common
Opcional para             : --
Provee                    : libexpat.so=1-64
Reemplaza                 : --
Entra en conflicto con    : --
Empaquetador              : David Runge <dvzrv@archlinux.org>
Fecha de creación         : vie 28 mar 2025 08:22:05
Fecha de instalación      : mar 15 abr 2025 12:50:43
Motivo de instalación     : Instalado como dependencia para otro paquete
Validado por              : Signature
Respaldar archivos        : --

[xavier@bienllegau ~]$ ^C
[xavier@bienllegau ~]$ pamac info lib32-expat
Nombre                    : lib32-expat
Versión                   : 2.7.1-1
Descripción               : An XML Parser library
URL                       : https://libexpat.github.io/
Licencias                 : MIT
Repositorio               : multilib
Tamaño de la Instalación  : 178,0 kB
Grupos                    : --
Depende de                : expat=2.7.1 lib32-glibc
Dependencias opcionales   : --
Requerido por             : lib32-fontconfig lib32-mesa lib32-vulkan-intel
                            lib32-vulkan-radeon lib32-wayland
Opcional para             : --
Provee                    : libexpat.so=1-32
Reemplaza                 : --
Entra en conflicto con    : --
Empaquetador              : David Runge <dvzrv@archlinux.org>
Fecha de creación         : vie 28 mar 2025 08:27:38
Fecha de instalación      : mar 15 abr 2025 12:50:50
Motivo de instalación     : Instalado como dependencia para otro paquete
Validado por              : Signature
Respaldar archivos        : --

remove 2.7.0 and then install new version2.7.1?

1 Like

And I use it every day… My goodness, what a terrible memory I have. :laughing:

Lo mismo, parece que sin actualizar expat no te deja actualizar todo y expat no te lo deja actualizar por lo de las dependencias. Tienes una opción que es obligarlo a instalar directamente esos dos paquetes sin hacer comprobaciones:

sudo pacman -Sd expat lib32-expat

Y a continuación actualizar todo lo demás. No sé si tienes instalado Timeshift, por si acaso sería recomendable que hicieras una copia de seguridad antes.

Por curiosidad, ¿hace mucho tiempo que no actualizabas el sistema?

1 Like

maestro:

realicé sudo pacman -Sd expat lib32-expat y respondió…

advertencia: archivo de configuración /etc/pacman.conf, linea 82: directiva «[community]#» en sección «extra» no reconocida.
error: archivo de configuración /etc/pacman.conf, línea 83: valor incorrecto para «SigLevel» : «PackageRequired#»

con respecto a las actualizaciones, hace más de un mes que tengo este problema, por eso no he actualizado :frowning:

A ver, te doy una pista… :smiley:

le puse la # delante, no entiendo la pista maestro, recuerda que tengo conocimientos básicos de linux. Gracias de antemano.