about summary refs log tree commit diff
path: root/nixos
diff options
context:
space:
mode:
authorpennae <github@quasiparticle.net>2023-01-03 07:14:51 +0100
committerpennae <github@quasiparticle.net>2023-01-10 10:31:58 +0100
commitb5990a47e01109f654f9928e5247c2b29ddca778 (patch)
tree138e094c0c11224d5c4852c3c6b70ce6389544ed /nixos
parent1be48def9638ced0d6e4e44c9f805bcff1f7bd0d (diff)
nixos/jitsi-meet: convert manual chapter to MD
Diffstat (limited to 'nixos')
-rw-r--r--nixos/modules/services/web-apps/jitsi-meet.md45
-rw-r--r--nixos/modules/services/web-apps/jitsi-meet.nix2
-rw-r--r--nixos/modules/services/web-apps/jitsi-meet.xml58
3 files changed, 73 insertions, 32 deletions
diff --git a/nixos/modules/services/web-apps/jitsi-meet.md b/nixos/modules/services/web-apps/jitsi-meet.md
new file mode 100644
index 0000000000000..060ef9752650a
--- /dev/null
+++ b/nixos/modules/services/web-apps/jitsi-meet.md
@@ -0,0 +1,45 @@
+# Jitsi Meet {#module-services-jitsi-meet}
+
+With Jitsi Meet on NixOS you can quickly configure a complete,
+private, self-hosted video conferencing solution.
+
+## Basic usage {#module-services-jitsi-basic-usage}
+
+A minimal configuration using Let's Encrypt for TLS certificates looks like this:
+```
+{
+  services.jitsi-meet = {
+    enable = true;
+    hostName = "jitsi.example.com";
+  };
+  services.jitsi-videobridge.openFirewall = true;
+  networking.firewall.allowedTCPPorts = [ 80 443 ];
+  security.acme.email = "me@example.com";
+  security.acme.acceptTerms = true;
+}
+```
+
+## Configuration {#module-services-jitsi-configuration}
+
+Here is the minimal configuration with additional configurations:
+```
+{
+  services.jitsi-meet = {
+    enable = true;
+    hostName = "jitsi.example.com";
+    config = {
+      enableWelcomePage = false;
+      prejoinPageEnabled = true;
+      defaultLang = "fi";
+    };
+    interfaceConfig = {
+      SHOW_JITSI_WATERMARK = false;
+      SHOW_WATERMARK_FOR_GUESTS = false;
+    };
+  };
+  services.jitsi-videobridge.openFirewall = true;
+  networking.firewall.allowedTCPPorts = [ 80 443 ];
+  security.acme.email = "me@example.com";
+  security.acme.acceptTerms = true;
+}
+```
diff --git a/nixos/modules/services/web-apps/jitsi-meet.nix b/nixos/modules/services/web-apps/jitsi-meet.nix
index 5b0934b2fb76f..19ac9427f4ab7 100644
--- a/nixos/modules/services/web-apps/jitsi-meet.nix
+++ b/nixos/modules/services/web-apps/jitsi-meet.nix
@@ -451,6 +451,8 @@ in
     };
   };
 
+  # Don't edit the docbook xml directly, edit the md and generate it:
+  # `pandoc jitsi-meet.md -t docbook --top-level-division=chapter --extract-media=media -f markdown-smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > jitsi-meet.xml`
   meta.doc = ./jitsi-meet.xml;
   meta.maintainers = lib.teams.jitsi.members;
 }
diff --git a/nixos/modules/services/web-apps/jitsi-meet.xml b/nixos/modules/services/web-apps/jitsi-meet.xml
index 796105732c2ed..18c4e5b52cc2c 100644
--- a/nixos/modules/services/web-apps/jitsi-meet.xml
+++ b/nixos/modules/services/web-apps/jitsi-meet.xml
@@ -1,46 +1,42 @@
-<chapter xmlns="http://docbook.org/ns/docbook"
-         xmlns:xlink="http://www.w3.org/1999/xlink"
-         xmlns:xi="http://www.w3.org/2001/XInclude"
-         version="5.0"
-         xml:id="module-services-jitsi-meet">
- <title>Jitsi Meet</title>
- <para>
-   With Jitsi Meet on NixOS you can quickly configure a complete,
-   private, self-hosted video conferencing solution.
- </para>
-
- <section xml:id="module-services-jitsi-basic-usage">
- <title>Basic usage</title>
-   <para>
-     A minimal configuration using Let's Encrypt for TLS certificates looks like this:
-<programlisting>
+<chapter xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="module-services-jitsi-meet">
+  <title>Jitsi Meet</title>
+  <para>
+    With Jitsi Meet on NixOS you can quickly configure a complete,
+    private, self-hosted video conferencing solution.
+  </para>
+  <section xml:id="module-services-jitsi-basic-usage">
+    <title>Basic usage</title>
+    <para>
+      A minimal configuration using Let's Encrypt for TLS certificates
+      looks like this:
+    </para>
+    <programlisting>
 {
   services.jitsi-meet = {
     enable = true;
-    hostName = "jitsi.example.com";
+    hostName = &quot;jitsi.example.com&quot;;
   };
   services.jitsi-videobridge.openFirewall = true;
   networking.firewall.allowedTCPPorts = [ 80 443 ];
-  security.acme.email = "me@example.com";
+  security.acme.email = &quot;me@example.com&quot;;
   security.acme.acceptTerms = true;
 }
 </programlisting>
-   </para>
- </section>
-
- <section xml:id="module-services-jitsi-configuration">
- <title>Configuration</title>
-   <para>
-     Here is the minimal configuration with additional configurations:
-<programlisting>
+  </section>
+  <section xml:id="module-services-jitsi-configuration">
+    <title>Configuration</title>
+    <para>
+      Here is the minimal configuration with additional configurations:
+    </para>
+    <programlisting>
 {
   services.jitsi-meet = {
     enable = true;
-    hostName = "jitsi.example.com";
+    hostName = &quot;jitsi.example.com&quot;;
     config = {
       enableWelcomePage = false;
       prejoinPageEnabled = true;
-      defaultLang = "fi";
+      defaultLang = &quot;fi&quot;;
     };
     interfaceConfig = {
       SHOW_JITSI_WATERMARK = false;
@@ -49,11 +45,9 @@
   };
   services.jitsi-videobridge.openFirewall = true;
   networking.firewall.allowedTCPPorts = [ 80 443 ];
-  security.acme.email = "me@example.com";
+  security.acme.email = &quot;me@example.com&quot;;
   security.acme.acceptTerms = true;
 }
 </programlisting>
-   </para>
- </section>
-
+  </section>
 </chapter>