blob: 73c13660062d3999154d022fdb6b5b1f45a64e2b (
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
|
{ config, pkgs, ... }:
let
ports = import ./Ports.nix;
dataDir = "/var/lib/nostr-rs-relay";
# https://git.sr.ht/~gheartsfield/nostr-rs-relay/tree/master/config.toml
cfg = pkgs.writeText "config.toml" ''
[info]
name = "simatime"
relay_url = "wss://nostr.simatime.com"
description = "yet another nostr relay"
[database]
data_directory = "/var/lib/nostr-rs-relay"
[network]
address = "0.0.0.0"
port = ${toString ports.nostr-relay}
'';
in {
config.systemd.services.nostr-relay = {
path = [ pkgs.nostr-rs-relay ];
wantedBy = [ "multi-user.target" ];
preStart = ''
mkdir -p ${dataDir}
cat "${cfg}" > ${dataDir}/config.toml
'';
script = "nostr-rs-relay --db ${dataDir}";
serviceConfig = {
Environment = [
"RUST_LOG=info,nostr_rs_relay=info"
"APP_DATA=${dataDir}"
];
WorkingDirectory = dataDir;
KillSignal = "INT";
Type = "simple";
Restart = "always";
RestartSec = "1";
};
};
}
|