From 386f4d064e86e84e5ed38edde0cb4e98238aaa88 Mon Sep 17 00:00:00 2001
From: Nydragon <contact@ccnlc.eu>
Date: Tue, 3 Dec 2024 02:00:27 +0100
Subject: [PATCH] chore: bump and fix raptus & shan

---
 hosts/raptus/headscale/acls.nix |  2 +-
 hosts/raptus/headscale/dns.nix  |  6 ++++--
 hosts/shan/default.nix          |  2 +-
 options/server/navidrome.nix    | 13 +++++++++----
 4 files changed, 15 insertions(+), 8 deletions(-)

diff --git a/hosts/raptus/headscale/acls.nix b/hosts/raptus/headscale/acls.nix
index e8facce..c648cfd 100644
--- a/hosts/raptus/headscale/acls.nix
+++ b/hosts/raptus/headscale/acls.nix
@@ -15,7 +15,7 @@ let
   };
 in
 {
-  services.headscale.settings.acl_policy_path = pkgs.writeTextFile {
+  services.headscale.settings.policy.path = pkgs.writeTextFile {
     name = "headscale-acl.hujson";
     text = builtins.toJSON {
       acls = [
diff --git a/hosts/raptus/headscale/dns.nix b/hosts/raptus/headscale/dns.nix
index 2ff1ab5..bc55bdd 100644
--- a/hosts/raptus/headscale/dns.nix
+++ b/hosts/raptus/headscale/dns.nix
@@ -1,13 +1,14 @@
 {
   config = {
-    services.headscale.settings.dns_config = {
+    services.headscale.settings.dns = {
       override_local_dns = true;
       magic_dns = true;
+      base_domain = "ts";
 
       # FIX: shan being down takes down entire tailnet
       # 1 -> move dns to dedicated device
       # 2 -> find out if fallback dns's are supported by headscale
-      nameservers = [
+      nameservers.global = [
         "100.64.0.4"
       ];
       extra_records =
@@ -43,6 +44,7 @@
           "paperless"
           "truenas"
           "fritz"
+          "dav"
         ];
     };
   };
diff --git a/hosts/shan/default.nix b/hosts/shan/default.nix
index 4a2eb74..7eb8342 100644
--- a/hosts/shan/default.nix
+++ b/hosts/shan/default.nix
@@ -32,7 +32,7 @@
       kitchenowl = {
         enable = true;
         openFirewall = true;
-        version = "v0.5.2";
+        version = "v0.6.4";
       };
       nginxproxymanager = {
         enable = true;
diff --git a/options/server/navidrome.nix b/options/server/navidrome.nix
index 424f8d3..688c3cd 100644
--- a/options/server/navidrome.nix
+++ b/options/server/navidrome.nix
@@ -48,7 +48,7 @@ in
     settings = options.services.navidrome.settings;
     restartPolicy = mkOption {
       type = str;
-      default = "on-failure";
+      default = "always";
       defaultText = ''
         Refer to https://www.mankier.com/5/systemd.service#Options-Restart for possible values,
         defines the restart behaviour in case the program ends.
@@ -75,9 +75,14 @@ in
       } // cfg.settings;
     };
 
-    systemd.services.navidrome.serviceConfig = {
-      Restart = cfg.restartPolicy;
-      EnvironmentFile = config.age.secrets.navidrome.path;
+    systemd.services.navidrome = {
+      serviceConfig = {
+        Restart = cfg.restartPolicy;
+        EnvironmentFile = config.age.secrets.navidrome.path;
+      };
+      unitConfig = {
+        RequiresMountsFor = mkIf (cfg.library.type == "nfs") [ cfg.library.path ];
+      };
     };
   };
 }