fieldpoc/docs/extension/nerd.md

34 lines
870 B
Markdown

# Nerd web interface
Nerd is a web interface for managing extensions.
Source code: <https://github.com/dect-e/nerd/>
## Sync extensions to FieldPOC
Nerd has an HTTP endpoint generation a FieldPOC compatible extensions file.
You can adopt the follwing NixOS configuration snipped.
It downloads the JSON file, copies it to the location FieldPOC expects the extensions and reload FieldPOC.
```
systemd.services.fieldpoc-nerd = {
wantedBy = ["multi-user.target"];
startAt = "*-*-* *:*:00";
script = let
reloadScript = pkgs.writeText "reload" ''
spawn ${pkgs.inetutils}/bin/telnet localhost 9437
expect "> "
send "reload\n"
expect "> "
send "exit\n"
expect "disconnecting"
'';
in ''
${pkgs.curl}/bin/curl https://nerd.example.com/export.json\?event=1 > /etc/fieldpoc/extensions.json
${pkgs.expect}/bin/expect ${reloadScript}
'';
};
```