diff options
Diffstat (limited to 'modules/nixos/radicale.nix')
-rw-r--r-- | modules/nixos/radicale.nix | 58 |
1 files changed, 0 insertions, 58 deletions
diff --git a/modules/nixos/radicale.nix b/modules/nixos/radicale.nix deleted file mode 100644 index 59fb4a2..0000000 --- a/modules/nixos/radicale.nix +++ /dev/null @@ -1,58 +0,0 @@ -{ - config, - inputs, - lib, - libNginx, - ... -}: -with lib; -let - cfg = config.nixfiles.modules.radicale; -in -{ - options.nixfiles.modules.radicale = { - enable = mkEnableOption "Radicale"; - - domain = mkOption { - description = "Domain name sans protocol scheme."; - type = with types; str; - default = "radicale.${config.networking.domain}"; - }; - }; - - config = - let - port = 5232; - in - mkIf cfg.enable { - ark.directories = [ "/var/lib/radicale" ]; - - secrets.radicale-htpasswd = { - file = "${inputs.self}/secrets/radicale-htpasswd"; - owner = "radicale"; - group = "radicale"; - }; - - nixfiles.modules.nginx = { - enable = true; - upstreams.radicale.servers."127.0.0.1:${toString port}" = { }; - virtualHosts.${cfg.domain} = { - locations."/".proxyPass = "http://radicale"; - extraConfig = libNginx.config.internalOnly; - }; - }; - - services.radicale = { - enable = true; - settings = { - server.hosts = [ "127.0.0.1:${toString port}" ]; - web.type = "none"; - auth = { - type = "htpasswd"; - htpasswd_filename = config.secrets.radicale-htpasswd.path; - htpasswd_encryption = "bcrypt"; - }; - }; - }; - }; -} |