Bug 456968 - KDE Wallet Manager window is blank
Summary: KDE Wallet Manager window is blank
Status: ASSIGNED
Alias: None
Product: neon
Classification: KDE Neon
Component: general (show other bugs)
Version: unspecified
Platform: Neon Linux
: NOR normal
Target Milestone: ---
Assignee: Neon Bugs
URL:
Keywords:
: 456872 463638 464401 (view as bug list)
Depends on:
Blocks:
 
Reported: 2022-07-21 03:54 UTC by Pawan Dubey
Modified: 2023-02-16 11:15 UTC (History)
12 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
empty KDE wallet manager window (77.46 KB, image/png)
2022-07-21 03:54 UTC, Pawan Dubey
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Pawan Dubey 2022-07-21 03:54:19 UTC
Created attachment 150782 [details]
empty KDE wallet manager window

SUMMARY
KDE Wallet Manager window when opened is "blank". I believe it's related to missing .service files.  

STEPS TO REPRODUCE
1. Kill any kwalletmanager5 processes
2. start a new process in the terminal with kwalletmanager5 --show

OBSERVED RESULT
A blank window is opened (screenshot attached) and we see some errors in the terminal:
```
★ 𝞴 kwalletmanager5 --show
Couldn't start kwalletd:  QDBusError("org.freedesktop.DBus.Error.ServiceUnknown", "The name org.kde.kwalletd5 was not provided by any .service files")
Couldn't start kwalletd:  QDBusError("org.freedesktop.DBus.Error.ServiceUnknown", "The name org.kde.kwalletd5 was not provided by any .service files")
Connecting to deprecated signal QDBusConnectionInterface::serviceOwnerChanged(QString,QString,QString)
Couldn't start kwalletd:  QDBusError("org.freedesktop.DBus.Error.ServiceUnknown", "The name org.kde.kwalletd5 was not provided by any .service files")
```

EXPECTED RESULT
KDE Wallet Manager window opens with the wallet contents

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: Kernel version 5.15.0-41-generic (64 bit) 
KDE Plasma Version: 5.25.3
KDE Frameworks Version: 5.97.0
Qt Version: 5.15.5
Comment 1 Nicolas Fella 2022-07-21 12:27:44 UTC
/usr/share/dbus-1/services/org.kde.kwalletd5.service should exists. This looks like a setup issue on your system
Comment 2 Hugues Morisset 2022-07-22 07:49:05 UTC
Hello, I go the same issue after updating on kde neon testing.

The problem is kwalletcli got uninstalled because of a dependency problem on `libqca-qt5-2`

I got it temporarily working with this dirty hack:

```
- Download  libkf5wallet-bin -> https://origin.archive.neon.kde.org/testing/pool/main/k/kwallet-kf5/libkf5wallet-bin_5.96.0+p20.04+tunstable+git20220716.0119-0_amd64.deb
- Use this https://unix.stackexchange.com/questions/138188/easily-unpack-deb-edit-postinst-and-repack-deb to unpack the deb
- Open DEBIAN/control and change the version for libqca-qt5-2 to 2.3.4+p20.04+tstable+git20220713.0040-0
- Repack the deb 
- sudo dpkg -i fixed.deb
- sudo apt install kwalletcli
- pkill gpg-agent
- It now works
```
Comment 3 Pawan Dubey 2022-07-23 02:29:19 UTC
(In reply to Nicolas Fella from comment #1)
> /usr/share/dbus-1/services/org.kde.kwalletd5.service should exists. This
> looks like a setup issue on your system

After a recent Neon update, it does not exist anymore. The update broke in the middle leaving quite a lot of packages in a broken state which I had to manually repair (via dpkg configure / apt update / pkcon update) so the issue might be related to that, but there's no way for me to confirm since it's conflated with the system update.

Looks like there is at least one more person who experienced the same issue (I am also on Neon Testing), so it seems to be a reproducible problem to some degree, although I don't know how to reproduce it.

What's the best way to get kwalletd5.service back? I do not have kwalletd5 installed either (which I presume is what the service execs).
Comment 4 Stephan Diestelhorst 2022-07-25 15:53:39 UTC
This seems to exist due to a dependency problem that Hugues describes.  Getting the exact same thing:

> $ sudo aptitude install kwalletcli
> The following NEW packages will be installed:
>   kwalletcli libkf5wallet-bin{ab} mksh{a} 
> 0 packages upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
> Need to get 198 kB/798 kB of archives. After unpacking 2,419 kB will be used.
> The following packages have unmet dependencies:
>  libkf5wallet-bin : Depends: libqca-qt5-2 (>= 2.3.4+p20.04+tunstable+git20220715.0127) but 2.3.4+p20.04+tstable+git20220713.0040-0 is installed
> The following actions will resolve these dependencies:
> 
>     Keep the following packages at their current version:
> 1)     kwalletcli [Not Installed]                         
> 2)     libkf5wallet-bin [Not Installed]                   
> 
> Accept this solution? [Y/n/q/?] n
> The following actions will resolve these dependencies:
> 
>     Install the following packages:                                                                            
> 1)     libkf5wallet-bin [5.68.0-0ubuntu2 (focal)]                                                               
> 
>     Downgrade the following packages:                                                                          
> 2)     libkf5wallet-data [5.96.0+p20.04+tunstable+git20220716.0119-0 (focal, now) -> 5.68.0-0ubuntu2 (focal)]   
> 3)     libkf5wallet5 [5.96.0+p20.04+tunstable+git20220716.0119-0 (focal, now) -> 5.68.0-0ubuntu2 (focal)]       
> 4)     libkwalletbackend5-5 [5.96.0+p20.04+tunstable+git20220716.0119-0 (focal, now) -> 5.68.0-0ubuntu2 (focal)]
> 
> Accept this solution? [Y/n/q/?] n
>  *** No more solutions available ***

