docs(generic): Various fixes for consistency with other pages

* Use indirect URLs
* Change your.server.name to canonical example.com
* Put Getting help section in a tip admonition
* Remove statement on Caddy preference
* Clean up "What's next" section
This commit is contained in:
stratself
2026-04-08 10:40:29 +00:00
committed by Ellis Git
parent 99a7be0222
commit 17837c51a0
+37 -25
View File
@@ -1,10 +1,12 @@
# Generic deployment documentation
> ### Getting help
>
> If you run into any problems while setting up Continuwuity, ask us in
> `#continuwuity:continuwuity.org` or [open an issue on
> Forgejo](https://forgejo.ellis.link/continuwuation/continuwuity/issues/new).
:::tip Getting help
If you run into any problems while setting up Continuwuity, ask us in
`#continuwuity:continuwuity.org` or [open an issue on
Forgejo][forgejo-new-issue].
:::
[forgejo-new-issue]: https://forgejo.ellis.link/continuwuation/continuwuity/issues/new
## Installing Continuwuity
@@ -15,9 +17,9 @@ ### Prebuilt binary
Prebuilt binaries are available from:
- **Tagged releases**: [Latest release page](https://forgejo.ellis.link/continuwuation/continuwuity/releases/latest)
- **Tagged releases**: [see Release page][release-page]
- **Development builds**: CI artifacts from the `main` branch
(includes Debian/Ubuntu packages)
(includes Debian/Ubuntu packages), [see Actions page for details][actions-page]
When browsing CI artifacts, `ci-bins` contains binaries organised
by commit hash, while `releases` contains tagged versions. Sort
@@ -26,6 +28,9 @@ ### Prebuilt binary
The binaries require jemalloc and io_uring on the host system. Currently
we can't cross-build static binaries - contributions are welcome here.
[release-page]: https://forgejo.ellis.link/continuwuation/continuwuity/releases/
[actions-page]: https://forgejo.ellis.link/continuwuation/continuwuity/actions/
#### Performance-optimised builds
For x86_64 systems with CPUs from the last ~15 years, use the
@@ -38,11 +43,12 @@ #### Performance-optimised builds
If you're using Docker instead, equivalent performance-optimised
images are available with the `-maxperf` suffix (e.g.
`forgejo.ellis.link/continuwuation/continuwuity:latest-maxperf`).
These images use the `release-max-perf`
build profile with
[link-time optimisation (LTO)](https://doc.rust-lang.org/cargo/reference/profiles.html#lto)
These images use the `release-max-perf` build profile with
[link-time optimisation (LTO)][lto-rust-docs]
and, for amd64, target the haswell CPU architecture.
[lto-rust-docs]: https://doc.rust-lang.org/cargo/reference/profiles.html#lto
### Nix
Theres a Nix package defined in our flake, available for Linux and MacOS. Add continuwuity as an input to your flake, and use `inputs.continuwuity.packages.${system}.default` to get a working Continuwuity package.
@@ -73,6 +79,16 @@ ##### Build
Continuwuity supports various optional features that can be enabled during compilation. Please see the Cargo.toml file for a comprehensive list, or ask in our rooms.
#### Building with Nix
If you prefer, you can use Nix (or [Lix](https://lix.systems)) to build Continuwuity. This provides improved reproducibility and makes it easy to set up a build environment and generate output. This approach also allows for easy cross-compilation.
You can run the `nix build -L .#static-x86_64-linux-musl-all-features` or
`nix build -L .#static-aarch64-linux-musl-all-features` commands based
on architecture to cross-compile the necessary static binary located at
`result/bin/conduwuit`. This is reproducible with the static binaries produced
in our CI.
## Adding a Continuwuity user
While Continuwuity can run as any user, it is better to use dedicated users for
@@ -144,7 +160,9 @@ ### Example systemd Unit File
</details>
You can also [view the file on Foregejo](https://forgejo.ellis.link/continuwuation/continuwuity/src/branch/main/pkg/conduwuit.service).
You can also [view the file on Foregejo][systemd-file].
[systemd-file]: https://forgejo.ellis.link/continuwuation/continuwuity/src/branch/main/pkg/conduwuit.service
## Creating the Continuwuity configuration file
@@ -186,7 +204,7 @@ ### Caddy
and enter the following (substitute your actual server name):
```
your.server.name, your.server.name:8448 {
example.com, example.com:8448 {
# TCP reverse_proxy
reverse_proxy 127.0.0.1:6167
# UNIX socket
@@ -202,8 +220,6 @@ ### Caddy
### Other Reverse Proxies
As we prefer our users to use Caddy, we do not provide configuration files for other proxies.
You will need to reverse proxy everything under the following routes:
- `/_matrix/` - core Matrix C-S and S-S APIs
@@ -266,16 +282,16 @@ ## How do I know it works?
homeserver address, and try to register.
You can also use these commands as a quick health check (replace
`your.server.name`).
`example.com`).
```bash
curl https://your.server.name/_conduwuit/server_version
curl https://example.com/_conduwuit/server_version
# If using port 8448
curl https://your.server.name:8448/_conduwuit/server_version
curl https://example.com:8448/_conduwuit/server_version
# If federation is enabled
curl https://your.server.name:8448/_matrix/federation/v1/version
curl https://example.com:8448/_matrix/federation/v1/version
```
- To check if your server can communicate with other homeservers, use the
@@ -285,11 +301,7 @@ # If federation is enabled
## What's next?
### Audio/Video calls
For Audio/Video call functionality see the [Calls](../calls.md) page.
### Appservices
If you want to set up an appservice, take a look at the [Appservice
- For smooth federation, set up a caching resolver according to the [DNS tuning guide](../advanced/dns.mdx)
- For Audio/Video call functionality see the [Calls](../calls.md) page.
- If you want to set up an appservice, take a look at the [Appservice
Guide](../appservices.md).