summary refs log tree commit diff
path: root/nixos/modules
diff options
context:
space:
mode:
authorRobin Lambertz <robinlambertz+dev@gmail.com>2016-07-28 04:13:21 +0200
committerFranz Pletz <fpletz@fnordicwalking.de>2016-07-28 04:13:21 +0200
commitb65e9d87e2681bebb336f1c9a79d9ed8380b0907 (patch)
tree497e634bafa420b0c0e0f20ab4796a3a700f96dc /nixos/modules
parentc31cbe8f9ca17f0c9a8a1d3966399108a7e5dd95 (diff)
downloadnixlib-b65e9d87e2681bebb336f1c9a79d9ed8380b0907.tar
nixlib-b65e9d87e2681bebb336f1c9a79d9ed8380b0907.tar.gz
nixlib-b65e9d87e2681bebb336f1c9a79d9ed8380b0907.tar.bz2
nixlib-b65e9d87e2681bebb336f1c9a79d9ed8380b0907.tar.lz
nixlib-b65e9d87e2681bebb336f1c9a79d9ed8380b0907.tar.xz
nixlib-b65e9d87e2681bebb336f1c9a79d9ed8380b0907.tar.zst
nixlib-b65e9d87e2681bebb336f1c9a79d9ed8380b0907.zip
matrix-synapse: Only run StartPre script when data folder doesn't exist (#17216)
Diffstat (limited to 'nixos/modules')
-rw-r--r--nixos/modules/services/misc/matrix-synapse.nix10
1 files changed, 6 insertions, 4 deletions
diff --git a/nixos/modules/services/misc/matrix-synapse.nix b/nixos/modules/services/misc/matrix-synapse.nix
index 1a95e2d9367d..bb8dc640f981 100644
--- a/nixos/modules/services/misc/matrix-synapse.nix
+++ b/nixos/modules/services/misc/matrix-synapse.nix
@@ -522,10 +522,12 @@ in {
       after = [ "network.target" ];
       wantedBy = [ "multi-user.target" ];
       preStart = ''
-        mkdir -p /var/lib/matrix-synapse
-        chmod 700 /var/lib/matrix-synapse
-        chown -R matrix-synapse:matrix-synapse /var/lib/matrix-synapse
-        ${cfg.package}/bin/homeserver --config-path ${configFile} --keys-directory /var/lib/matrix-synapse/ --generate-keys
+        if ! test -e /var/lib/matrix-synapse; then
+          mkdir -p /var/lib/matrix-synapse
+          chmod 700 /var/lib/matrix-synapse
+          chown -R matrix-synapse:matrix-synapse /var/lib/matrix-synapse
+          ${cfg.package}/bin/homeserver --config-path ${configFile} --keys-directory /var/lib/matrix-synapse/ --generate-keys
+        fi
       '';
       serviceConfig = {
         Type = "simple";