如何在 nixos 上自动解锁 KDE 钱包?

如何在 nixos 上自动解锁 KDE 钱包?

我决定开始使用 kwallet,因为它在 nixos 上随 kde 一起提供。我想将其设置为自动解锁。在 arch linux wiki 上有一个部分介绍了这里这里。但我怎样才能在 nixos 上做到这一点呢?我应该使用configuration.nix还是/etc/pam.d/kde?

答案1

如果您使用的是plasma5,我相信它已经启用了。

您可以使用security.pam.services.<name?>.enableKwallet选项。

添加到您的配置:

security.pam.services.kwallet = {
  name = "kwallet";
  enableKwallet = true;
};

这将添加必要的 pam 条目/etc/pam.d

$ cat /etc/static/pam.d/kwallet

# Account management.
account sufficient pam_unix.so

# Authentication management.

auth required pam_unix.so  likeauth

auth optional /nix/store/llds2sy99zg92lrk9gsfzhpz7f6wnxdy-kwallet-pam-5.8.6/lib/security/pam_kwallet5.so kwalletd=/nix/store/x9q0g102hlxx60jb332xmdpq76ia1bja-kwallet-5.31.0/bin/kwalletd5
auth sufficient pam_unix.so  likeauth try_first_pass

auth required pam_deny.so

# Password management.
password requisite pam_unix.so nullok sha512

# Session management.
session required pam_env.so envfile=/nix/store/5ninxpd3cmysfzlhij1afymd0gyg7x0p-pam-environment

session required pam_unix.so

session optional /nix/store/llds2sy99zg92lrk9gsfzhpz7f6wnxdy-kwallet-pam-5.8.6/lib/security/pam_kwallet5.so kwalletd=/nix/store/x9q0g102hlxx60jb332xmdpq76ia1bja-kwallet-5.31.0/bin/kwalletd5

答案2

您可以使用security.pam.services它来进行设置。沿着这条线的东西

security.pam.services = [
  { name = "kde";
    text = ''
      auth            optional        pam_kwallet.so kdehome=.kde4
      session         optional        pam_kwallet.so
    '';
  }
]

相关内容