{ lib, config, pkgs, ... }: { environment = { systemPackages = with pkgs; [ klipperscreen ]; }; services = { klipper = { enable = true; configFile = ./printer.cfg; firmwares."sovol06" = { serial = "/dev/serial/by-id/usb-1a86_USB_Serial-if00-port0"; enableKlipperFlash = true; enable = true; configFile = ./firmware.conf; }; }; mainsail = { enable = true; nginx = { enableACME = false; #useACMEHost = "home.opel-online.de"; serverName = "nbf5.home.opel-online.de"; #onlySSL = true; listenAddresses = [ "0.0.0.0" "::" ]; #forceSSL = true; }; }; moonraker = { enable = true; allowSystemControl = true; }; # nginx = { # enable = true; # recommendedProxySettings = true; # recommendedTlsSettings = true; # recommendedGzipSettings = true; # recommendedOptimisation = true; # virtualHosts = { # "ci.kabtop.de" = { # enableACME = true; # forceSSL = true; # default = true; # locations."/".return = "503"; # }; # "hydra.ci.kabtop.de" = { # enableACME = true; # forceSSL = true; # locations."/" = { # proxyPass = "http://localhost:3000"; # extraConfig = '' # proxy_set_header X-Forwarded-Port 443; # ''; # }; # }; # "cache.ci.kabtop.de" = { # enableACME = true; # forceSSL = true; # locations."/".proxyPass = "http://${config.services.nix-serve.bindAddress}:${toString config.services.nix-serve.port}"; # }; # }; # }; # }; # # security.acme = { # acceptTerms = true; # defaults = { # email = "webmaster@kabtop.de"; # webroot = "/var/lib/acme/acme-challenge"; # #server = "https://acme-staging-v02.api.letsencrypt.org/directory"; # }; }; }