summaryrefslogtreecommitdiffstats
path: root/krebs/2configs/shack/power/u300-power.nix
diff options
context:
space:
mode:
Diffstat (limited to 'krebs/2configs/shack/power/u300-power.nix')
-rw-r--r--krebs/2configs/shack/power/u300-power.nix29
1 files changed, 29 insertions, 0 deletions
diff --git a/krebs/2configs/shack/power/u300-power.nix b/krebs/2configs/shack/power/u300-power.nix
new file mode 100644
index 00000000..66e54169
--- /dev/null
+++ b/krebs/2configs/shack/power/u300-power.nix
@@ -0,0 +1,29 @@
+{ pkgs, ... }:
+let
+ src = pkgs.fetchFromGitHub {
+ repo = "shackstrom";
+ owner = "samularity";
+ rev = "adfbdc7d12000fbc9fd9367c8ef0a53b7d0a9fad";
+ hash = "sha256-77vSX2+1XXaBVgLka+tSEK/XYZASEk9iq+uEuO1aOUQ=";
+ };
+ pkg = pkgs.writers.writePython3 "test_python3" {
+ libraries = [ pkgs.python3Packages.requests pkgs.python3Packages.paho-mqtt ];
+ } (builtins.readFile "${src}/shackstrom.py");
+in
+{
+ systemd.services = {
+ u300-power = {
+ enable = true;
+ environment = {
+ DATA_URL = "http://10.42.20.255/csv.html";
+ BROKER = "mqtt.shack";
+ };
+ serviceConfig = {
+ Restart = "always";
+ ExecStart = pkg;
+ RestartSec = "15s";
+ };
+ wantedBy = [ "multi-user.target" ];
+ };
+ };
+}