services/jitsi: Add missing dependency

To be able to use jitsi's breakout rooms (`muc_breaktout_rooms`),
prosody needs to include the `cjson` lua dependency.
This commit is contained in:
pinpox 2025-07-31 14:38:19 +02:00
parent b0aeb7b64b
commit deb236c834
No known key found for this signature in database

View File

@ -8,6 +8,7 @@
with lib;
let
cfg = config.services.jitsi-meet;
# The configuration files are JS of format "var <<string>> = <<JSON>>;". In order to
@ -231,6 +232,14 @@ in
config = mkIf cfg.enable {
services.prosody = mkIf cfg.prosody.enable {
# required for muc_breakout_rooms
package = lib.mkDefault (
config.services.prosody.package.override {
withExtraLuaPackages = p: with p; [ cjson ];
}
);
enable = mkDefault true;
xmppComplianceSuite = mkDefault false;
modules = {
@ -419,6 +428,7 @@ in
cfg.videobridge.passwordFile
else
"/var/lib/jitsi-meet/videobridge-secret";
in
''
${config.services.prosody.package}/bin/prosodyctl register focus auth.${cfg.hostName} "$(cat /var/lib/jitsi-meet/jicofo-user-secret)"
@ -445,13 +455,12 @@ in
systemd.services.jitsi-meet-init-secrets = {
wantedBy = [ "multi-user.target" ];
before =
[
"jicofo.service"
"jitsi-videobridge2.service"
]
++ (optional cfg.prosody.enable "prosody.service")
++ (optional cfg.jigasi.enable "jigasi.service");
before = [
"jicofo.service"
"jitsi-videobridge2.service"
]
++ (optional cfg.prosody.enable "prosody.service")
++ (optional cfg.jigasi.enable "jigasi.service");
serviceConfig = {
Type = "oneshot";
UMask = "027";
@ -462,18 +471,17 @@ in
script =
let
secrets =
[
"jicofo-component-secret"
"jicofo-user-secret"
"jibri-auth-secret"
"jibri-recorder-secret"
]
++ (optionals cfg.jigasi.enable [
"jigasi-user-secret"
"jigasi-component-secret"
])
++ (optional (cfg.videobridge.passwordFile == null) "videobridge-secret");
secrets = [
"jicofo-component-secret"
"jicofo-user-secret"
"jibri-auth-secret"
"jibri-recorder-secret"
]
++ (optionals cfg.jigasi.enable [
"jigasi-user-secret"
"jigasi-component-secret"
])
++ (optional (cfg.videobridge.passwordFile == null) "videobridge-secret");
in
''
${concatMapStringsSep "\n" (s: ''