forked from
lass.pds.lassul.us/superconfig
This repository has no description
2.1 kB
70 lines
1{ pkgs, ... }: let
2
3 prosody-contrib-plugins = pkgs.fetchFromGitHub {
4 owner = "jitsi-contrib";
5 repo = "prosody-plugins";
6 rev = "v20230929";
7 sha256 = "sha256-1Lmj+ZWqZRRvHVgNDXXEqH2DwhE7TwP0gktjihJCg1g=";
8 };
9
10in {
11
12 services.jitsi-meet = {
13 enable = true;
14 hostName = "jitsi.lassul.us";
15 config = {
16 enableWelcomePage = true;
17 requireDisplayName = true;
18 analytics.disabled = true;
19 startAudioOnly = true;
20 channelLastN = 4;
21 stunServers = [
22 # - https://www.kuketz-blog.de/jitsi-meet-server-einstellungen-fuer-einen-datenschutzfreundlichen-betrieb/
23 { urls = "turn:turn.matrix.org:3478?transport=udp"; }
24 { urls = "turn:turn.matrix.org:3478?transport=tcp"; }
25 ];
26 constraints.video.height = {
27 ideal = 720;
28 max = 1080;
29 min = 240;
30 };
31 remoteVideoMenu.disabled = false;
32 breakoutRooms.hideAddRoomButton = false;
33 maxFullResolutionParticipants = 1;
34 };
35 interfaceConfig = {
36 SHOW_JITSI_WATERMARK = false;
37 SHOW_WATERMARK_FOR_GUESTS = false;
38 GENERATE_ROOMNAMES_ON_WELCOME_PAGE = false;
39 DISABLE_PRESENCE_STATUS = true;
40 };
41 };
42
43 services.nginx.virtualHosts."meet.lassul.us" = {
44 enableACME = true;
45 addSSL = true;
46 locations."/".return = "301 https://jitsi.lassul.us$request_uri";
47 };
48
49 services.jitsi-videobridge = {
50 config.videobridge = {
51 cc.assumed-bandwidth-limit = "1000 Mbps";
52 };
53 };
54
55 services.prosody.extraPluginPaths = [ "${prosody-contrib-plugins}/event_sync" ];
56 services.prosody.extraModules = [ "admin_shell" "event_sync" ];
57 services.prosody.extraConfig = ''
58 Component "event_sync.jitsi.lassul.us" "event_sync_component"
59 muc_component = "conference.jitsi.lassul.us"
60 breakout_component = "breakout.jitsi.lassul.us"
61
62 api_prefix = "http://jitsi-presence.numtide.com"
63 '';
64
65 krebs.iptables.tables.filter.INPUT.rules = [
66 { predicate = "-p tcp --dport 4443"; target = "ACCEPT"; }
67 { predicate = "-p udp --dport 10000"; target = "ACCEPT"; }
68 { predicate = "-p tcp --dport 10000"; target = "ACCEPT"; }
69 ];
70}