45 lines
835 B
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 {
|
|
|
|
};
|
|
}
|