Personal-use NixOS configuration
1{
2 hosts ? [ ],
3 domain,
4}:
5
6{ config, flakeLib, ... }:
7
8{
9 services.go-autoconfig = {
10 enable = true;
11
12 settings = {
13 domain = "autoconfig.${domain}";
14
15 smtp = {
16 server = "mx.${domain}";
17 port = 465;
18 };
19
20 imap = {
21 server = "mx.${domain}";
22 port = 993;
23 };
24
25 service_addr = ":1323";
26 };
27 };
28
29 # Caddy reverse proxy configuration
30 services.caddy.virtualHosts = flakeLib.mkProxies hosts ''
31 reverse_proxy ${config.services.go-autoconfig.settings.service_addr}
32 '';
33}