$ dpkg -l libqca-qt5-2
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name               Version                                 Architecture Description
+++-==================-=======================================-============-===================================>
ii  libqca-qt5-2:amd64 2.3.4+p20.04+tstable+git20220713.0040-0 amd64        libraries for the Qt Cryptographic >
Comment 5 Stephan Diestelhorst 2022-07-25 16:13:51 UTC
Another way to at least get some wallet functionality back while leaving the conflict:

$ apt download libkf5wallet-bin
Get:1 http://archive.neon.kde.org/testing focal/main amd64 libkf5wallet-bin amd64 5.96.0+p20.04+tunstable+git20220716.0119-0 [198 kB]
Fetched 198 kB in 2s (103 kB/s)
$ sudo dpkg -i --force-depends libkf5wallet-bin_5.96.0+p20.04+tunstable+git20220716.0119-0_amd64.deb
(Reading database ... 173607 files and directories currently installed.)
Preparing to unpack libkf5wallet-bin_5.96.0+p20.04+tunstable+git20220716.0119-0_amd64.deb ...
Unpacking libkf5wallet-bin (5.96.0+p20.04+tunstable+git20220716.0119-0) over (5.68.0-0ubuntu2) ...
dpkg: libkf5wallet-bin: dependency problems, but configuring anyway as you requested:
 libkf5wallet-bin depends on libqca-qt5-2 (>= 2.3.4+p20.04+tunstable+git20220715.0127); however:
  Version of libqca-qt5-2:amd64 on system is 2.3.4+p20.04+tstable+git20220713.0040-0.

Setting up libkf5wallet-bin (5.96.0+p20.04+tunstable+git20220716.0119-0) ...
Processing triggers for desktop-file-utils (0.24-1ubuntu3) ...
Processing triggers for mime-support (3.64ubuntu1) ...
Processing triggers for man-db (2.9.1-1) ...
Comment 6 Jonathan Riddell 2022-07-27 12:58:30 UTC
kwallet it from kde frameworks which we built once and upload to both unstable and testing

qca is not and we build that separately for testing and unstable

kwallet recently got a dependency on qca so now our kwallet build in unstable depends on qca from unstable and kwallet from stable also depends on qca from unstable which is not available.
Comment 7 Jonathan Riddell 2022-07-27 13:18:27 UTC
I've now set qca2 builds in unstable to go to both unstable and testing so kwallet should now be installable again
Comment 8 Nicolas Fella 2022-08-26 11:32:33 UTC
*** Bug 456872 has been marked as a duplicate of this bug. ***
Comment 9 Valter Mura 2022-08-30 09:31:29 UTC
Hi, I observe the same result, not fixed for me:

valter@valter-desktop:~$ kwalletmanager5 --show
Couldn't start kwalletd:  QDBusError("org.freedesktop.DBus.Error.ServiceUnknown", "The name org.kde.kwalletd5 was not provided by any .service files")
Connecting to deprecated signal QDBusConnectionInterface::serviceOwnerChanged(QString,QString,QString)
Couldn't start kwalletd:  QDBusError("org.freedesktop.DBus.Error.ServiceUnknown", "The name org.kde.kwalletd5 was not provided by any .service files")

