blob: dc0a7c3fec56ab2490577490adba8fd0c8baf5f9 (
plain)
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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
|
{ config, ... }:
{
sops = {
defaultSopsFile =
if config.monorepo.profiles.server.enable
then ../secrets/vps_secrets.yaml
else ../secrets/secrets.yaml;
templates =
if config.monorepo.profiles.server.enable then {
"public-inbox-netrc" = {
owner = "public-inbox";
group = "public-inbox";
mode = "0400";
content = (builtins.concatStringsSep "\n" (builtins.map (x: "machine mail.${config.monorepo.vars.orgHost} login ${x}@${config.monorepo.vars.orgHost} password ${config.sops.placeholder."mail_monorepo_password_pi"}") config.monorepo.vars.projects)) + ''
machine mail.${config.monorepo.vars.orgHost} login discussion@${config.monorepo.vars.orgHost} password ${config.sops.placeholder."mail_monorepo_password_pi"}'';
};
"matterbridge" = {
owner = "matterbridge";
content = ''
[irc.myirc]
Server="127.0.0.1:6667"
Nick="bridge"
RemoteNickFormat="[{PROTOCOL}] <{NICK}> "
UseTLS=false
[telegram.mytelegram]
Token="${config.sops.placeholder.telegram_token}"
RemoteNickFormat="<({PROTOCOL}){NICK}> "
MessageFormat="HTMLNick :"
QuoteFormat="{MESSAGE} (re @{QUOTENICK}: {QUOTEMESSAGE})"
QuoteLengthLimit=46
IgnoreMessages="^/"
[discord.mydiscord]
Token="${config.sops.placeholder.discord_token}"
Server="Null Identity"
AutoWebHooks=true
RemoteNickFormat="[{PROTOCOL}] <{NICK}> "
PreserveThreading=true
[[gateway]]
name="gateway1"
enable=true
[[gateway.inout]]
account="irc.myirc"
channel="#nullring"
[[gateway.inout]]
account="discord.mydiscord"
channel="ID:996282946879242262"
[[gateway.inout]]
account="telegram.mytelegram"
channel="-5290629325"
'';
};
} else { };
age = {
keyFile = "/home/${config.monorepo.vars.userName}/.config/sops/age/keys.txt";
};
secrets =
if config.monorepo.profiles.desktop.enable then {
mail = {
format = "yaml";
};
cloudflare-dns = {
format = "yaml";
};
digikey = {
format = "yaml";
};
dn42 = {
format = "yaml";
};
} else {
znc = {
format = "yaml";
};
znc_password_salt = {
format = "yaml";
};
znc_password_hash = {
format = "yaml";
};
matrix_bridge = {
format = "yaml";
};
mail_password = {
format = "yaml";
owner = "maddy";
};
mail_monorepo_password_pi = {
format = "yaml";
owner = "public-inbox";
};
mautrix_env = {
format = "yaml";
};
telegram_token = {
format = "yaml";
};
discord_token = {
format = "yaml";
};
mpd_password = {
format = "yaml";
owner = "nginx";
};
};
};
}
|