+7
nixos/doc/manual/release-notes/rl-2311.section.md
+7
nixos/doc/manual/release-notes/rl-2311.section.md
···- The `services.ananicy.extraRules` option now has the type of `listOf attrs` instead of `string`.+- The `matrix-synapse` package & module have undergone some significant internal changes, for most setups no intervention is needed, though:+- The option [`services.matrix-synapse.package`](#opt-services.matrix-synapse.package) is now read-only. For modifying the package, use an overlay which modifies `matrix-synapse-unwrapped` instead. More on that below.+- The `enableSystemd` & `enableRedis` arguments have been removed and `matrix-synapse` has been renamed to `matrix-synapse-unwrapped`. Also, several optional dependencies (such as `psycopg2` or `authlib`) have been removed.+- These optional dependencies are automatically added via a wrapper (`pkgs.matrix-synapse.override { extras = ["redis"]; }` for `hiredis` & `txredisapi` for instance) if the relevant config section is declared in `services.matrix-synapse.settings`. For instance, if `services.matrix-synapse.settings.redis.enabled` is set to `true`, `"redis"` will be automatically added to the `extras` list of `pkgs.matrix-synapse`.+- A list of all extras (and the extras enabled by default) can be found at the [option's reference for `services.matrix-synapse.extras`](#opt-services.matrix-synapse.extras).+- In some cases (e.g. for running synapse workers) it was necessary to re-use the `PYTHONPATH` of `matrix-synapse.service`'s environment to have all plugins available. This isn't necessary anymore, instead `config.services.matrix-synapse.package` can be used as it points to the wrapper with properly configured `extras` and also all plugins defined via [`services.matrix-synapse.plugins`](#opt-services.matrix-synapse.plugins) available. This is also the reason for why the option is read-only now, it's supposed to be set by the module only.- `etcd` has been updated to 3.5, you will want to read the [3.3 to 3.4](https://etcd.io/docs/v3.5/upgrades/upgrade_3_4/) and [3.4 to 3.5](https://etcd.io/docs/v3.5/upgrades/upgrade_3_5/) upgrade guides
+75
-12
nixos/modules/services/matrix/synapse.nix
+75
-12
nixos/modules/services/matrix/synapse.nix
·········+type = types.listOf (types.enum (lib.attrNames pkgs.matrix-synapse-unwrapped.optional-dependencies));···-[sample configuration](https://github.com/matrix-org/synapse/blob/v${cfg.package.version}/docs/sample_config.yaml)+[sample configuration](https://github.com/matrix-org/synapse/blob/v${pkgs.matrix-synapse-unwrapped.version}/docs/sample_config.yaml)······
+14
-1
nixos/tests/matrix/synapse.nix
+14
-1
nixos/tests/matrix/synapse.nix
············
+69
-21
pkgs/servers/matrix-synapse/default.nix
+69
-21
pkgs/servers/matrix-synapse/default.nix
···············
+2
-2
pkgs/servers/matrix-synapse/plugins/ldap3.nix
+2
-2
pkgs/servers/matrix-synapse/plugins/ldap3.nix
······
+2
-2
pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix
+2
-2
pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix
······
+44
pkgs/servers/matrix-synapse/wrapper.nix
+44
pkgs/servers/matrix-synapse/wrapper.nix
···+] ++ lib.optional (lib.meta.availableOn stdenv.hostPlatform matrix-synapse-unwrapped.python.pkgs.systemd) "systemd"+extraPackages = lib.concatMap (extra: matrix-synapse-unwrapped.optional-dependencies.${extra}) (lib.unique extras);+searchPath = lib.makeSearchPathOutput "lib" matrix-synapse-unwrapped.python.sitePackages (extraPackages ++ [ pluginsEnv ]);
+4
-5
pkgs/top-level/all-packages.nix
+4
-5
pkgs/top-level/all-packages.nix
···