Bug 1221371

Summary: Installation of pam_kwallet6 does not automatically occur with plasma6 upgrade, and also requires deinstallation of deinstallation of systemd-32bit among other packages
Product: [openSUSE] openSUSE Tumbleweed Reporter: Alexander Sanderson <ars2swim>
Component: KDE Workspace (Plasma)Assignee: Dominique Leuenberger <dimstar>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Major    
Priority: P5 - None CC: epistemepromeneur, fabian, fvogt, marek, nwr10cst-oslnx, vkrevs
Version: Current   
Target Milestone: ---   
Hardware: x86-64   
OS: openSUSE Tumbleweed   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: Terminal window showing what happens when attempting to install pam_kwallet6

Description Alexander Sanderson 2024-03-13 23:57:27 UTC
pam_kwallet6 is not automatically installed during the upgrade to KDE Plasma 6. This means kwallet does not automatically unlock upon logging into a Plasma session. Moreover, in order to install it, one must deinstall pam-32bit, pam_kwallet-32bit, pam_pwquality-32bit, samba-client-libs-32bit, samba-winbind-libs-32bit, and systemd-32bit.
Comment 1 Alexander Sanderson 2024-03-13 23:58:25 UTC
Created attachment 873495 [details]
Terminal window showing what happens when attempting to install pam_kwallet6
Comment 2 Marek Sapota 2024-03-14 08:48:34 UTC
I run into the same issue.  I also had to reinstall `pam_kwallet6` after the initial install and removal of packages mentioned above to get things to work (zypper suggested solution 1 from the screenshot).  The pam module is still named `pam_kwallet5.so` and it seems the post install and post removal steps from `pam_kwallet` and `pam_kwallet6` got mangled up and the relevant lines got removed from `/etc/pam.d/`.  After installing and then reinstalling `pam_kwallet6` the relevant lines got added (re-added?) to pam configuration and automatic unlocking on login works again.

I suspect these are the conflicting parts that caused `pam_kwallet5.so` to get removed from pam configuration after the initial install:
https://build.opensuse.org/package/view_file/openSUSE:Factory/pam_kwallet/pam_kwallet.spec?expand=1 lines 89-92
https://build.opensuse.org/package/view_file/openSUSE:Factory/pam_kwallet6/pam_kwallet6.spec?expand=1 lines 91-92
I presume the post install step run before the post uninstall step.
Comment 3 Fabian Vogt 2024-03-14 09:02:07 UTC
I guess pam_kwallet6 is missing i586 builds.
Comment 4 Neil Rickert 2024-03-14 19:16:53 UTC
pam_kwallet6 was automatically installed here.  I guess I didn't have the conflicting packages.

However, it still did not work.  I had to run:
 pam-config -a --kwallet5
before it started to work properly.
Comment 5 Fabian Vogt 2024-03-14 22:31:09 UTC
(In reply to Neil Rickert from comment #4)
> pam_kwallet6 was automatically installed here.  I guess I didn't have the
> conflicting packages.
> 
> However, it still did not work.  I had to run:
>  pam-config -a --kwallet5
> before it started to work properly.

So we've got two issues. One is the missing i586 buils which has to be fixed in openSUSE:Factory config itself, which will with sr 1158079 not need any other dependencies.

The other is that wrong RPM scriptlet order strikes again - %postun of the old pam_kwallet5 is executed after pam_kwallet6's %post, disabling it again. Maybe it should be moved to %posttrans.
Comment 6 Fabian Vogt 2024-03-15 09:18:53 UTC
*** Bug 1221445 has been marked as a duplicate of this bug. ***
Comment 7 Fabian Vogt 2024-03-15 21:00:54 UTC
sr 1158166 got accepted and i586 builds enabled in openSUSE:Factory meanwhile, so both issues should be addressed now.