diff --git a/nixos/modules/services/web-apps/nextcloud.nix b/nixos/modules/services/web-apps/nextcloud.nix
index 413db757357..5090d424c08 100644
--- a/nixos/modules/services/web-apps/nextcloud.nix
+++ b/nixos/modules/services/web-apps/nextcloud.nix
@@ -280,6 +280,24 @@ in {
may be served via HTTPS.
'';
};
+
+ defaultPhoneRegion = mkOption {
+ default = null;
+ type = types.nullOr types.str;
+ example = "DE";
+ description = ''
+
+ This option exists since Nextcloud 21! If older versions are used,
+ this will throw an eval-error!
+
+
+ ISO 3611-1
+ country codes for automatic phone-number detection without a country code.
+
+ With e.g. DE set, the +49 can be omitted for
+ phone-numbers.
+ '';
+ };
};
caching = {
@@ -345,6 +363,9 @@ in {
&& !(acfg.adminpass != null && acfg.adminpassFile != null));
message = "Please specify exactly one of adminpass or adminpassFile";
}
+ { assertion = versionOlder cfg.package.version "21" -> cfg.config.defaultPhoneRegion == null;
+ message = "The `defaultPhoneRegion'-setting is only supported for Nextcloud >=21!";
+ }
];
warnings = let
@@ -442,6 +463,7 @@ in {
'dbtype' => '${c.dbtype}',
'trusted_domains' => ${writePhpArrary ([ cfg.hostName ] ++ c.extraTrustedDomains)},
'trusted_proxies' => ${writePhpArrary (c.trustedProxies)},
+ ${optionalString (c.defaultPhoneRegion != null) "'default_phone_region' => '${c.defaultPhoneRegion}',"}
];
'';
occInstallCmd = let