Merge pull request #210101 from helsinki-systems/upd/jitsi
Update of all Jitsi Meet components
This commit is contained in:
commit
32f39395a7
|
@ -4,6 +4,15 @@ with lib;
|
||||||
|
|
||||||
let
|
let
|
||||||
cfg = config.services.jicofo;
|
cfg = config.services.jicofo;
|
||||||
|
|
||||||
|
# HOCON is a JSON superset that some jitsi-meet components use for configuration
|
||||||
|
toHOCON = x: if isAttrs x && x ? __hocon_envvar then ("\${" + x.__hocon_envvar + "}")
|
||||||
|
else if isAttrs x && x ? __hocon_unquoted_string then x.__hocon_unquoted_string
|
||||||
|
else if isAttrs x then "{${ concatStringsSep "," (mapAttrsToList (k: v: ''"${k}":${toHOCON v}'') x) }}"
|
||||||
|
else if isList x then "[${ concatMapStringsSep "," toHOCON x }]"
|
||||||
|
else builtins.toJSON x;
|
||||||
|
|
||||||
|
configFile = pkgs.writeText "jicofo.conf" (toHOCON cfg.config);
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
options.services.jicofo = with types; {
|
options.services.jicofo = with types; {
|
||||||
|
@ -68,22 +77,34 @@ in
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkOption {
|
config = mkOption {
|
||||||
type = attrsOf str;
|
type = (pkgs.formats.json {}).type;
|
||||||
default = { };
|
default = { };
|
||||||
example = literalExpression ''
|
example = literalExpression ''
|
||||||
{
|
{
|
||||||
"org.jitsi.jicofo.auth.URL" = "XMPP:jitsi-meet.example.com";
|
jicofo.bridge.max-bridge-participants = 42;
|
||||||
}
|
}
|
||||||
'';
|
'';
|
||||||
description = lib.mdDoc ''
|
description = lib.mdDoc ''
|
||||||
Contents of the {file}`sip-communicator.properties` configuration file for jicofo.
|
Contents of the {file}`jicofo.conf` configuration file.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
services.jicofo.config = mapAttrs (_: v: mkDefault v) {
|
services.jicofo.config = {
|
||||||
"org.jitsi.jicofo.BRIDGE_MUC" = cfg.bridgeMuc;
|
jicofo = {
|
||||||
|
bridge.brewery-jid = cfg.bridgeMuc;
|
||||||
|
xmpp = rec {
|
||||||
|
client = {
|
||||||
|
hostname = cfg.xmppHost;
|
||||||
|
username = cfg.userName;
|
||||||
|
domain = cfg.userDomain;
|
||||||
|
password = { __hocon_envvar = "JICOFO_AUTH_PASS"; };
|
||||||
|
xmpp-domain = if cfg.xmppDomain == null then cfg.xmppHost else cfg.xmppDomain;
|
||||||
|
};
|
||||||
|
service = client;
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
users.groups.jitsi-meet = {};
|
users.groups.jitsi-meet = {};
|
||||||
|
@ -93,6 +114,7 @@ in
|
||||||
"-Dnet.java.sip.communicator.SC_HOME_DIR_LOCATION" = "/etc/jitsi";
|
"-Dnet.java.sip.communicator.SC_HOME_DIR_LOCATION" = "/etc/jitsi";
|
||||||
"-Dnet.java.sip.communicator.SC_HOME_DIR_NAME" = "jicofo";
|
"-Dnet.java.sip.communicator.SC_HOME_DIR_NAME" = "jicofo";
|
||||||
"-Djava.util.logging.config.file" = "/etc/jitsi/jicofo/logging.properties";
|
"-Djava.util.logging.config.file" = "/etc/jitsi/jicofo/logging.properties";
|
||||||
|
"-Dconfig.file" = configFile;
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
@ -101,18 +123,13 @@ in
|
||||||
after = [ "network.target" ];
|
after = [ "network.target" ];
|
||||||
|
|
||||||
restartTriggers = [
|
restartTriggers = [
|
||||||
config.environment.etc."jitsi/jicofo/sip-communicator.properties".source
|
configFile
|
||||||
];
|
];
|
||||||
environment.JAVA_SYS_PROPS = concatStringsSep " " (mapAttrsToList (k: v: "${k}=${toString v}") jicofoProps);
|
environment.JAVA_SYS_PROPS = concatStringsSep " " (mapAttrsToList (k: v: "${k}=${toString v}") jicofoProps);
|
||||||
|
|
||||||
script = ''
|
script = ''
|
||||||
${pkgs.jicofo}/bin/jicofo \
|
export JICOFO_AUTH_PASS="$(<${cfg.userPasswordFile})"
|
||||||
--host=${cfg.xmppHost} \
|
exec "${pkgs.jicofo}/bin/jicofo"
|
||||||
--domain=${if cfg.xmppDomain == null then cfg.xmppHost else cfg.xmppDomain} \
|
|
||||||
--secret=$(cat ${cfg.componentPasswordFile}) \
|
|
||||||
--user_name=${cfg.userName} \
|
|
||||||
--user_domain=${cfg.userDomain} \
|
|
||||||
--user_password=$(cat ${cfg.userPasswordFile})
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
serviceConfig = {
|
serviceConfig = {
|
||||||
|
@ -140,10 +157,7 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
environment.etc."jitsi/jicofo/sip-communicator.properties".source =
|
environment.etc."jitsi/jicofo/sip-communicator.properties".text = "";
|
||||||
pkgs.writeText "sip-communicator.properties" (
|
|
||||||
generators.toKeyValue {} cfg.config
|
|
||||||
);
|
|
||||||
environment.etc."jitsi/jicofo/logging.properties".source =
|
environment.etc."jitsi/jicofo/logging.properties".source =
|
||||||
mkDefault "${pkgs.jicofo}/etc/jitsi/jicofo/logging.properties-journal";
|
mkDefault "${pkgs.jicofo}/etc/jitsi/jicofo/logging.properties-journal";
|
||||||
};
|
};
|
||||||
|
|
|
@ -411,11 +411,14 @@ in
|
||||||
componentPasswordFile = "/var/lib/jitsi-meet/jicofo-component-secret";
|
componentPasswordFile = "/var/lib/jitsi-meet/jicofo-component-secret";
|
||||||
bridgeMuc = "jvbbrewery@internal.${cfg.hostName}";
|
bridgeMuc = "jvbbrewery@internal.${cfg.hostName}";
|
||||||
config = mkMerge [{
|
config = mkMerge [{
|
||||||
"org.jitsi.jicofo.ALWAYS_TRUST_MODE_ENABLED" = "true";
|
jicofo.xmpp.service.disable-certificate-verification = true;
|
||||||
|
jicofo.xmpp.client.disable-certificate-verification = true;
|
||||||
#} (lib.mkIf cfg.jibri.enable {
|
#} (lib.mkIf cfg.jibri.enable {
|
||||||
} (lib.mkIf (config.services.jibri.enable || cfg.jibri.enable) {
|
} (lib.mkIf (config.services.jibri.enable || cfg.jibri.enable) {
|
||||||
"org.jitsi.jicofo.jibri.BREWERY" = "JibriBrewery@internal.${cfg.hostName}";
|
jicofo.jibri = {
|
||||||
"org.jitsi.jicofo.jibri.PENDING_TIMEOUT" = "90";
|
brewery-jid = "JibriBrewery@internal.${cfg.hostName}";
|
||||||
|
pending-timeout = "90";
|
||||||
|
};
|
||||||
})];
|
})];
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -2,10 +2,10 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "jitsi-meet-prosody";
|
pname = "jitsi-meet-prosody";
|
||||||
version = "1.0.6644";
|
version = "1.0.6943";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.jitsi.org/stable/${pname}_${version}-1_all.deb";
|
url = "https://download.jitsi.org/stable/${pname}_${version}-1_all.deb";
|
||||||
sha256 = "41jlcsJpcFlNdBIOAdzTUF3wOUAOS9upF/uxFQaGULc=";
|
sha256 = "MrLRA0XdaDWD7frh4XDXLTcjsAYWal5qwT5C6cq4MKc=";
|
||||||
};
|
};
|
||||||
|
|
||||||
dontBuild = true;
|
dontBuild = true;
|
||||||
|
|
|
@ -13,10 +13,10 @@ let
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "jibri";
|
pname = "jibri";
|
||||||
version = "8.0-139-g7ab9aa2";
|
version = "8.0-140-gccc7278";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.jitsi.org/stable/${pname}_${version}-1_all.deb";
|
url = "https://download.jitsi.org/stable/${pname}_${version}-1_all.deb";
|
||||||
sha256 = "14V5khp6S9T3SWiNfKyxn2WCzwhcXDCRDtATa15p01M=";
|
sha256 = "TiKCK41ar3X1aOrGitnNBr/iWru1HOjjGkwLBB76M1M=";
|
||||||
};
|
};
|
||||||
|
|
||||||
dontBuild = true;
|
dontBuild = true;
|
||||||
|
|
|
@ -2,10 +2,10 @@
|
||||||
|
|
||||||
let
|
let
|
||||||
pname = "jicofo";
|
pname = "jicofo";
|
||||||
version = "1.0-940";
|
version = "1.0-987";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.jitsi.org/stable/${pname}_${version}-1_all.deb";
|
url = "https://download.jitsi.org/stable/${pname}_${version}-1_all.deb";
|
||||||
sha256 = "vx7aUHfKxG+tZ0sM8eWr1tTKf//bMxdKVhE5I4P4mLo=";
|
sha256 = "VK4Ck+OU6xv/Lma4YpXduPThej2wopbs+OkBC2SOkJU=";
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
|
|
|
@ -2,10 +2,10 @@
|
||||||
|
|
||||||
let
|
let
|
||||||
pname = "jitsi-videobridge2";
|
pname = "jitsi-videobridge2";
|
||||||
version = "2.2-45-ge8b20f06";
|
version = "2.2-69-gad606ca2";
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.jitsi.org/stable/${pname}_${version}-1_all.deb";
|
url = "https://download.jitsi.org/stable/${pname}_${version}-1_all.deb";
|
||||||
sha256 = "fbSpjLdx9xbLdp7vzHTW9B/cDf3DahpwuI4IcqEqpas=";
|
sha256 = "+5fcxUiCMy45CdDuORU5Xo//f4iAAJEzt1gO+fKU43c=";
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
|
|
|
@ -2,11 +2,11 @@
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "jitsi-meet";
|
pname = "jitsi-meet";
|
||||||
version = "1.0.6644";
|
version = "1.0.6943";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://download.jitsi.org/jitsi-meet/src/jitsi-meet-${version}.tar.bz2";
|
url = "https://download.jitsi.org/jitsi-meet/src/jitsi-meet-${version}.tar.bz2";
|
||||||
sha256 = "y1oI3nxIu7breYNPhdX7PU5GfnCyxdEbAYlyZmif2Uo=";
|
sha256 = "4swWsCo6PmMzvSVY6vS5n2HH8o6pU+Ak37ng18BLqIk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
dontBuild = true;
|
dontBuild = true;
|
||||||
|
|
Loading…
Reference in a new issue