After update, KDE's kwallet doesn't find Passwords anymore

Dear community,

I regularly update my Fedora 44 (KDE Plasma desktop version) system with dnf update. However, after rebooting after today’s update, I was prompted for the wifi password, even though I previously stored the password in the KDE wallet.

So I started digging with some help by an LLM: kwallet-query -l kdewallet returned The folder Passwords does not exist!. My wallet data is still on disk in the old Blowfish format (~/.local/share/kwalletd/kdewallet.kwl), opened fine via kwalletmanager5, but showed no “Passwords” folder/entries.

There seem to be multiple versions of kwallet installed:

$ rpm -qa | grep kwallet
kf5-kwallet-libs-5.116.0-5.fc44.x86_64
kf5-kwallet-5.116.0-5.fc44.x86_64
kwalletmanager5-26.04.2-1.fc44.x86_64
signon-kwallet-extension-26.04.2-1.fc44.x86_64
kf6-kwallet-6.27.0-1.fc44.x86_64
kf6-kwallet-libs-6.27.0-1.fc44.x86_64
pam-kwallet-6.7.0-1.fc44.x86_64

Following services are running:

$ systemctl --user list-units --all  | grep -i wallet
  app-kwalletmanager5\x2dkwalletd@c75fc1fa5e4a4a7baa5a453cd8bea4fa.service                                                            loaded    active   running   KWalletManager - Password Manager
  dbus-:1.2-org.kde.kwalletd6@0.service                                                                                               loaded    active   running   dbus-:1.2-org.kde.kwalletd6@0.service
  plasma-kwallet-pam.service                                                                                                          loaded    inactive dead      Unlock kwallet from pam credentials

So it seems that now version 6 of kwallet is running. I don’t know which version I was running prior to the update. Could it be that the stored wifi password got lost because I was running previously version 5 and the update installed version 6?

I also noticed that pam-kwallet (v6.7.0) only ships pam_kwallet5.so, with no pam_kwallet.so/v6 equivalent on disk, even though /etc/pam.d/sddm references both:

-auth     optional   pam_kwallet5.so
-auth     optional   pam_kwallet.so

However, only pam_kwallet5.so exists:

$ ll /usr/lib64/security/pam_kwallet*
-rwxr-xr-x. 1 root root 27824 Jun 11 02:00 /usr/lib64/security/pam_kwallet5.so

Could it be that kwalletd6 can’t read or properly migrate the old format of the database stored in ~/.local/share/kwalletd/?

Best regards,
Yves

I can only answer the simpler questions.

I see the same set of RPMs and none of the packages are duplicates.

You say that the “Password” folder is missing.
Do you a lot of other folders?

I have a lot of folders in my wallet and only 2 no longer used passwords in the “Password” folder.

I do not have Wifi passwords stored so cannot tell you what to expect as the folder for them.

Thanks a lot for the reply! It was the kwallet-query -l kdewallet command that returned that the folder “Passwords” doesn’t exist. However, this seems not be the real issue since I see now in the Wallet Manager (kwalletmanager5) that there is indeed a “Passwords” folder, it is just under “Network Management (2)” → “Passwords”. In the meantime I reentered my Wifi password and thus there is now an entry with the nm UUID (after the update this entry was not there). I think the remaining question is why the password got lost after the update?

I have seen other people report lose of the wifi password after the upgrade as well.

I didn’t just lose WiFi passwords, I lost my Wireguard VPN Private, Public and Preshared keys too.

This is infuriating.

If I open KWalletManager, I can see them in NetworkManagment > Maps, but not in NetworkManagment > Passwords where they should be for the Wi-Fi passwords anyways…

No clue where the WireGuard keys are supposed to be.

This bug report confirms the issue https://bugs.kde.org/show_bug.cgi?id=521584

You may want to add that wireguard affected to the bug report.

Thanks for pointing me at the upstream bug report. I was just writing my own bug report that I wrote in the redhat bugzilla:

So I appended the link to the upstream bug report to my own bug report.