Bug 511982

Summary: Vivaldi cannot read the Wallet after upgrading to 6.5
Product: [Applications] kwalletmanager Reporter: Szőts Ákos <akos+kde>
Component: generalAssignee: Valentin Rusu <valir>
Status: REPORTED ---    
Severity: normal    
Priority: NOR    
Version First Reported In: 25.08.3   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Szőts Ákos 2025-11-12 07:27:59 UTC
I recently upgraded to KDE 6.5 and since then Vivaldi cannot read the Wallet. Interestingly, Signal can.

Vivaldi prints:
>  KeystoreChecker: Profile Default: Encryted keystore changed or is now unavailable. This may result in lost cookies and other problems.

Then, it refuses to load the profile at all and it suggests to start from scratch.

This is the solution that worked for me: https://forum.vivaldi.net/topic/109314/solved-can-not-pass-profile-launcher-after-update :

1. Use File > Export Encrypted to back up the current key storage.
2. Close, then Delete the entire key storage
3. Import the previously backed up key storage using File > Import Encrypted.
4. Restart Vivaldi

I analysed the difference of the D-bus communication of both the bad and the good wallets. The only difference was in this call:

 ‣ Type=method_call  Endian=l  Flags=2  Version=1 Cookie=X  Timestamp="X"
   Sender=:D  Destination=:F  Path=/org/freedesktop/secrets  Interface=org.freedesktop.Secret.Service  Member=GetSecrets
   UniqueName=:D
   MESSAGE "aoo" {
           ARRAY "o" {
-                  OBJECT_PATH "/org/freedesktop/secrets/collection/kdewallet/1";
                   OBJECT_PATH "/org/freedesktop/secrets/collection/kdewallet/0";
           };
-          OBJECT_PATH "/org/freedesktop/secrets/session/33";
+          OBJECT_PATH "/org/freedesktop/secrets/session/1";
   };

It seems in the bad case (marked with minus), there was another kdewallet collection (/1) and Vivaldi could not handle this case. Deleting and re-importing the very same wallet fixed it somehow.

There was another diff but I don't know if it's expected because of different timestamp or wallet:

 ‣ Type=signal  Endian=l  Flags=1  Version=1 Cookie=X  Timestamp="X"
   Sender=:F  Path=/ksecretd  Interface=org.kde.KWallet  Member=walletAsyncOpened
   UniqueName=:F
   MESSAGE "ii" {
-          INT32 22;
-          INT32 1433144397;
+          INT32 3;
+          INT32 1920261253;
   };

SOFTWARE/OS VERSIONS

Operating System: openSUSE Tumbleweed 20251109
KDE Plasma Version: 6.5.2
KDE Frameworks Version: 6.19.0
Qt Version: 6.10.0
Kernel Version: 6.17.7-1-default (64-bit)
Graphics Platform: Wayland