From 974caa92ec1c729d5a158d41b07dfcb40baba4c5 Mon Sep 17 00:00:00 2001 From: Andre Date: Fri, 27 Dec 2024 12:57:40 -0500 Subject: [PATCH] Services: add Nextcloud --- modules/nixos/secrets/default.nix | 232 ++++++++++--------- modules/nixos/services/nextcloud/default.nix | 67 ++++++ systems/x86_64-linux/Hevana/default.nix | 14 +- 3 files changed, 189 insertions(+), 124 deletions(-) create mode 100644 modules/nixos/services/nextcloud/default.nix diff --git a/modules/nixos/secrets/default.nix b/modules/nixos/secrets/default.nix index e73318e..9f91db4 100644 --- a/modules/nixos/secrets/default.nix +++ b/modules/nixos/secrets/default.nix @@ -1,115 +1,117 @@ -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 +1oFqHSoDZczH13KsbtmIeg== diff --git a/modules/nixos/services/nextcloud/default.nix b/modules/nixos/services/nextcloud/default.nix new file mode 100644 index 0000000..e35dd05 --- /dev/null +++ b/modules/nixos/services/nextcloud/default.nix @@ -0,0 +1,67 @@ +{ + config, + lib, + namespace, + pkgs, + ... +}: +let + cfg = config.${namespace}.services.nextcloud; +in +{ + options = { + ${namespace}.services.nextcloud = { + enable = lib.mkEnableOption "Enables the Nextcloud groupware service."; + home = lib.mkOption { + default = "/var/lib/nextcloud"; + type = lib.types.str; + description = "Where to store Nextcloud's files"; + }; + url = lib.mkOption { + default = ""; + type = lib.types.str; + description = "The complete URL where Nextcloud is hosted."; + example = "https://nextcloud.example.com"; + }; + }; + }; + + config = lib.mkIf cfg.enable { + services = { + nextcloud = { + enable = true; + home = cfg.home; + hostName = cfg.url; + appstoreEnable = true; + maxUploadSize = "10G"; + nginx.recommendedHttpHeaders = true; + # Automatically update apps nightly + autoUpdateApps = { + enable = true; + startAt = "04:00"; + }; + + # Set default admin password + config.adminpassFile = "${pkgs.writeText "nextcloud-default-pass" '' + config.${namespace}.secrets.services.defaultPassword; + ''}"; + + settings = { + # Add additional previewers here, e.g. for HEIC images + enabledPreviewProviders = lib.mkAfter [ + "OC\\Preview\\HEIC" + ]; + + # Enable mail delivery. See https://wiki.nixos.org/wiki/Nextcloud#Mail_delivery + mail_smtpmode = "sendmail"; + mail_sendmailmode = "pipe"; + }; + }; + }; + + systemd.services = { + nextcloud.unitConfig.RequiresMountsFor = cfg.home; + nginx.wants = [ config.systemd.services.nextcloud.name ]; + }; + }; +} diff --git a/systems/x86_64-linux/Hevana/default.nix b/systems/x86_64-linux/Hevana/default.nix index a7db5fa..1f6fcdd 100644 --- a/systems/x86_64-linux/Hevana/default.nix +++ b/systems/x86_64-linux/Hevana/default.nix @@ -213,6 +213,11 @@ in apiKey = config.${namespace}.secrets.services.netdata.apiKey; }; }; + nextcloud = { + enable = false; + url = config.${namespace}.secrets.services.nextcloud.url; + home = "${services-root}/nextcloud"; + }; nginx = { enable = true; virtualHosts = { @@ -254,15 +259,6 @@ in ]; }; }; - rss = { - enable = false; - home = "${services-root}/freshrss"; - url = config.${namespace}.secrets.services.rss.url; - auth = with config.${namespace}.secrets.services.rss.auth; { - user = user; - password = password; - }; - }; ssh = { enable = true; ports = [ config.${namespace}.secrets.hosts.hevana.ssh.port ];