blob: 058b0e031c2a794e87fa893a28e303a5b658f47a (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
{ config, ... }:
let secrets = config.age.secrets;
in {
my.services = {
samba = {
enable = true;
publicShares = [ "/data/fast/music" "/data/fast/videos" ];
};
navidrome = {
enable = true;
vhostName = "music.fcuny.xyz";
musicFolder = "/data/fast/music";
};
unifi = {
enable = true;
vhostName = "unifi.fcuny.xyz";
};
prometheus = { enable = true; };
grafana = {
enable = true;
vhostName = "dash.fcuny.xyz";
};
gitea = {
enable = true;
stateDir = "/var/lib/gitea";
};
gerrit = {
enable = true;
vhostName = "cl.fcuny.net";
};
sourcegraph = {
enable = true;
vhostName = "cs.fcuny.xyz";
};
drone = {
enable = true;
vhostName = "drone.fcuny.xyz";
runners = [ "docker" "exec" ];
sharedSecretFile = secrets."drone/secrets".path;
};
rclone = { enable = true; };
nginx = { enable = true; };
transmission = {
enable = true;
vhostName = "bt.fcuny.xyz";
};
metrics-exporter = { enable = true; };
syncthing.enable = true;
backup = {
enable = true;
repository = "/data/slow/backups/systems";
timerConfig = { OnCalendar = "00:15"; };
passwordFile = secrets."restic/repo-systems".path;
paths =
[ "/home" "/data/fast/music" "/data/fast/photos" "/data/fast/videos" ];
};
};
}
|