infra/nix/modules/wanderllama.nix
2026-01-05 23:09:19 +01:00

146 lines
3.3 KiB
Nix

{ lib, config, ... }:
with lib;
{
imports = [
./wanderllama/attic.nix
./wanderllama/nebula-backup.nix
./wanderllama/borgmatic.nix
];
options.wanderllama = {
domainName = mkOption {
type = lib.types.path;
description = "Path to a file holding a string that is the domain name.";
};
authentik.port = mkOption {
type = lib.types.port;
description = "authentik's port";
};
atuin.port = mkOption {
type = lib.types.port;
description = "the magic shell history server'r port";
};
ta.port = mkOption {
type = lib.types.port;
};
qb.port = mkOption {
type = lib.types.port;
};
adventurelog.port = mkOption {
type = lib.types.port;
};
netbox.port = mkOption {
type = lib.types.port;
};
shiori.port = mkOption {
type = lib.types.port;
};
uptime.port = mkOption {
type = lib.types.port;
};
prometheus.port = mkOption {
type = lib.types.port;
};
grafana.port = mkOption {
type = lib.types.port;
};
loki.port = mkOption {
type = lib.types.port;
description = "log collector's port.";
};
cloud.port = mkOption {
type = lib.types.port;
};
stirlingpdf.port = mkOption {
type = lib.types.port;
};
vaultwarden.port = mkOption {
type = lib.types.port;
};
llama.port = mkOption {
type = lib.types.port;
};
immich.port = mkOption {
type = lib.types.port;
};
jellyfin.port = mkOption {
type = lib.types.port;
};
audiobookshelf.port = mkOption {
type = lib.types.port;
};
radarr.port = mkOption {
type = lib.types.port;
};
sonarr.port = mkOption {
type = lib.types.port;
};
bazarr.port = mkOption {
type = lib.types.port;
};
prowlarr.port = mkOption {
type = lib.types.port;
};
lidarr.port = mkOption {
type = lib.types.port;
};
transmission.port = mkOption {
type = lib.types.port;
};
open-webui.port = mkOption {
type = lib.types.port;
};
hass.port = mkOption {
type = lib.types.port;
};
graylog.port = mkOption {
type = lib.types.port;
};
goflow2.port = mkOption {
type = lib.types.port;
default = 8110;
};
ntopng.port = mkOption {
type = lib.types.port;
};
};
config.wanderllama = {
authentik.port = 9000;
attic.port = 5000;
atuin.port = 8888;
ta.port = 8040;
qb.port = 8080;
adventurelog.port = 8698;
netbox.port = config.services.netbox.port;
shiori.port = config.services.shiori.port;
uptime.port = toInt config.services.uptime-kuma.settings.PORT;
prometheus.port = config.services.prometheus.port;
grafana.port = config.services.grafana.settings.server.http_port;
loki.port = 3100;
cloud.port = 8078;
stirlingpdf.port = 8091;
vaultwarden.port = 8222;
immich.port = 2283;
llama.port = 2894;
jellyfin.port = 8096;
audiobookshelf.port = 13378;
radarr.port = 7878;
sonarr.port = 8989;
bazarr.port = config.services.bazarr.listenPort;
prowlarr.port = 9696;
lidarr.port = 8686;
transmission.port = 9091;
open-webui.port = 11111;
hass.port = 8123;
graylog.port = 9001;
};
}