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