1# GNOME Keyring daemon.
2
3{
4 config,
5 pkgs,
6 lib,
7 ...
8}:
9let
10 cfg = config.services.gnome.gnome-keyring;
11in
12{
13
14 meta = {
15 maintainers = lib.teams.gnome.members;
16 };
17
18 options = {
19 services.gnome.gnome-keyring = {
20 enable = lib.mkEnableOption ''
21 GNOME Keyring daemon, a service designed to
22 take care of the user's security credentials,
23 such as user names and passwords
24 '';
25 };
26 };
27
28 config = lib.mkIf cfg.enable {
29 environment.systemPackages = [ pkgs.gnome-keyring ];
30
31 services.dbus.packages = [
32 pkgs.gnome-keyring
33 pkgs.gcr
34 ];
35
36 xdg.portal.extraPortals = [ pkgs.gnome-keyring ];
37
38 security.pam.services.login.enableGnomeKeyring = true;
39
40 security.wrappers.gnome-keyring-daemon = {
41 owner = "root";
42 group = "root";
43 capabilities = "cap_ipc_lock=ep";
44 source = "${pkgs.gnome-keyring}/bin/gnome-keyring-daemon";
45 };
46 };
47}