From ded54623986c89efa4d6c8e3d95d9f35babd0337 Mon Sep 17 00:00:00 2001 From: Ben Wolsieffer Date: Mon, 11 Dec 2023 20:41:16 -0500 Subject: [PATCH] nixos/syncthing: add databaseDir option #264753 mistakenly used the dataDir option to set the -data argument. This broke existing configurations because -data used to be set to configDir (implicitly, using the -home option, which is equivalent to setting -config and -data to the same value). Fix this by introducing a new databaseDir option sets -data and defaults to configDir. This maintains the existing behavior by default while still allowing users to specify separate config and database directories. --- nixos/modules/services/networking/syncthing.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/nixos/modules/services/networking/syncthing.nix b/nixos/modules/services/networking/syncthing.nix index 99d4d9eeffcc..e0425792431e 100644 --- a/nixos/modules/services/networking/syncthing.nix +++ b/nixos/modules/services/networking/syncthing.nix @@ -559,6 +559,15 @@ in { ''; }; + databaseDir = mkOption { + type = types.path; + description = lib.mdDoc '' + The directory containing the database and logs. + ''; + default = cfg.configDir; + defaultText = literalExpression "config.${opt.configDir}"; + }; + extraFlags = mkOption { type = types.listOf types.str; default = []; @@ -660,7 +669,7 @@ in { -no-browser \ -gui-address=${if isUnixGui then "unix://" else ""}${cfg.guiAddress} \ -config=${cfg.configDir} \ - -data=${cfg.dataDir} \ + -data=${cfg.databaseDir} \ ${escapeShellArgs cfg.extraFlags} ''; MemoryDenyWriteExecute = true;