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.

1 Like

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