2024-06-26 16:34:41 +07:00
|
|
|
{ config, lib, ... }:
|
2024-06-13 14:04:10 +07:00
|
|
|
let
|
2024-06-26 16:34:41 +07:00
|
|
|
inherit (lib) mkEnableOption mkOption types;
|
2024-06-13 14:04:10 +07:00
|
|
|
in
|
|
|
|
{
|
|
|
|
options.profile.services = {
|
|
|
|
caddy.enable = mkEnableOption "caddy";
|
|
|
|
cockpit.enable = mkEnableOption "cockpit";
|
2024-06-13 16:08:33 +07:00
|
|
|
forgejo.enable = mkEnableOption "forgejo";
|
|
|
|
kavita.enable = mkEnableOption "kavita";
|
|
|
|
samba.enable = mkEnableOption "samba";
|
2024-06-13 23:14:37 +07:00
|
|
|
nextcloud.enable = mkEnableOption "nextcloud";
|
2024-06-14 10:04:29 +07:00
|
|
|
syncthing.enable = mkEnableOption "syncthing";
|
2024-06-14 14:30:52 +07:00
|
|
|
openvpn.enable = mkEnableOption "openvpn";
|
2024-06-14 19:42:14 +07:00
|
|
|
stubby.enable = mkEnableOption "stubby";
|
2024-06-17 23:28:22 +07:00
|
|
|
jellyfin.enable = mkEnableOption "jellyfin";
|
2024-06-26 16:34:41 +07:00
|
|
|
jellyfin.jellyseerr.enable = mkOption {
|
|
|
|
type = types.bool;
|
|
|
|
default = config.profile.services.jellyfin.enable;
|
|
|
|
};
|
2024-06-20 15:48:18 +07:00
|
|
|
rust-motd.enable = mkEnableOption "rust-motd";
|
2024-06-23 20:01:24 +07:00
|
|
|
wireguard.enable = mkEnableOption "wireguard";
|
2024-06-23 21:04:27 +07:00
|
|
|
photoprism.enable = mkEnableOption "photoprism";
|
2024-08-20 21:32:35 +07:00
|
|
|
navidrome.enable = mkEnableOption "navidrome";
|
2024-08-28 20:31:11 +07:00
|
|
|
|
2024-09-05 09:42:15 +07:00
|
|
|
ntfy-sh.enable = mkEnableOption "ntfy-sh";
|
2024-09-05 13:23:04 +07:00
|
|
|
ntfy-sh.client.enable = mkOption {
|
|
|
|
type = types.bool;
|
|
|
|
default = config.profile.services.ntfy-sh.enable;
|
|
|
|
};
|
2024-09-05 09:42:15 +07:00
|
|
|
|
2024-08-28 20:31:11 +07:00
|
|
|
telemetry = {
|
|
|
|
enable = mkEnableOption "telemetry";
|
|
|
|
grafana.enable = mkOption {
|
|
|
|
type = types.bool;
|
|
|
|
default = config.profile.services.telemetry.enable;
|
|
|
|
};
|
|
|
|
loki.enable = mkOption {
|
|
|
|
type = types.bool;
|
|
|
|
default = config.profile.services.telemetry.enable;
|
|
|
|
};
|
|
|
|
promtail.enable = mkOption {
|
|
|
|
type = types.bool;
|
|
|
|
default = config.profile.services.telemetry.enable;
|
|
|
|
};
|
|
|
|
tempo.enable = mkOption {
|
|
|
|
type = types.bool;
|
|
|
|
default = config.profile.services.telemetry.enable;
|
|
|
|
};
|
2024-09-07 10:27:25 +07:00
|
|
|
mimir.enable = mkOption {
|
2024-08-28 20:31:11 +07:00
|
|
|
type = types.bool;
|
|
|
|
default = config.profile.services.telemetry.enable;
|
|
|
|
};
|
2024-09-06 21:13:31 +07:00
|
|
|
alloy.enable = mkOption {
|
|
|
|
type = types.bool;
|
|
|
|
default = config.profile.services.telemetry.enable;
|
|
|
|
};
|
2024-09-10 16:34:58 +07:00
|
|
|
prometheus.enable = mkOption {
|
|
|
|
type = types.bool;
|
|
|
|
default = config.profile.services.telemetry.enable;
|
|
|
|
};
|
2024-08-28 20:31:11 +07:00
|
|
|
};
|
2024-06-13 14:04:10 +07:00
|
|
|
};
|
|
|
|
}
|