2021-01-20 15:52:26 +01:00
# Setting up Etherpad (optional)
2024-10-22 19:51:34 +02:00
[Etherpad ](https://etherpad.org ) is an open source collaborative text editor that can be embedded in a Matrix chat room using the [Dimension integration manager ](https://dimension.t2bot.io ) or used as standalone web app.
2021-01-20 15:52:26 +01:00
2021-01-31 08:54:12 +01:00
When enabled together with the Jitsi audio/video conferencing system (see [our docs on Jitsi ](configuring-playbook-jitsi.md )), it will be made available as an option during the conferences.
2021-01-20 15:52:26 +01:00
2024-10-20 22:07:51 +02:00
## Adjusting the playbook configuration
To enable Etherpad, add the following configuration to your `inventory/host_vars/matrix.example.com/vars.yml` file:
```yaml
etherpad_enabled: true
# Uncomment and adjust this part if you'd like to enable the admin web UI
# etherpad_admin_username: YOUR_USERNAME_HERE
# etherpad_admin_password: YOUR_PASSWORD_HERE
```
### Adjusting the Etherpad URL
2022-11-05 10:47:47 +01:00
2024-10-20 22:07:51 +02:00
By default, this playbook installs Etherpad on the `etherpad.` subdomain (`etherpad.example.com`) and requires you to [adjust your DNS records ](#adjusting-dns-records ).
2021-01-20 15:52:26 +01:00
2024-10-20 22:07:51 +02:00
By tweaking the `etherpad_hostname` and `etherpad_path_prefix` variables, you can easily make the service available at a **different hostname and/or path** than the default one.
2022-11-05 10:47:47 +01:00
2024-10-20 22:07:51 +02:00
Example additional configuration for your `inventory/host_vars/matrix.example.com/vars.yml` file:
2022-11-05 10:47:47 +01:00
2023-03-02 21:50:13 +01:00
```yaml
2024-10-17 15:17:56 +02:00
# Switch to the domain used for Matrix services (`matrix.example.com`),
2023-03-02 21:50:13 +01:00
# so we won't need to add additional DNS records for Etherpad.
etherpad_hostname: "{{ matrix_server_fqn_matrix }}"
# Expose under the /etherpad subpath
etherpad_path_prefix: /etherpad
```
## Adjusting DNS records
2022-11-05 10:47:47 +01:00
2023-03-02 21:50:13 +01:00
Once you've decided on the domain and path, **you may need to adjust your DNS** records to point the Etherpad domain to the Matrix server.
2024-10-20 22:07:51 +02:00
By default, you will need to create a CNAME record for `etherpad` . See [Configuring DNS ](configuring-dns.md ) for details about DNS changes.
2022-01-01 04:08:00 +01:00
2024-10-20 22:07:51 +02:00
If you've decided to reuse the `matrix.` domain, you won't need to do any extra DNS configuration.
2022-01-01 04:08:00 +01:00
2024-10-12 20:03:46 +02:00
## Installing
2023-03-02 21:50:13 +01:00
2024-12-01 08:42:30 +01:00
After configuring the playbook and potentially [adjusting your DNS records ](#adjusting-dns-records ), run the playbook with [playbook tags ](playbook-tags.md ) as below:
<!-- NOTE: let this conservative command run (instead of install - all) to make it clear that failure of the command means something is clearly broken. -->
```sh
ansible-playbook -i inventory/hosts setup.yml --tags=setup-all,ensure-matrix-users-created,start
```
**Notes**:
- The `ensure-matrix-users-created` playbook tag makes the playbook automatically create the Etherpad admin user (`etherpad_admin_username`).
Edit installing instructions (#3844)
* Replace "just run-tags install-all/setup-all,start" with "just install-all/setup-all"
Thanks to the tip by Slavi that the overhead of ensure-matrix-users-created is negligible.
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
* Edit installing instructions
- Move the anchor links to docs/just.md
- Add note about running "ensure-matrix-users-created" tags, if ansible-playbook's tags not "setup-all,ensure-matrix-users-created,start", ie. either "setup-all,start", "setup-email2matrix,start", "setup-aux-files,setup-corporal,start", or "setup-matrix-user-verification-service,start"
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
* Update descriptions about installation
- Introduce the most conservative and stable raw ansible-playbook command.
- Introduce the just commands on installing.md and maintenance-upgrading-services.md, not on quick-start.md, since it is too early for quick start guide readers who are just starting to climb learning curve to use the shortcuts.
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
* Update docs/configuring-playbook-etherpad.md: remove the note about ensure-matrix-users-created
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
---------
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
Co-authored-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-12-01 16:04:54 +01:00
- The shortcut commands with the [`just` program ](just.md ) are also available: `just install-all` or `just setup-all`
2024-12-01 08:42:30 +01:00
Edit installing instructions (#3844)
* Replace "just run-tags install-all/setup-all,start" with "just install-all/setup-all"
Thanks to the tip by Slavi that the overhead of ensure-matrix-users-created is negligible.
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
* Edit installing instructions
- Move the anchor links to docs/just.md
- Add note about running "ensure-matrix-users-created" tags, if ansible-playbook's tags not "setup-all,ensure-matrix-users-created,start", ie. either "setup-all,start", "setup-email2matrix,start", "setup-aux-files,setup-corporal,start", or "setup-matrix-user-verification-service,start"
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
* Update descriptions about installation
- Introduce the most conservative and stable raw ansible-playbook command.
- Introduce the just commands on installing.md and maintenance-upgrading-services.md, not on quick-start.md, since it is too early for quick start guide readers who are just starting to climb learning curve to use the shortcuts.
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
* Update docs/configuring-playbook-etherpad.md: remove the note about ensure-matrix-users-created
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
---------
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
Co-authored-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-12-01 16:04:54 +01:00
`just install-all` is useful for maintaining your setup quickly when its components remain unchanged. If you adjust your `vars.yml` to remove other components, you'd need to run `just setup-all` , or these components will still remain installed.
2024-12-01 08:42:30 +01:00
- If you change the Etherpad admin user's password (`etherpad_admin_password` in your `vars.yml` file) subsequently, the admin user's credentials on the homeserver won't be updated automatically. If you'd like to change the admin user's password, use a tool like [synapse-admin ](configuring-playbook-synapse-admin.md ) to change it, and then update `etherpad_admin_password` to let the admin user know its new password.
2023-03-02 21:50:13 +01:00
## Usage
2024-10-17 15:19:28 +02:00
The Etherpad UI should be available at `https://etherpad.example.com` , while the admin UI (if enabled) should then be available at `https://etherpad.example.com/admin` .
2023-03-02 21:50:13 +01:00
2024-11-17 13:30:47 +01:00
If you've [decided on another hostname or path-prefix ](#adjusting-the-etherpad-url ) (e.g. `https://matrix.example.com/etherpad` ), adjust these URLs accordingly before usage.
2022-11-05 10:47:47 +01:00
2023-03-02 21:50:13 +01:00
### Managing / Deleting old pads
2022-01-01 04:08:00 +01:00
If you want to manage and remove old unused pads from Etherpad, you will first need to able Admin access as described above.
2024-10-17 15:19:28 +02:00
Then from the plugin manager page (`https://etherpad.example.com/admin/plugins`, install the `adminpads2` plugin. Once installed, you should have a "Manage pads" section in the Admin web-UI.
2022-11-04 10:36:10 +01:00
2024-10-22 19:51:34 +02:00
### How to use Etherpad widgets without an integration manager (like Dimension)
2022-11-16 10:56:22 +01:00
Add "Web" to Element and SchildiChat web application (#3755)
* Replace "Element" with "Element Web"
- If Element indicates the web application, then it is changed to Element Web.
- If it indicates clients branded with Element such as Element desktop, web, mobile clients, then it is changed to Element clients.
- If it is combined with location sharing functionality, it is not changed.
with other some changes, including:
- Change "app.element.io" anchor link to "https://github.com/element-hq/element-web" on README.md, following other documentation files
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
* Replace "SchildiChat" with "SchildiChat Web"
- If SchildiChat indicates the web application, then it is changed to SchildiChat Web.
- If it indicates clients branded with SchildiChat such as SchildiChat desktop, web, mobile clients, then it is changed to SchildiChat clients.
- If it is combined with location sharing functionality, it is not changed.
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
* Rename configuring-playbook-client-schildichat.md to configuring-playbook-client-schildichat-web.md
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
* Rename configuring-playbook-client-element.md to configuring-playbook-client-element-web.md
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
---------
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
Co-authored-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-11-07 15:31:26 +01:00
This is how it works in Element Web, it might work quite similar with other clients:
2022-11-16 10:56:22 +01:00
2024-10-17 15:17:56 +02:00
To integrate a standalone Etherpad in a room, create your pad by visiting `https://etherpad.example.com` . When the pad opens, copy the URL and send a command like this to the room: `/addwidget URL` . You will then find your integrated Etherpad within the right sidebar in the `Widgets` section.
2022-11-16 10:56:22 +01:00
2023-03-02 21:50:13 +01:00
### Set Dimension default to the self-hosted Etherpad (optional)
2022-11-04 10:36:10 +01:00
2022-11-05 10:47:47 +01:00
If you decided to install [Dimension integration manager ](configuring-playbook-dimension.md ) alongside Etherpad, the Dimension administrator users can configure the default URL template.
2024-10-16 19:22:51 +02:00
Add "Web" to Element and SchildiChat web application (#3755)
* Replace "Element" with "Element Web"
- If Element indicates the web application, then it is changed to Element Web.
- If it indicates clients branded with Element such as Element desktop, web, mobile clients, then it is changed to Element clients.
- If it is combined with location sharing functionality, it is not changed.
with other some changes, including:
- Change "app.element.io" anchor link to "https://github.com/element-hq/element-web" on README.md, following other documentation files
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
* Replace "SchildiChat" with "SchildiChat Web"
- If SchildiChat indicates the web application, then it is changed to SchildiChat Web.
- If it indicates clients branded with SchildiChat such as SchildiChat desktop, web, mobile clients, then it is changed to SchildiChat clients.
- If it is combined with location sharing functionality, it is not changed.
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
* Rename configuring-playbook-client-schildichat.md to configuring-playbook-client-schildichat-web.md
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
* Rename configuring-playbook-client-element.md to configuring-playbook-client-element-web.md
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
---------
Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
Co-authored-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
2024-11-07 15:31:26 +01:00
The Dimension configuration menu can be accessed with the sprocket icon as you begin to add a widget to a room in Element Web. There you will find the Etherpad Widget Configuration action beneath the _Widgets_ tab.
2022-11-05 08:17:47 +01:00
2023-03-02 21:50:13 +01:00
#### Removing the integrated Etherpad chat
2022-11-04 10:36:10 +01:00
2023-03-02 21:50:13 +01:00
If you wish to disable the Etherpad chat button, you can do it by appending `?showChat=false` to the end of the pad URL, or the template.
2022-11-05 10:47:47 +01:00
2024-10-17 15:19:28 +02:00
Example: `https://etherpad.example.com/p/$roomId_$padName?showChat=false`
2022-11-05 10:47:47 +01:00
2023-03-02 21:50:13 +01:00
## Known issues
2021-02-06 12:45:54 +01:00
If your Etherpad widget fails to load, this might be due to Dimension generating a Pad name so long, the Etherpad app rejects it.
2024-10-16 19:22:51 +02:00
2021-02-06 12:45:54 +01:00
`$roomId_$padName` can end up being longer than 50 characters. You can avoid having this problem by altering the template so it only contains the three word random identifier `$padName` .