Pamac and pacman disagree

HI there,

In short pacman says (nothing to update) :

sudo pacman -Syu
:: Synchronisation des bases de données de paquets…
core est à jour
extra est à jour
community est à jour
multilib est à jour
:: Début de la mise à jour complète du système…
avertissement : archlinux-keyring : la version locale (20240313-1) est plus récente que core (20240208-1)
avertissement : plymouth : la version locale (24.004.60-6) est plus récente que extra (22.02.122-17)
il n’y a rien à faire

When Pamac says (125 updates available) :
Screenshot_20240502_174522

Trying to update through Pamac returns dependencies errors

What’s wrong (or who’s do you think is right) ?

The issue follows a Stable → Testing → Stable branch swapping, should I just wait until the testing packages come to stable ?

Thanks

Diego

What you need to understand first and foremost is that pacman only has access to the Manjaro repositories, while pamac also has access to the AUR and also handles Snaps and FlatPaks. This may account for a discrepancy.

In addition to that, it would appear that you have not been maintaining your system. The [community] repository was dropped almost a year ago. You probably have loads of unattended .pacnew files on your system.

pacdiff -o

… will tell you which ones. It is imperative that you merge these in with your existing system-wide configuration files. Do not blindly copy them over your existing configuration files, but inspect their contents and adapt your configuration files accordingly.

2 Likes

can’t be - that repo does not exist anymore

LANG=C sudo pacman -Syu
gives the output in english

You should tend to your .pacnew files - especially the one which removes the community repo.

1 Like

The problem with Pamac is most likely the database that is not properly up to date and doesn’t catch up when you force a database update in pacman.

Force update the database in Pamac.

Whow ! Slowly please …

pacdiff -o
zsh: command not found: pacdiff

Could you please take my hand and show me the noob way ?
Diego

I remember that this program is now part of pacman-contrib.

1 Like

zsh: command not found: pacdiff

Is pacman-contrib installed?

sudo pacman -S pacman-contrib

oops @Nachlese beat me to it!

If you have meld installed you can view and modify the.pacnew files with something like this:

sudo -H DIFFPROG=meld pacdiff

Is pacman-contrib installed?

It was not

pacdiff -o                                                                                                                                                                                                                                                                                            
/etc/passwd.pacnew
/etc/shells.pacnew
/etc/locale.gen.pacnew
/etc/pacman.conf.pacnew
/etc/pam.d/sddm.pacnew

I have no idea what that means …

Those are the .pacnew files that need to be incorporated into your config files. Do not do this blindly.
Please see the following for additional information:

https://wiki.archlinux.org/title/pacman/Pacnew_and_Pacsave

and:

1 Like

Some reading then … I’ll be back :muscle:

You better leave /etc/passwd.pacnew alone
ignore / delete - don’t blindly merge

compare /etc/shells.pacnew with /etc/shells - the difference is easy to spot - and it is not crucial

/etc/locale.gen.pacnew → ignore (after having seen the differences)

/etc/pacman.conf.pacnew → this is the one removing the community repo

I have no idea about
/etc/pam.d/sddm.pacnew

compare and judge for yourself

2 Likes

So that’s what I have to remove from /etc/pacman.conf, right ?:

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

The “SigLevel = PackageRequired” is present for every repo from pacman.conf, but not in pacman.conf.pacnew. Reading this, could be removed to, right ?

cough

right

either remove all three lines
or
put a # in front of each one
(that makes it a comment and whatever comes after that symbol is disregarded/ignored)

… all three!
but:
just these three - not similar lines anywhere else

Yep, this one is done and did reduce my 125 pamac updates to 0

Solution was in third reply then. You can select it.

Indeed, but @Nachlese pointed another problem, also solved now

LANG=C sudo pacman -Syu                                                                                                                                                                                                                                                                                      
:: Synchronizing package databases...
 core is up to date
 extra is up to date
 multilib is up to date
:: Starting full system upgrade...
warning: archlinux-keyring: local (20240313-1) is newer than core (20240208-1)
warning: plymouth: local (24.004.60-6) is newer than extra (22.02.122-17)
 there is nothing to do

Don’t worry - it’s not a competition for the most solved tags.
I don’t care about these marks anyway.
I’m glad I could be helpful. :+1:

1 Like

There is no real issue here, you could downgrade these two packages but there is no need to as far as I know. Not sure why these two have been rolled back in the repositories, there are reasons usually, but most of the time if you don’t have any issues, just ignore it.

//EDIT: for Plymouth, the reason is in the Stable announcement thread [Stable Update] 2024-03-13 - Plasma 5.27.11, Firefox, Thunderbird, AMDVLK, Qemu - #2 by philm

1 Like

At least in the case of plymouth it is because there is finally some recognition that it breaks boots … yes even when people properly add kms … so the answer is “its not as bad in an earlier version so roll it back”… :person_shrugging:
The real answer is to remove plymouth, but so far there is no stomach for doing that by default.

3 Likes