diff options
| author | Filip Wandzio <contact@philw.dev> | 2025-10-03 00:05:56 +0200 |
|---|---|---|
| committer | Filip Wandzio <contact@philw.dev> | 2025-10-03 00:05:56 +0200 |
| commit | e08f7273e48b25a910dc9c55a72fe230e401f5b5 (patch) | |
| tree | c8b5bfb713d653ee510ac6f7b517b9386e037cd0 /wh.1 | |
| parent | 37e65300245be45d4000797b3ada53c68022fc26 (diff) | |
| download | whiterabbit-e08f7273e48b25a910dc9c55a72fe230e401f5b5.tar.gz whiterabbit-e08f7273e48b25a910dc9c55a72fe230e401f5b5.zip | |
Implement automatic tuwunel pipeline
Fix the path in coturn server configuration file
Update manual with actual information
Implement cli parameters instead of reading user input
Signed-off-by: Filip Wandzio <contact@philw.dev>
Diffstat (limited to 'wh.1')
| -rw-r--r-- | wh.1 | 89 |
1 files changed, 48 insertions, 41 deletions
| @@ -1,67 +1,74 @@ | |||
| 1 | .\" Manpage for whiterabbit | 1 | .\" Manpage for whiterabbit |
| 2 | .TH WHITERABBIT 1 "2025-09-25" "1.0.0" "whiterabbit manual" | 2 | .TH WHITERABBIT 1 "2025-10-02" "1.1.0" "whiterabbit manual" |
| 3 | .SH NAME | 3 | .SH NAME |
| 4 | whiterabbit \- auto-configure Matrix homeservers (Dendrite or Synapse) | 4 | whiterabbit \- auto-configure Matrix homeservers (Dendrite, Synapse, or Tuwunel) |
| 5 | .SH SYNOPSIS | 5 | .SH SYNOPSIS |
| 6 | .B whiterabbit | 6 | .B whiterabbit |
| 7 | [\fIturn\fR|\fIdendrite\fR|\fIsynapse\fR|\fIlist\fR|\fIremove <domain>\fR| | 7 | [\fIturn <domain> <ip> <device> <secret>\fR| |
| 8 | \fI-t\fR|\fI-d\fR|\fI-s\fR|\fI-l\fR|\fI-r <domain>\fR] | 8 | \fIdendrite <domain> <email> <server_ip>\fR| |
| 9 | \fIsynapse <domain> <email> <server_ip>\fR| | ||
| 10 | \fItuwunel <domain> <email> <server_ip>\fR| | ||
| 11 | \fIlist\fR| | ||
| 12 | \fIremove <domain>...\fR] | ||
| 9 | .SH DESCRIPTION | 13 | .SH DESCRIPTION |
| 10 | whiterabbit sets up Matrix homeservers with a global Coturn server and Nginx/Let's Encrypt support. | 14 | whiterabbit sets up Matrix homeservers (Dendrite, Synapse, or Tuwunel) with a global Coturn server and Nginx/Let's Encrypt proxying. |
| 11 | 15 | ||
| 12 | Main commands and their short flag equivalents: | 16 | Main subcommands: |
| 13 | .TP | 17 | .TP |
| 14 | .B turn, -t | 18 | .B turn <domain> <ip> <device> <secret> |
| 15 | Install or configure the global Coturn server. | 19 | Install or configure the global Coturn server. |
| 16 | .TP | 20 | .TP |
| 17 | .B dendrite, -d | 21 | .B dendrite <domain> <email> <server_ip> |
| 18 | Add a new Matrix Dendrite server. | 22 | Add a new Matrix Dendrite server with automatic TLS and Nginx reverse proxy. |
| 19 | .TP | 23 | .TP |
| 20 | .B synapse, -s | 24 | .B synapse <domain> <email> <server_ip> |
| 21 | Add a new Matrix Synapse server. | 25 | Add a new Matrix Synapse server with automatic TLS and Nginx reverse proxy. |
| 22 | .TP | 26 | .TP |
| 23 | .B list, -l | 27 | .B tuwunel <domain> <email> <server_ip> |
| 24 | List all configured Matrix servers. | 28 | Add a Tuwunel homeserver with automatic TLS and Nginx reverse proxy. |
| 25 | .TP | 29 | .TP |
| 26 | .B remove <domain>, -r <domain> | 30 | .B list |
| 27 | Remove a Matrix server by domain. | 31 | List all configured Matrix servers and their container status. |
| 32 | .TP | ||
| 33 | .B remove <domain> [domain2 ...] | ||
| 34 | Remove one or more Matrix servers by domain name. | ||
| 28 | 35 | ||
| 29 | .SH EXAMPLES | 36 | .SH EXAMPLES |
| 30 | .TP | 37 | .TP |
| 31 | whiterabbit turn | 38 | whiterabbit turn turn.example.com 192.168.1.10 eth0 myturnsecret |
| 32 | Set up the global Coturn server. | 39 | Set up the global Coturn server bound to eth0 on IP 192.168.1.10. |
| 33 | .TP | ||
| 34 | whiterabbit -t | ||
| 35 | Same as above using flag. | ||
| 36 | .TP | ||
| 37 | whiterabbit dendrite | ||
| 38 | Add a Dendrite server with TLS and Nginx. | ||
| 39 | .TP | 40 | .TP |
| 40 | whiterabbit -d | 41 | whiterabbit dendrite matrix.example.com admin@example.com 192.168.1.20 |
| 41 | Same as above using flag. | 42 | Add a Dendrite server. |
| 42 | .TP | 43 | .TP |
| 43 | whiterabbit synapse | 44 | whiterabbit synapse matrix.example.com admin@example.com 192.168.1.21 |
| 44 | Add a Synapse server with TLS and Nginx. | 45 | Add a Synapse server. |
| 45 | .TP | 46 | .TP |
| 46 | whiterabbit -s | 47 | whiterabbit tuwunel tuw.example.com admin@example.com 192.168.1.22 |
| 47 | Same as above using flag. | 48 | Add a Tuwunel server. |
| 48 | .TP | 49 | .TP |
| 49 | whiterabbit list | 50 | whiterabbit list |
| 50 | Show all servers. | 51 | Show all installed servers and their status. |
| 51 | .TP | ||
| 52 | whiterabbit -l | ||
| 53 | Same as above using flag. | ||
| 54 | .TP | ||
| 55 | whiterabbit remove matrix.example.com | ||
| 56 | Remove a server. | ||
| 57 | .TP | 52 | .TP |
| 58 | whiterabbit -r matrix.example.com | 53 | whiterabbit remove matrix.example.com another.example.org |
| 59 | Same as above using flag. | 54 | Remove one or more servers. |
| 60 | 55 | ||
| 61 | .SH NOTES | 56 | .SH NOTES |
| 62 | All Matrix servers share the same Coturn instance. | 57 | All Matrix homeservers share the same Coturn instance. |
| 63 | TLS certificates are issued automatically via Let's Encrypt. | 58 | TLS certificates are issued automatically via Let's Encrypt. |
| 64 | Requires docker, docker-compose, nginx, certbot, and coturn. | 59 | Requires docker, docker-compose, nginx, certbot, and coturn. |
| 65 | 60 | ||
| 66 | .SH AUTHOR | 61 | .SH COMMAND DISPATCH |
| 67 | Filip Wandzio <contact@philw.dev> | 62 | The script internally dispatches commands as follows: |
| 63 | .nf | ||
| 64 | CMD="${1:-}" | ||
| 65 | case "$CMD" in | ||
| 66 | turn) shift; install_turn "$@" ;; | ||
| 67 | dendrite) shift; install_dendrite "$@" ;; | ||
| 68 | # synapse) shift; install_synapse "$@" ;; | ||
| 69 | tuwunel) shift; install_tuwunel "$@" ;; | ||
| 70 | list) list_servers ;; | ||
| 71 | remove) shift; remove_server "$@" ;; | ||
| 72 | *) usage ;; | ||
| 73 | esac | ||
| 74 | .fi | ||
