Issue updating: yad local newer than extra & alsa-lib conflict

Hi there, bit stumped with this one. I tried to update yesterday, which fails with the following output:

:: installing alsa-lib (1.2.10-1) breaks dependency 'alsa-lib=1.2.9' required by lib32-alsa-lib

I also noticed that this comes up just before the update fails:

warning: yad: local (13.0-1.1) is newer than extra (13.0-1)

From my reading, it seems this might be something to do with out of date mirrors, so I went and refreshed both the Arch and Endeavour mirrors, but nothing changed.

Any input into what I can try next would be appreciated.

How long has it been since you last updated the system?

Anyway, try the below command.

sudo pacman -Sy archlinux-keyring endeavouros-keyring && sudo pacman -Syu

please post the full output with the terminal command you have used. There could be important information that could help solve your problem.

Huh, ok - odd. Running that gave me this output:

:: Synchronizing package databases...
 core is up to date
 extra is up to date
warning: archlinux-keyring-20230821-2 is up to date -- reinstalling
error: target not found: endeavouros-keyring

Full output when running yay:

:: Synchronizing package databases...
 core is up to date
 extra is up to date
:: Starting full system upgrade...
warning: yad: local (13.0-1.1) is newer than extra (13.0-1)
resolving dependencies...
looking for conflicting packages...
error: failed to prepare transaction (could not satisfy dependencies)
:: installing alsa-lib (1.2.10-1) breaks dependency 'alsa-lib=1.2.9' required by lib32-alsa-lib
 -> error installing repo packages

other repos like endeavouros and multilib are missing.

please post the output from

cat /etc/pacman.conf

and

yay -Qs endeavouros-keyring

pacman.conf:


#
# /etc/pacman.conf
#
# See the pacman.conf(5) manpage for option and repository directives

#
# GENERAL OPTIONS
#
[options]
# The following paths are commented out with their default values listed.
# If you wish to use different paths, uncomment and update the paths.
#RootDir     = /
#DBPath      = /var/lib/pacman/
#CacheDir    = /var/cache/pacman/pkg/
#LogFile     = /var/log/pacman.log
#GPGDir      = /etc/pacman.d/gnupg/
#HookDir     = /etc/pacman.d/hooks/
HoldPkg     = pacman glibc
#XferCommand = /usr/bin/curl -L -C - -f -o %o %u
#XferCommand = /usr/bin/wget --passive-ftp -c -O %o %u
#CleanMethod = KeepInstalled
Architecture = auto

# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
#IgnorePkg   =
#IgnoreGroup =

#NoUpgrade   =
#NoExtract   =

# Misc options
#UseSyslog
#Color
#NoProgressBar
CheckSpace
#VerbosePkgLists
#ParallelDownloads = 5

# By default, pacman accepts packages signed by keys that its local keyring
# trusts (see pacman-key and its man page), as well as unsigned packages.
SigLevel    = Required DatabaseOptional
LocalFileSigLevel = Optional
#RemoteFileSigLevel = Required

# NOTE: You must run `pacman-key --init` before first using pacman; the local
# keyring can then be populated with the keys of all official Arch Linux
# packagers with `pacman-key --populate archlinux`.

#
# REPOSITORIES
#   - can be defined here or included from another file
#   - pacman will search repositories in the order defined here
#   - local/custom mirrors can be added here or in separate files
#   - repositories listed first will take precedence when packages
#     have identical names, regardless of version number
#   - URLs will have $repo replaced by the name of the current repo
#   - URLs will have $arch replaced by the name of the architecture
#
# Repository entries are of the format:
#       [repo-name]
#       Server = ServerName
#       Include = IncludePath
#
# The header [repo-name] is crucial - it must be present and
# uncommented to enable the repo.
#

# The testing repositories are disabled by default. To enable, uncomment the
# repo name header and Include lines. You can add preferred servers immediately
# after the header, and they will be used before the default mirrors.

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

[core]
Include = /etc/pacman.d/mirrorlist

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

[extra]
Include = /etc/pacman.d/mirrorlist

# 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

# An example of a custom package repository.  See the pacman manpage for
# tips on creating your own repositories.
#[custom]
#SigLevel = Optional TrustAll
#Server = file:///home/custompkgs

yay -Qs endeavouros-keyring:


local/endeavouros-keyring 20230523-1
    EndeavourOS keyring

Also, just to answer what was asked earlier, I update pretty regularly, so I probably updated last sometime time this week.

replace the content from your /etc/pacman.conf with the EndeavourOS original from here and try again to update your system.

1 Like

That seems to have fixed it - I think what happened is that I overwrote the pacman.conf when sorting through pacnew files earlier in the week. Thanks for the quick diagnosis and solution, much appreciated!

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.