Change:
Describe the bug During boot, kwalletd5-wrap dumps core: This prevents kde wallet to authenticate together with my session, and I need to re-enter the password after logging in. To Reproduce Steps to reproduce the behavior: system with kde plasma5 and sddm it Expected behavior kdewallet should not crash on boot Additional context Probably related to . in that thread seems to have the same issue. Display manager info: sddm plasma5 Metadata system: host os: multi-user?: sandbox: version: channels(rick): channels(root): nixpkgs: Maintainer information:
I'm getting the same thing on nixos-unstable. We probably need to run a git bisect to figure out when this originated.
I wouldn't mind picking this up, however I'm not sure how to do this exactly. Could you give me some pointers ? (or anyone else ofc)
To be honest, I'm as confused as you are. and will give you some more information. It looks like the same thing as where QTPLUGINPATH / QML2IMPORTPATH / XDGDATADIRS / XDGCONFIGDIRS is set to the wrong value. Perhaps try replacing wrapQtApp with a header in
How to install a package from my local repository? works, but what's next? Should I install everything from my local repo using while trying to find why the package crashes on every reboot? Or is there an option to only install the kwallet-pam package with different versions? Would work?
Might have something to do with this update: That changelog lists this:
Quite likely a super overloaded issue, so not blocking for now. We'll need much more information to figure out what to do.
This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
I believe mentioned in the GO / NO-GO that it's likely fixed in a plasma update (think it was said it works on master). So perhaps a specific patch will/can be backported.
I'm not sure, but I'm running unstable and it's not fixed there.
(not sure if what was mentioned was merged to staging)
Mm, just built a master () configuration (in a VM), but the issue still persists. <details<summarythe used system config</summary</details
Sorry, someone said that it worked on , and I said if it works on , then it was the Plasma version bump because nothing addressing this issue has been merged.
A fix is available at If someone else can verify it works, I think we can merge it to master and then release-20.03.
Mm, it seems like it's still happening for me. Just to be sure, here the steps I've taken to verify: Clone your nixpkgs at branch fix- () Use the configuration listed below to build a vm with After the build, copy to the working directory and change the max memory from to , change the max processor cores from to (otherwise it's too slow to work with) Start the VM, login (see default password in config) and check The error is still visible in the log <details<summaryThe used configuration</summary</detailsJust as a sidenote, on my own system this is an issue because some applications immediately need the wallet to be unlocked. Of course, because the set of applications in the VM is limited (on purpose), it doesn't show the kwallet login screen immediately. However, I'm fairly certain it will show if I'd start a system that needs the keychain unlocked.
Ugh - it looks like I was missing some things. I definitely had it working at one point. Will retry to verify the fix actually works.
I have nothing productive to add here other than how excited I am at the prospect of having this fixed! Re-entering my password every time I log in is extremely frustrating.
Thanks for testing! I think the issue is fixed in If you could try that out it would be greatly appreciated.
I tested and beside the build issue (I needed to put back kwallet in the buildInputs), the wallet was correctly unlocked after login :)
I tried today to move my NixOS pin to and ran into the same issue.
just made a fresh nixos install and I also seem to get this problem... kdewallet wants to have a password some help about how to investigate, workaround or fix it would be highly appreciated Nixos version 20.09.3786. (Nightingale)
For me it seemed to be resolved after all the fixes got in + I removed kwalletd from my nix-env (accidentally installed it using that...). But I'm running unstable, so not much pointers otherwise, sadly :(. Using can at least help figuring out if the issue is the same -- so some like . If the issue is indeed the same, I can reopen this to further triage this. It would be nice if kwalletd would exit with an error instead of dumping core in this case (too much env vars). I vaguely remember that that might be possible, but not 100% sure about that anymore (and I don't know how easy one could test that). Then at least it would be easier to debug the issue.
I have solved my issue which finally was something totally different, but may still help others who run into the same: I setup my user with initialpassword and then changed the user password with utility, and it seems that because of this my kwallet's password was still set to the initial password (it took me very long to figure this out :D) and wasn't changed to the new password. After entering kwallet's password correctly (I was truly surprised that there was a correct password), I could change it to my new password and everything worked, including auto-log-in at startup time. Maybe there should be a warning with the option initialpassword mentioning this rather critical side-effect of initializing the kwallet (and maybe other things as well). Hope it helps some.

Discussion:
postPatch = '' sed -i pam_kwallet_init -e "s|socat|${lib.getBin socat}/bin/socat|" ''; <ins> # We get a crash when QT_PLUGIN_PATH is more than 1000 characters. # pam_kwallet_init passes its environment to kwalletd5, but # wrapQtApps gives our environment a huge QT_PLUGIN_PATH value. We # are able to unset it here since kwalletd5 will have its own # QT_PLUGIN_PATH. </ins> postFixup = '' <del> wrapQtApp $out/libexec/pam_kwallet_init </del> <ins> wrapProgram $out/libexec/pam_kwallet_init --unset QT_PLUGIN_PATH </ins> ''; dontWrapQtApps = true; }