Operating System: KDE neon Testing Edition
KDE Plasma Version: 5.25.4
KDE Frameworks Version: 5.98.0
Qt Version: 5.15.5
Kernel Version: 5.15.0-46-generic (64-bit)
Graphics Platform: X11
Comment 10 Hugues Morisset 2022-09-09 08:48:08 UTC
Same here, the problem reappeared 
```
Starting 2 pkgProblemResolver with broken count: 1
Investigating (0) libkf5wallet-bin:amd64 < 5.97.0+p20.04+tunstable+git20220907.0317-0 @ii mK Nb Ib >
Broken libkf5wallet-bin:amd64 Depends on libqca-qt5-2:amd64 < 2.3.4+p20.04+tunstable+git20220806.0051-0 @ii mK > (>= 2.3.4+p20.04+tunstable+git20220830.0119)
  Removing libkf5wallet-bin:amd64 because I can't find libqca-qt5-2:amd64
Investigating (0) kwalletcli:amd64 < 3.02-1build1 @ii mK Ib >
Broken kwalletcli:amd64 Depends on libkf5wallet-bin:amd64 < 5.97.0+p20.04+tunstable+git20220907.0317-0 @ii mR Nb >
  Considering libkf5wallet-bin:amd64 3 as a solution to kwalletcli:amd64 0
  Removing kwalletcli:amd64 rather than change libkf5wallet-bin:amd64
Done
 Done

```
Comment 11 Edward Oubrayrie 2022-09-17 07:59:19 UTC
For the KDE Neon testing situation, mentioning Bug 459257 (libkf5auth5 broken) which may be related.
Comment 12 Ash 2022-09-21 02:48:15 UTC
Same problem. I had this issue last month on one of my PCs, but it resolved itself. Now it has reappeared again, on another PC.

```
Starting 2 pkgProblemResolver with broken count: 1
Investigating (0) libkf5wallet-bin:amd64 < 5.97.0+p20.04+tunstable+git20220907.0317-0 >
Broken libkf5wallet-bin:amd64 Depends on libqca-qt5-2:amd64 < 2.3.4+p20.04+tunstable+git20220806.0051-0  > (>= 2.3.4+p20.04+tunstable+git20220830.0119)
  Removing libkf5wallet-bin:amd64 because I can't find libqca-qt5-2:amd64
Investigating (0) kwalletcli:amd64 < 3.02-1build1 >
Broken kwalletcli:amd64 Depends on libkf5wallet-bin:amd64 < 5.97.0+p20.04+tunstable+git20220907.0317-0 >
  Considering libkf5wallet-bin:amd64 as a solution to kwalletcli:amd64 0
  Removing kwalletcli:amd64 rather than change libkf5wallet-bin:amd64
Done
 Done
```
Comment 13 Oded Arbel 2023-01-03 14:36:19 UTC
*** Bug 463638 has been marked as a duplicate of this bug. ***
Comment 14 Oded Arbel 2023-01-03 14:44:03 UTC
I have the same issue in Neon unstable - after installing kwalletmanager, its main window is blank and no menu function is working. When opening the kwallet KCM, no wallet can be selected in the default wallet setting (the pull down is empty).

Manually installing libkf5wallet-bin solves the problem. The issue is that kwalletmanager (and generally the kwallet system) relies on the D-Bus service org.kde.kwalletd5 that is provided by the libkf5wallet-bin package (containing both the .service file and the daemon executable), but there is no runtime dependency between the kwalletmanager Neon package and the libkf5wallet-bin package - so when you install the first, the second isn't installed causing a non-working configuration.

On the other hand, kwalletcli does depend on libkf5wallet-bin, so installing it will also be a workaround, though it isn't installed by default (considered a developer tool?) and may have other dependency issues - as reported here, though I did not encounter these and can't comment further on that.

I think the fix would be simple - include libkf5wallet-bin as a dependency of the kwalletmanager package. Maybe it should be picked up automatically by the build tools - I know dpkg-buildpackage automatically picks up linked shared library dependencies, so maybe it can be extended to pick up D-Bus service dependencies.
Comment 15 Bug Janitor Service 2023-01-03 17:50:47 UTC
A possibly relevant merge request was started @ https://invent.kde.org/neon/kde/kwalletmanager/-/merge_requests/1
Comment 16 Oded Arbel 2023-01-03 18:12:08 UTC
(In reply to Bug Janitor Service from comment #15)
> A possibly relevant merge request was started @
> https://invent.kde.org/neon/kde/kwalletmanager/-/merge_requests/1

I created a merge request adding the missing runtime dependency. If one of the Neon packaging owner (AFAIK - @jriddel and @sitter) can take a look at it and merge (if possible), it would be highly appreciated. TIA!
Comment 17 Paul Worrall 2023-01-17 10:56:35 UTC
*** Bug 464401 has been marked as a duplicate of this bug. ***