summary refs log tree commit diff stats
diff options
context:
space:
mode:
-rw-r--r--configuration.nix1
-rw-r--r--modules/caldav.nix26
2 files changed, 27 insertions, 0 deletions
diff --git a/configuration.nix b/configuration.nix
index b91c508..7fb8c42 100644
--- a/configuration.nix
+++ b/configuration.nix
@@ -12,6 +12,7 @@
       ./modules/mailserver.nix
       ./modules/mealie.nix
       ./modules/polaris.nix
+      ./modules/caldav.nix
     ];
 
   networking.hostName = "nixos";
diff --git a/modules/caldav.nix b/modules/caldav.nix
new file mode 100644
index 0000000..f78cd20
--- /dev/null
+++ b/modules/caldav.nix
@@ -0,0 +1,26 @@
+{ config, pkgs, libs, ... }:
+{
+
+  services.radicale = {
+    enable = true;
+    settings.server.hosts = [ "0.0.0.0:5232" ];
+    settings.server.ssl = "False";
+    settings.auth = {
+      type = "htpasswd";
+      htpasswd_filename = "/secret/caldav_users";
+      htpasswd_encryption = "plain";
+    };
+  };
+
+  services.nginx.virtualHosts."caldav.krinitsin.com" = {
+    forceSSL = true;
+    useACMEHost = "krinitsin.com";
+    locations."/" = {
+      proxyPass = "http://localhost:5232";
+      recommendedProxySettings = true;
+    };
+  };
+
+  security.acme.certs."krinitsin.com".extraDomainNames = [ "caldav.krinitsin.com" ];
+
+}