From fcd590d116e22c01092808d9a533cf28a2bebedb Mon Sep 17 00:00:00 2001 From: Aneesh Agrawal Date: Sun, 17 Sep 2017 22:11:23 -0700 Subject: [PATCH] radicale: Add extraArgs option to assist in data migration --- nixos/doc/manual/release-notes/rl-1709.xml | 2 +- nixos/modules/services/networking/radicale.nix | 12 +++++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/nixos/doc/manual/release-notes/rl-1709.xml b/nixos/doc/manual/release-notes/rl-1709.xml index f271451970a2..35534af1f1dc 100644 --- a/nixos/doc/manual/release-notes/rl-1709.xml +++ b/nixos/doc/manual/release-notes/rl-1709.xml @@ -107,7 +107,7 @@ rmdir /var/lib/ipfs/.ipfs The mysql default dataDir has changed from /var/mysql to /var/lib/mysql. - Radicale's default package has changed from 1.x to 2.x. Instructions to migrate can be found here . It is also possible to use the newer version by setting the package to radicale2, which is done automatically when stateVersion is 17.09 or higher. + Radicale's default package has changed from 1.x to 2.x. Instructions to migrate can be found here . It is also possible to use the newer version by setting the package to radicale2, which is done automatically when stateVersion is 17.09 or higher. The extraArgs option has been added to allow passing the data migration arguments specified in the instructions. diff --git a/nixos/modules/services/networking/radicale.nix b/nixos/modules/services/networking/radicale.nix index f1b8edf43713..56f2e976cff5 100644 --- a/nixos/modules/services/networking/radicale.nix +++ b/nixos/modules/services/networking/radicale.nix @@ -48,6 +48,12 @@ in configuration file. ''; }; + + services.radicale.extraArgs = mkOption { + type = types.listOf types.string; + default = []; + description = "Extra arguments passed to the Radicale daemon."; + }; }; config = mkIf cfg.enable { @@ -71,7 +77,11 @@ in after = [ "network.target" ]; wantedBy = [ "multi-user.target" ]; serviceConfig = { - ExecStart = "${cfg.package}/bin/radicale -C ${confFile} -f"; + ExecStart = concatStringsSep " " ([ + "${cfg.package}/bin/radicale" "-C" confFile + ] ++ ( + map escapeShellArg cfg.extraArgs + )); User = "radicale"; Group = "radicale"; };