From 1ead7f237ebe8d6e7da2484e27bbb15e50ae671d Mon Sep 17 00:00:00 2001 From: arcnmx Date: Sat, 13 Jul 2024 12:05:05 -0700 Subject: [PATCH] chore(octoprint): config updates --- modules/system/exports/octoprint.nix | 5 ++- nixos/octoprint.nix | 51 +++++++++++++++++++++++----- 2 files changed, 46 insertions(+), 10 deletions(-) diff --git a/modules/system/exports/octoprint.nix b/modules/system/exports/octoprint.nix index 0ed528c0..c9c75f0e 100644 --- a/modules/system/exports/octoprint.nix +++ b/modules/system/exports/octoprint.nix @@ -29,7 +29,10 @@ in { default = { port = mkAlmostOptionDefault 5000; protocol = "http"; - status.enable = mkAlmostOptionDefault true; + status = { + enable = mkAlmostOptionDefault true; + gatus.client.network = mkAlmostOptionDefault "ip4"; + }; }; }; }; diff --git a/nixos/octoprint.nix b/nixos/octoprint.nix index cd89e73b..d425379d 100644 --- a/nixos/octoprint.nix +++ b/nixos/octoprint.nix @@ -17,30 +17,63 @@ in { { # TODO: api.key = sops? server = { + firstRun = false; + onlineCheck.enabled = true; + pluginBlacklist.enabled = true; + # TODO: secretKey = sops? reverseProxy = { + hostHeader = "X-Forwarded-Host"; schemeHeader = "X-Forwarded-Proto"; trustedDownstream = access.cidrForNetwork.allLan.all; }; }; - webcam = mkIf motion.enable { - # TODO - }; plugins = { _disabled = [ "softwareupdate" ]; }; + temperature = { + profiles = [ + { + name = "ABS"; + bed = 100; + extruder = 210; + chamber = null; + } + { + name = "PLA"; + bed = 60; + extruder = 180; + chamber = null; + } + ]; + }; + serial = { + port = "/dev/ttyUSB0"; + baudrate = 115200; + #autoconnect = true; + }; } + (mkIf motion.enable { + webcam = { + # TODO + }; + }) (mkIf (!behindVouch) { - autologinLocal = true; - autologinAs = "guest"; - localNetworks = access.cidrForNetwork.allLocal.all; + accessControl = { + autologinLocal = true; + #autologinAs = "guest"; + autologinAs = "admin"; + localNetworks = access.cidrForNetwork.allLocal.all; + }; }) (mkIf behindVouch { - trustRemoteUser = true; - addRemoteUsers = true; - remoteUserHeader = "X-Vouch-User"; + accessControl = { + trustRemoteUser = true; + addRemoteUsers = true; + remoteUserHeader = "X-Vouch-User"; + }; }) ]; };