aboutsummaryrefslogtreecommitdiffstats
path: root/modules/by-name/ne/nextcloud/module.nix
diff options
context:
space:
mode:
Diffstat (limited to 'modules/by-name/ne/nextcloud/module.nix')
-rw-r--r--modules/by-name/ne/nextcloud/module.nix87
1 files changed, 0 insertions, 87 deletions
diff --git a/modules/by-name/ne/nextcloud/module.nix b/modules/by-name/ne/nextcloud/module.nix
deleted file mode 100644
index f91ddae..0000000
--- a/modules/by-name/ne/nextcloud/module.nix
+++ /dev/null
@@ -1,87 +0,0 @@
-{
- config,
- pkgs,
- lib,
- ...
-}: let
- cfg = config.vhack.nextcloud;
-in {
- options.vhack.nextcloud = {
- enable = lib.mkEnableOption "a sophisticated nextcloud setup";
- package = lib.mkOption {
- type = lib.types.package;
- default = pkgs.nextcloud32;
- description = "The nextcloud package to use";
- };
- hostname = lib.mkOption {
- type = lib.types.str;
- description = "The nextcloud hostname (fqdn)";
- };
- adminpassFile = lib.mkOption {
- type = lib.types.path;
- description = "The age encrypted admin password file";
- };
- };
-
- config = lib.mkIf cfg.enable {
- vhack = {
- nginx.enable = true;
- postgresql.enable = true;
- persist.directories = [
- "/var/lib/nextcloud"
- ];
- };
- age.secrets = {
- adminpassFile = {
- file = cfg.adminpassFile;
- mode = "0700";
- owner = "nextcloud";
- group = "nextcloud";
- };
- };
-
- services = {
- nextcloud = {
- enable = true;
- inherit (cfg) package;
-
- extraApps = {
- inherit (cfg.package.packages.apps) calendar contacts tasks;
- };
- extraAppsEnable = true;
- configureRedis = true;
- config = {
- adminuser = "admin";
- adminpassFile = config.age.secrets.adminpassFile.path;
- dbname = "nextcloud";
- dbuser = "nextcloud";
- dbtype = "pgsql";
- };
- database.createLocally = true;
- hostName = cfg.hostname;
- https = true;
- maxUploadSize = "5G";
- settings = {
- default_phone_region = "DE";
- };
- };
- nginx.virtualHosts.${cfg.hostname} = {
- forceSSL = true;
- enableACME = true;
- };
- };
- users = {
- users = {
- "nextcloud".uid = config.vhack.constants.ids.uids.nextcloud;
- "redis-nextcloud" = {
- uid = config.vhack.constants.ids.uids.redis-nextcloud;
- group = "redis-nextcloud";
- };
- };
- groups = {
- "nextcloud".gid = config.vhack.constants.ids.gids.nextcloud;
- "redis-nextcloud".gid = config.vhack.constants.ids.gids.redis-nextcloud;
- };
- };
- };
-}