Update lean 4.15 (#373564)
[NixPkgs.git] / nixos / modules / system / boot / systemd / homed.nix
blob1e7ae236af6bd4c1b91c91c4949690f47e28b4fd
2   config,
3   lib,
4   pkgs,
5   ...
6 }:
8 let
9   cfg = config.services.homed;
12   options.services.homed.enable = lib.mkEnableOption ''
13     systemd home area/user account manager
14   '';
16   config = lib.mkIf cfg.enable {
17     assertions = [
18       {
19         assertion = config.services.nscd.enable;
20         message = "systemd-homed requires the use of systemd nss module. services.nscd.enable must be set to true,";
21       }
22     ];
24     systemd.additionalUpstreamSystemUnits = [
25       "systemd-homed.service"
26       "systemd-homed-activate.service"
27     ];
29     # This is mentioned in homed's [Install] section.
30     #
31     # While homed appears to work without it, it's probably better
32     # to follow upstream recommendations.
33     services.userdbd.enable = lib.mkDefault true;
35     systemd.services = {
36       systemd-homed = {
37         # These packages are required to manage encrypted volumes
38         path = config.system.fsPackages;
39         aliases = [ "dbus-org.freedesktop.home1.service" ];
40         wantedBy = [ "multi-user.target" ];
41       };
43       systemd-homed-activate = {
44         wantedBy = [ "systemd-homed.service" ];
45       };
46     };
47   };