{ 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 { }; }