nixos: systemd: Split unit types into separate module

This commit is contained in:
Will Fancher 2022-03-19 04:02:39 -04:00
parent 397b8257a0
commit 52c98fc3e9
4 changed files with 46 additions and 36 deletions

View file

@ -0,0 +1,29 @@
{ lib, systemdUtils }:
with systemdUtils.lib;
with systemdUtils.unitOptions;
with lib;
rec {
units = with types;
attrsOf (submodule ({ name, config, ... }: {
options = concreteUnitOptions;
config = { unit = mkDefault (systemdUtils.lib.makeUnit name config); };
}));
services = with types; attrsOf (submodule [ { options = serviceOptions; } unitConfig serviceConfig ]);
targets = with types; attrsOf (submodule [ { options = targetOptions; } unitConfig ]);
sockets = with types; attrsOf (submodule [ { options = socketOptions; } unitConfig ]);
timers = with types; attrsOf (submodule [ { options = timerOptions; } unitConfig ]);
paths = with types; attrsOf (submodule [ { options = pathOptions; } unitConfig ]);
slices = with types; attrsOf (submodule [ { options = sliceOptions; } unitConfig ]);
mounts = with types; listOf (submodule [ { options = mountOptions; } unitConfig mountConfig ]);
automounts = with types; listOf (submodule [ { options = automountOptions; } unitConfig automountConfig ]);
}