30 Jul 2024 |
Pratham Patel (you can mention me) | how do I "check" it? do you mean journalctl logs? | 16:13:11 |
Pratham Patel (you can mention me) | nothing in journalctl logs | 16:14:05 |
Pratham Patel (you can mention me) | anyone? | 16:36:16 |
Pratham Patel (you can mention me) | even a systemctl --user restart plasma-kwallet-pam.service doesn't work :(
| 16:41:44 |
Pratham Patel (you can mention me) | and I've verified that the wallet password is same as my user password by unlocking it via the kdewalletmanager gui app | 16:42:04 |
31 Jul 2024 |
Pratham Patel (you can mention me) |
auto_start in the nixpkgs pam module doesn't exist for kwallet but does exist for gnome-keyring. My out-of-tree commit fixed the kwallet issue for me (partly): https://github.com/thefossguy/nixpkgs/commit/b6d46491b7cf1bb1072a7ab3d2da49c7782afab2
- As for why
plasma-kwallet-pam.service doesn't start for me, it's because
Before=plasma-plasmashell.service plasma-kded6.service
After=plasma-kwin_wayland.service plasma-kcminit.service
For (1), force_run is only required if logging in from the TTY and for (2), I don't know how to make it "more generic" (depend less on KDE-specific units and depend on SDDM to tell us). One way is graphical-session.target but that doesn't seem to be active on NixOS? I admit I don't know much about how this specific systemd target interacts with SDDM.
| 04:37:52 |
Pratham Patel (you can mention me) | heh
https://github.com/NixOS/nixpkgs/issues/169143#issuecomment-2246825541 | 04:48:38 |
Pratham Patel (you can mention me) | drafting an upstream friendly PR, any way to check if any of the display managers in services.xserver.displayManager or services.displayManager are enabled instead of manually checking each and every one of them?
| 06:35:37 |
K900 | @Sandro 🐧 had a thing for that | 06:36:38 |
K900 | But also this is wrong | 06:36:41 |
K900 | At least 2) definitely is wrong | 06:36:48 |
K900 | Because Before and After are not strict dependencies | 06:36:57 |
K900 | They do not block the service | 06:37:05 |
K900 | And auto_start is a gnome-keyring PAM module option | 06:37:27 |
K900 | I don't think kwallet-pam has one | 06:37:34 |
K900 | https://invent.kde.org/plasma/kwallet-pam/-/blob/master/pam_kwallet.c?ref_type=heads#L75-100 | 06:37:55 |
K900 | It does have force_run though | 06:37:59 |
K900 | https://invent.kde.org/plasma/kwallet-pam/-/blob/master/pam_kwallet.c?ref_type=heads#L222-238 | 06:38:28 |
Pratham Patel (you can mention me) | huh, didn't know auto_start didn't exist | 06:40:45 |
Pratham Patel (you can mention me) | that plasma-kwallet-pam service is provided by kdePackages.kwallet-pam and that dependency is likely provided by upstream, rather than some nixos module | 06:42:18 |
K900 | There is no dependency | 06:42:32 |
K900 | As I said | 06:42:33 |
K900 | Before/After determines ordering if the units are already in the transaction | 06:42:43 |
K900 | It does nothing if they're not | 06:42:55 |
K900 | Now if it had Requires or Wants , that would be a problem | 06:43:07 |
K900 | But it does not | 06:43:09 |
Pratham Patel (you can mention me) | ah you mean "since they don't exist, that's not a dependency" | 06:43:27 |
K900 | NO | 06:43:34 |
K900 | I mean go and read man systemd.unit | 06:43:42 |
K900 | Please | 06:43:46 |