From c7ccfc5f9ff3904c22c905c7bc0ef46fc03faa7e Mon Sep 17 00:00:00 2001 From: Maximilian Bosch Date: Sun, 29 Dec 2024 21:58:00 +0100 Subject: [PATCH] nixos/nextcloud: drop default for `dbtype` setting Closes #355606 To quote the system requirements[1]: > Database: SQLite 3.16+ (only recommended for testing and minimal-instances) As discussed[2], this would already fail at eval-time for everyone and makes all sqlite users aware that this is probably not the best choice. Doing that regardless, is now an explicit decision. [1] https://docs.nextcloud.com/server/30/admin_manual/installation/system_requirements.html [2] https://github.com/NixOS/nixpkgs/pull/369242#discussion_r1899706512 --- nixos/doc/manual/release-notes/rl-2505.section.md | 5 +++++ nixos/modules/services/web-apps/nextcloud.nix | 1 - nixos/tests/nextcloud/basic.nix | 1 + nixos/tests/nextcloud/with-objectstore.nix | 2 ++ 4 files changed, 8 insertions(+), 1 deletion(-) diff --git a/nixos/doc/manual/release-notes/rl-2505.section.md b/nixos/doc/manual/release-notes/rl-2505.section.md index f974d5836b17..1b1d58e01358 100644 --- a/nixos/doc/manual/release-notes/rl-2505.section.md +++ b/nixos/doc/manual/release-notes/rl-2505.section.md @@ -111,6 +111,11 @@ - `ps3-disc-dumper` was updated to 4.2.5, which removed the CLI project and now exclusively offers the GUI +- [](#opt-services.nextcloud.config.dbtype) is unset by default, the previous default was `sqlite`. + This was done because `sqlite` is not a reasonable default since it's + [not recommended by upstream](https://docs.nextcloud.com/server/30/admin_manual/installation/system_requirements.html) + and thus doesn't qualify as default. + - `asusd` has been upgraded to version 6 which supports multiple aura devices. To account for this, the single `auraConfig` configuration option has been replaced with `auraConfigs` which is an attribute set of config options per each device. The config files may also be now specified as either source files or text strings; to account for this you will need to specify that `text` is used for your existing configs, e.g.: ```diff -services.asusd.asusdConfig = '''file contents''' diff --git a/nixos/modules/services/web-apps/nextcloud.nix b/nixos/modules/services/web-apps/nextcloud.nix index eae005bca545..595244d8de9c 100644 --- a/nixos/modules/services/web-apps/nextcloud.nix +++ b/nixos/modules/services/web-apps/nextcloud.nix @@ -416,7 +416,6 @@ in { config = { dbtype = mkOption { type = types.enum [ "sqlite" "pgsql" "mysql" ]; - default = "sqlite"; description = "Database type."; }; dbname = mkOption { diff --git a/nixos/tests/nextcloud/basic.nix b/nixos/tests/nextcloud/basic.nix index f8306503d85f..217f22714c1c 100644 --- a/nixos/tests/nextcloud/basic.nix +++ b/nixos/tests/nextcloud/basic.nix @@ -59,6 +59,7 @@ runTest ( services.nextcloud = { enable = true; + config.dbtype = "sqlite"; datadir = "/var/lib/nextcloud-data"; autoUpdateApps = { enable = true; diff --git a/nixos/tests/nextcloud/with-objectstore.nix b/nixos/tests/nextcloud/with-objectstore.nix index 48e1edea67ba..5f24fc48851c 100644 --- a/nixos/tests/nextcloud/with-objectstore.nix +++ b/nixos/tests/nextcloud/with-objectstore.nix @@ -36,6 +36,8 @@ runTest ( networking.firewall.allowedTCPPorts = [ 9000 ]; environment.systemPackages = [ pkgs.minio-client ]; + services.nextcloud.config.dbtype = "sqlite"; + services.nextcloud.config.objectstore.s3 = { enable = true; bucket = "nextcloud";