73 lines
1.4 KiB
Nix
73 lines
1.4 KiB
Nix
![]() |
{config, ...}: {
|
||
|
m3ta.ports = {
|
||
|
enable = true;
|
||
|
definitions = {
|
||
|
# System services
|
||
|
ssh = 22;
|
||
|
|
||
|
# Web & proxy services
|
||
|
traefik = 80;
|
||
|
traefik-ssl = 443;
|
||
|
|
||
|
# Databases
|
||
|
postgres = 5432;
|
||
|
mysql = 3306;
|
||
|
redis = 6379;
|
||
|
|
||
|
# VPN & networking
|
||
|
wireguard = 51820;
|
||
|
tailscale = 41641;
|
||
|
headscale = 3009;
|
||
|
|
||
|
# Containers & web apps
|
||
|
gitea = 3030;
|
||
|
baserow = 3001;
|
||
|
ghost = 3002;
|
||
|
wastebin = 3003;
|
||
|
littlelink = 3004;
|
||
|
searx = 3005;
|
||
|
restreamer = 3006;
|
||
|
paperless = 3012;
|
||
|
vaultwarden = 3013;
|
||
|
slash = 3010;
|
||
|
slash-nemoti = 3016;
|
||
|
kestra = 3018;
|
||
|
outline = 3019;
|
||
|
pangolin = 3020;
|
||
|
pangolin-api = 3021;
|
||
|
pangolin-ws = 3022;
|
||
|
|
||
|
# Home automation
|
||
|
homarr = 7575;
|
||
|
|
||
|
# DNS
|
||
|
adguardhome = 53;
|
||
|
};
|
||
|
|
||
|
hostOverrides = {
|
||
|
# Host-specific overrides
|
||
|
m3-ares = {
|
||
|
# Any custom port overrides for m3-ares
|
||
|
};
|
||
|
|
||
|
m3-atlas = {
|
||
|
# Any custom port overrides for m3-atlas
|
||
|
};
|
||
|
|
||
|
m3-helios = {
|
||
|
# Any custom port overrides for m3-helios
|
||
|
};
|
||
|
|
||
|
m3-kratos = {
|
||
|
# Any custom port overrides for m3-kratos
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
environment.etc."info/all-ports.json" = {
|
||
|
text = builtins.toJSON {
|
||
|
hostname = config.networking.hostName;
|
||
|
ports = config.m3ta.ports.all; # TODO should only return actually used ports
|
||
|
};
|
||
|
};
|
||
|
}
|