diff --git a/nixos/doc/manual/release-notes/rl-1803.xml b/nixos/doc/manual/release-notes/rl-1803.xml
index 46cbeb0a158..8391c550afa 100644
--- a/nixos/doc/manual/release-notes/rl-1803.xml
+++ b/nixos/doc/manual/release-notes/rl-1803.xml
@@ -182,6 +182,20 @@ following incompatible changes:
lib.mkOverride can be used.
+
+
+ The following changes apply if the stateVersion is changed to 18.03 or higher.
+ For stateVersion = "17.09" or lower the old behavior is preserved.
+
+
+
+
+ matrix-synapse uses postgresql by default instead of sqlite.
+ Migration instructions can be found here .
+
+
+
+
diff --git a/nixos/modules/services/misc/matrix-synapse.nix b/nixos/modules/services/misc/matrix-synapse.nix
index 33b3b17359c..b153ebbc98c 100644
--- a/nixos/modules/services/misc/matrix-synapse.nix
+++ b/nixos/modules/services/misc/matrix-synapse.nix
@@ -341,7 +341,9 @@ in {
};
database_type = mkOption {
type = types.enum [ "sqlite3" "psycopg2" ];
- default = "sqlite3";
+ default = if versionAtLeast config.system.stateVersion "18.03"
+ then "psycopg2"
+ else "sqlite3";
description = ''
The database engine name. Can be sqlite or psycopg2.
'';