From 80b9e756d51dca49cf4d96a462b072f072e1ad61 Mon Sep 17 00:00:00 2001 From: Henry-Hiles Date: Sat, 23 Aug 2025 11:00:06 -0400 Subject: [PATCH] Auto restart services on OOM --- clients/quadraticserver/caddy.nix | 1 + clients/quadraticserver/call.nix | 6 ++++++ clients/quadraticserver/docs.nix | 10 +++++++++- clients/quadraticserver/matrix/bridges.nix | 3 +++ clients/quadraticserver/matrix/grapevine.nix | 8 +++++++- clients/quadraticserver/redlib.nix | 2 ++ clients/quadraticserver/searxng.nix | 2 +- flake.nix | 5 +---- 8 files changed, 30 insertions(+), 7 deletions(-) diff --git a/clients/quadraticserver/caddy.nix b/clients/quadraticserver/caddy.nix index 39e4f11..f8c8f63 100644 --- a/clients/quadraticserver/caddy.nix +++ b/clients/quadraticserver/caddy.nix @@ -5,6 +5,7 @@ ... }: { config = { + systemd.services.caddy.serviceConfig.Restart = lib.mkForce "always"; networking.firewall.allowedTCPPorts = [443]; services.caddy = { enable = true; diff --git a/clients/quadraticserver/call.nix b/clients/quadraticserver/call.nix index 54df1d8..d2d58fa 100644 --- a/clients/quadraticserver/call.nix +++ b/clients/quadraticserver/call.nix @@ -1,8 +1,14 @@ { + lib, pkgs, config, ... }: { + systemd.services = { + livekit.serviceConfig.Restart = lib.mkForce "always"; + lk-jwt-service.serviceConfig.Restart = lib.mkForce "always"; + }; + services = let domain = "call.federated.nexus"; in { diff --git a/clients/quadraticserver/docs.nix b/clients/quadraticserver/docs.nix index 3c20428..601458f 100644 --- a/clients/quadraticserver/docs.nix +++ b/clients/quadraticserver/docs.nix @@ -9,7 +9,15 @@ in { imports = [inputs.lasuite-docs-proxy.nixosModules.default]; - systemd.services.lasuite-docs-collaboration-server.serviceConfig.EnvironmentFile = cfg.environmentFile; + systemd.services = { + lasuite-docs-collaboration-server.serviceConfig = { + EnvironmentFile = cfg.environmentFile; + Restart = "always"; + }; + + lasuite-docs-celery.serviceConfig.Restart = "always"; + lasuite-docs.serviceConfig.Restart = "always"; + }; services = let proxySocket = "/var/run/lasuite-docs-proxy/socket"; diff --git a/clients/quadraticserver/matrix/bridges.nix b/clients/quadraticserver/matrix/bridges.nix index e331ebf..38e23df 100644 --- a/clients/quadraticserver/matrix/bridges.nix +++ b/clients/quadraticserver/matrix/bridges.nix @@ -1,4 +1,5 @@ { + lib, pkgs, inputs, config, @@ -67,4 +68,6 @@ in { caddy.virtualHosts."${domain}".extraConfig = "reverse_proxy 127.0.0.1:${config.services.matrix-ooye.socket}"; }; + + systemd.services.matrix-ooye.serviceConfig.Restart = lib.mkForce "always"; } diff --git a/clients/quadraticserver/matrix/grapevine.nix b/clients/quadraticserver/matrix/grapevine.nix index fb25f36..6f69c46 100644 --- a/clients/quadraticserver/matrix/grapevine.nix +++ b/clients/quadraticserver/matrix/grapevine.nix @@ -1,7 +1,13 @@ -{inputs, ...}: { +{ + inputs, + lib, + ... +}: { imports = [inputs.grapevine.nixosModules.default]; networking.firewall.allowedTCPPorts = [8448]; + systemd.services.grapevine.serviceConfig.Restart = lib.mkForce "always"; + services = let domain = "federated.nexus"; subdomain = "matrix.${domain}"; diff --git a/clients/quadraticserver/redlib.nix b/clients/quadraticserver/redlib.nix index 431d9a7..9c272bb 100644 --- a/clients/quadraticserver/redlib.nix +++ b/clients/quadraticserver/redlib.nix @@ -9,4 +9,6 @@ caddy.authedHosts."redlib.federated.nexus" = with config.services.redlib; "reverse_proxy ${address}:${toString port}"; }; + + systemd.services.redlib.serviceConfig.Restart = "always"; } diff --git a/clients/quadraticserver/searxng.nix b/clients/quadraticserver/searxng.nix index cafc3b0..ccb2323 100644 --- a/clients/quadraticserver/searxng.nix +++ b/clients/quadraticserver/searxng.nix @@ -109,7 +109,7 @@ UMask = "007"; }; in { - searx.serviceConfig = commonConfig; + searx.serviceConfig = commonConfig // {Restart = "always";}; searx-init.serviceConfig = commonConfig; }; } diff --git a/flake.nix b/flake.nix index 144a6c2..775e437 100755 --- a/flake.nix +++ b/flake.nix @@ -19,10 +19,7 @@ }; stylix = { url = "github:danth/stylix"; - inputs = { - nixpkgs.follows = "nixpkgs"; - base16.url = "github:SuperSandro2000/base16.nix/patch-1"; - }; + inputs.nixpkgs.follows = "nixpkgs"; }; ooye = { url = "git+https://cgit.rory.gay/nix/OOYE-module.git";