Failed update due to lib32-expat

Whenever I try to update my system using yay or sudo pacman -Syu, it fails because it says that updating will breaking lib32-expat, which I forget why I installed. Here is a screenshot.

Please post terminal output as text and not screenshot.

Simply copy, paste and press Ctrle-E to fornat.

Also posting the whole output from the beginning might reveal some useful info.

In this case for example if multilib repo is enabled in /etc/pacman.conf or not.

Please check!

3 Likes
<pre>[southdude@southdude-rp15 ~]$ yay
[sudo] password for southdude: 
:: Synchronizing package databases...
 core is up to date
 extra                   8.4 MiB  3.96 MiB/s 00:02 [######################] 100%
:: <b>Searching AUR for updates...</b>
:: <b>Searching databases for updates...</b>
 -&gt; yad: local (13.0-2.1) is newer than extra (13.0-2)
 -&gt; Packages not in AUR: arc-gtk-theme-eos  endeavouros-keyring  endeavouros-mirrorlist  endeavouros-theming  eos-apps-info  eos-bash-shared  eos-hooks  eos-lightdm-slick-theme  eos-log-tool  eos-packagelist  eos-qogir-icons  eos-quickstart  eos-rankmirrors  eos-settings-cinnamon  eos-translations  eos-update-notifier  lib32-acl  lib32-alsa-lib  lib32-alsa-plugins  lib32-brotli  lib32-bzip2  lib32-curl  lib32-dbus  lib32-e2fsprogs  lib32-expat  lib32-fontconfig  lib32-freetype2  lib32-gamemode  lib32-gettext  lib32-glib2  lib32-harfbuzz  lib32-icu  lib32-keyutils  lib32-krb5  lib32-libcap  lib32-libdrm  lib32-libelf  lib32-libffi  lib32-libgcrypt  lib32-libglvnd  lib32-libgpg-error  lib32-libidn2  lib32-libldap  lib32-libnghttp2  lib32-libnghttp3  lib32-libnl  lib32-libpcap  lib32-libpciaccess  lib32-libpng  lib32-libpsl  lib32-libssh2  lib32-libtasn1  lib32-libtirpc  lib32-libunistring  lib32-libunwind  lib32-libx11  lib32-libxau  lib32-libxcb  lib32-libxcrypt  lib32-libxcrypt-compat  lib32-libxcursor  lib32-libxdamage  lib32-libxdmcp  lib32-libxext  lib32-libxfixes  lib32-libxi  lib32-libxkbcommon  lib32-libxml2  lib32-libxrandr  lib32-libxrender  lib32-libxshmfence  lib32-libxss  lib32-libxxf86vm  lib32-llvm-libs  lib32-lm_sensors  lib32-mesa  lib32-ncurses  lib32-nspr  lib32-nss  lib32-nvidia-utils  lib32-openssl  lib32-p11-kit  lib32-pam  lib32-pcre2  lib32-sqlite  lib32-systemd  lib32-util-linux  lib32-vkd3d  lib32-vulkan-icd-loader  lib32-wayland  lib32-xz  lib32-zlib  lib32-zstd  nvidia-hook  nvidia-inst  steam  welcome  wine  winetricks
 -&gt; Missing AUR Debug Packages: alpm_octopi_utils-debug  libpamac-git-debug  octopi-debug  pacman-git-debug  pamac-aur-git-debug  pythonqt-debug  qt5-webkit-debug
 -&gt; Orphan (unmaintained) AUR Packages: python-mock
 -&gt; Flagged Out Of Date AUR Packages: python-mock
 -&gt; reflector-simple: local (2023-4) is newer than AUR (3.3-1)
:: 9 packages to upgrade/install.
9  core/amd-ucode              20240220.97b693d2-1 -&gt; 20240312.3b128b60-1
8  core/expat                  2.6.1-1             -&gt; 2.6.2-1
7  core/linux-firmware         20240220.97b693d2-1 -&gt; 20240312.3b128b60-1
6  core/linux-firmware-whence  20240220.97b693d2-1 -&gt; 20240312.3b128b60-1
5  core/pcre2                  10.42-2             -&gt; 10.43-1
4  extra/bluez                 5.73-3              -&gt; 5.73-4
3  extra/bluez-libs            5.73-3              -&gt; 5.73-4
2  extra/bluez-utils           5.73-3              -&gt; 5.73-4
1  extra/meson                 1.4.0-1             -&gt; 1.4.0-2
==&gt; Packages to exclude: (eg: &quot;1 2 3&quot;, &quot;1-3&quot;, &quot;^4&quot; or repo name)
 -&gt; Excluding packages may cause partial upgrades and break systems
==&gt; 
Sync Explicit (4): bluez-utils-5.73-4, amd-ucode-20240312.3b128b60-1, bluez-5.73-4, linux-firmware-20240312.3b128b60-1
Sync Dependency (5): pcre2-10.43-1, meson-1.4.0-2, expat-2.6.2-1, bluez-libs-5.73-4, linux-firmware-whence-20240312.3b128b60-1
:: Synchronizing package databases...
 core is up to date
 extra is up to date
:: Starting full system upgrade...
warning: yad: local (13.0-2.1) is newer than extra (13.0-2)
resolving dependencies...
looking for conflicting packages...
error: failed to prepare transaction (could not satisfy dependencies)
:: installing expat (2.6.2-1) breaks dependency &apos;expat=2.6.1&apos; required by lib32-expat
 -&gt; error installing repo packages
[southdude@southdude-rp15 ~]$ sudo pacman -Syu
:: Synchronizing package databases...
 core is up to date
 extra is up to date
:: Starting full system upgrade...
warning: yad: local (13.0-2.1) is newer than extra (13.0-2)
resolving dependencies...
looking for conflicting packages...
error: failed to prepare transaction (could not satisfy dependencies)
:: installing expat (2.6.2-1) breaks dependency &apos;expat=2.6.1&apos; required by lib32-expat
</pre>
1 Like
<pre># If you want to run 32 bit applications on your x86_64 system,
# enable the multilib repositories as required here.

#[multilib-testing]
#Include = /etc/pacman.d/mirrorlist

#[multilib]
#Include = /etc/pacman.d/mirrorlist
#[multilib-testing]
#Include = /etc/pacman.d/mirrorlist

#[multilib]
#Include = /etc/pacman.d/mirrorlist
</pre>

does this mean it is enabled?

You should remove # from the beginning of these lines.

Also remove the duplicates.

After editing and saving the file, run your update command.

Also, if you are using EnOS, you seem to lack EnOS repo in your pacman.conf

Put this


[endeavouros]
SigLevel = PackageRequired
Include = /etc/pacman.d/endeavouros-mirrorlist

above all the other repos in your pacman.conf

Run: sudo pacman -Syu after you have made these changes.

1 Like

Alternatively for the expat problem, if you don’t need lib32-expat, you can try uninstalling it, but check also if that uninstalls something you need.
Something like:

sudo pacman -R lib32-expat