This repository has no description
921 B
39 lines
1{
2 self,
3 config,
4 pkgs,
5 ...
6}:
7{
8 imports = [
9 self.inputs.spora.nixosModules.spora
10 ];
11 services.mycelium = {
12 enable = true;
13 keyFile = config.clanCore.facts.services.mycelium.secret.mycelium_key.path;
14 extraArgs = [
15 "--silent"
16 ];
17 peers = [
18 "quic://10.42.0.1:9651"
19 "tcp://10.42.0.1:9651"
20 ];
21 };
22 clanCore.facts.services.mycelium = {
23 secret."mycelium_key" = { };
24 public."mycelium_ip" = { };
25 public."mycelium_pubkey" = { };
26 generator = {
27 path = [
28 pkgs.mycelium
29 pkgs.coreutils
30 pkgs.jq
31 ];
32 script = ''
33 timeout 5 mycelium --key-file "$secrets"/mycelium_key || :
34 mycelium inspect --key-file "$secrets"/mycelium_key --json | jq -r .publicKey > "$facts"/mycelium_pubkey
35 mycelium inspect --key-file "$secrets"/mycelium_key --json | jq -r .address > "$facts"/mycelium_ip
36 '';
37 };
38 };
39}