dynix/dynamic-submodule.nix

45 lines
835 B
Nix

{
name,
pkgs,
lib,
config,
...
}:
let
inherit (lib.modules)
mkIf
;
inherit (lib.options)
mkOption
mkEnableOption
literalExpression
;
t = lib.types;
in
{
options = {
enable = mkEnableOption "Dynamicism for ${name}";
source-parameters = mkOption {
type = t.listOf t.str;
description = "An attrpath of the NixOS option this dynamicism uses";
example = literalExpression ''
[ "services" "gotosocial" "settings" ]
'';
};
systemd-services-updated = mkOption {
type = t.listOf t.str;
description = ''
A list of systemd unit names (including the suffix, e.g. `.service`) that need to be updated.
'';
example = literalExpression ''
"gotosocial.service"
'';
};
};
config = mkIf config.enable {
};
}