wyoming testing start

This commit is contained in:
2026-05-01 02:22:43 -05:00
parent ba07db9dbf
commit e781ca769b
3 changed files with 10 additions and 78 deletions
+1
View File
@@ -65,6 +65,7 @@ in
flaresolverr.enable = true;
zigbee2mqtt.enable = true;
mosquitto.enable = true;
wyoming.enable = true;
caddy.enable = true;
uptime-kuma.enable = true;
vaultwarden.enable = true;
+1
View File
@@ -62,6 +62,7 @@ in
./jellyfin
./arr/flaresolverr
./home/mosquitto
./home/wyoming
./uptime-kuma
./tailscale
./ddns
+8 -78
View File
@@ -11,53 +11,20 @@ in
enable = lib.mkEnableOption "enables ${service}";
# set port options
port = lib.mkOption {
faster_whisper_port = lib.mkOption {
type = lib.types.int;
default = 7706;
description = "set port for ${service} (default: ${toString cfg.port}";
};
url = lib.mkOption {
type = lib.types.str;
default = "z2m.${homelab.base_domain}";
description = "set domain for ${service}";
};
data_dir = lib.mkOption {
type = lib.types.str;
default = "/var/lib/${service}";
description = "set data directory for ${service}";
};
ids = lib.mkOption {
piper_port = lib.mkOption {
type = lib.types.int;
default = cfg.port;
description = "set uid and pid of ${service} user (matches port by default)";
};
backup = lib.mkOption {
type = lib.types.bool;
default = true;
description = "enable backups for ${service}";
};
motd = lib.mkOption {
type = lib.types.nullOr lib.types.str;
default = service;
default = 7706;
description = "set port for ${service} (default: ${toString cfg.port}";
};
};
config = lib.mkIf cfg.enable {
# declare ${service} group
users.groups.${service} = { gid = lib.mkForce cfg.ids; };
# declare ${service} user
users.users.${service} = {
description = "${service} server user";
uid = lib.mkForce cfg.ids;
isSystemUser = true;
home = cfg.data_dir;
createHome = true;
group = service;
extraGroups = [];
};
# enable the ${service} service
services.${service} = {
faster-whisper = {
@@ -65,7 +32,7 @@ in
vanessa = {
enable = true;
language = "en";
uri = "tcp://0.0.0.0:${cfg.port}";
uri = "tcp://0.0.0.0:${cfg.faster_whisper_port}";
model = "medium";
device = "auto";
};
@@ -75,52 +42,15 @@ in
servers = {
vanessa = {
enable = true;
uri = "tcp://0.0.0.0:7707";
uri = "tcp://0.0.0.0:${cfg.piper_port}";
model = "en_US-amy-medium";
};
};
};
};
# override umask to make permissions work out
systemd.services.${service}.serviceConfig = {
UMask = lib.mkForce "0007";
User = service;
Group = service;
};
# # open firewall
networking.firewall.allowedTCPPorts = [ cfg.port ];
networking.firewall.allowedTCPPorts = [ cfg.port 7707 ];
# add to caddy for reverse proxy
services.caddy.virtualHosts."${cfg.url}" = {
serverAliases = [ "z2m.${homelab.public_domain}" ];
extraConfig = ''
tls ${sec."ssl_blakedheld_crt".path} ${sec."ssl_blakedheld_key".path}
reverse_proxy 127.0.0.1:${toString cfg.port}
'';
};
# add to glance
homelab.glance.links.services = [{
title = service;
url = "https://${cfg.url}";
error-url = "http://${homelab.host_ip}:${toString cfg.port}";
check-url = "http://${homelab.host_ip}:${toString cfg.port}";
icon = "di:${service}"; }];
sops.secrets = {
"mosquitto_passwd.yaml" = {
owner = service;
group = service;
};
};
# add to backups
homelab.backups.baks = {
${service} = { paths = [ cfg.data_dir ]; };
};
};
}