refactor: Rename all remaining conduwuit references to Continuwuity

Also adds an alias for the old binary name to the dockerfile

Supersedes !1485
Closes #1536
Closes #2277
This commit is contained in:
Jade Ellis committed 2026-10-05 00:58:24 +01:00
1 parent 1e34bd2ed9
commit 67e5e11a97
430 files changed
+1347 -1437

No files matched your search

+1 -1
View File
@@ -1,6 +1,6 @@
# Local build and dev artifacts
target/
!target/debug/conduwuit
!target/debug/continuwuity
# Docker files
Dockerfile*
@@ -26,7 +26,7 @@ inputs:
outputs:
binary_artifact_name:
description: The name of the uploaded binary artifact
value: conduwuit${{ inputs.cpu_suffix }}-${{ inputs.slug }}${{ inputs.artifact_suffix }}
value: continuwuity${{ inputs.cpu_suffix }}-${{ inputs.slug }}${{ inputs.artifact_suffix }}
runs:
using: composite
@@ -51,13 +51,13 @@ runs:
- name: Rename extracted binary
shell: bash
run: mv /tmp/binaries/sbin/conduwuit /tmp/binaries/conduwuit${{ inputs.cpu_suffix }}-${{ inputs.slug }}${{ inputs.artifact_suffix }}
run: mv /tmp/binaries/sbin/continuwuity /tmp/binaries/continuwuity${{ inputs.cpu_suffix }}-${{ inputs.slug }}${{ inputs.artifact_suffix }}
- name: Upload binary artifact
uses: forgejo/upload-artifact@v4
with:
name: conduwuit${{ inputs.cpu_suffix }}-${{ inputs.slug }}${{ inputs.artifact_suffix }}
path: /tmp/binaries/conduwuit${{ inputs.cpu_suffix }}-${{ inputs.slug }}${{ inputs.artifact_suffix }}
name: continuwuity${{ inputs.cpu_suffix }}-${{ inputs.slug }}${{ inputs.artifact_suffix }}
path: /tmp/binaries/continuwuity${{ inputs.cpu_suffix }}-${{ inputs.slug }}${{ inputs.artifact_suffix }}
if-no-files-found: error
- name: Upload digest
+4 -4
View File
@@ -123,7 +123,7 @@ jobs:
- name: Get package version and component
id: package-meta
run: |
BASE_VERSION=$(cargo metadata --no-deps --format-version 1 | jq -r ".packages[] | select(.name == \"conduwuit\").version" | sed 's/[^a-zA-Z0-9.+]/~/g')
BASE_VERSION=$(cargo metadata --no-deps --format-version 1 | jq -r ".packages[] | select(.name == \"continuwuity\").version" | sed 's/[^a-zA-Z0-9.+]/~/g')
# VERSION is the package version, COMPONENT is used in
# apt's repository config like a git repo branch
VERSION=$BASE_VERSION
@@ -185,9 +185,9 @@ jobs:
echo "Installing: ${{ steps.cargo-deb.outputs.path }}"
apt-get install -y ${{ steps.cargo-deb.outputs.path }}
dpkg -s continuwuity
[ -f /usr/bin/conduwuit ] && echo "✅ Binary installed successfully"
[ -f /usr/lib/systemd/system/conduwuit.service ] && echo "✅ Systemd service installed"
[ -f /etc/conduwuit/conduwuit.toml ] && echo "✅ Config file installed"
[ -f /usr/bin/continuwuity ] && echo "✅ Binary installed successfully"
[ -f /usr/lib/systemd/system/continuwuity.service ] && echo "✅ Systemd service installed"
[ -f /etc/continuwuity/continuwuity.toml ] && echo "✅ Config file installed"
- name: Upload deb artifact
uses: forgejo/upload-artifact@v4
+6 -6
View File
@@ -21,14 +21,14 @@ jobs:
matrix:
include:
- package: default-static-x86_64
filename: conduwuit-linux-static-amd64
filename: continuwuity-linux-static-amd64
- package: default-static-aarch64
filename: conduwuit-linux-static-arm64
filename: continuwuity-linux-static-arm64
- package: max-perf-static-aarch64
filename: conduwuit-linux-static-arm64-maxperf
filename: continuwuity-linux-static-arm64-maxperf
- package: max-perf-haswell-static-x86_64
filename: conduwuit-haswell-linux-static-amd64-maxperf
filename: continuwuity-haswell-linux-static-amd64-maxperf
steps:
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10
@@ -41,7 +41,7 @@ jobs:
- name: Build static binary
run: |
nix build .#${{ matrix.package }}
install -D result/bin/conduwuit /tmp/binaries/${{ matrix.filename }}
install -D result/bin/continuwuity /tmp/binaries/${{ matrix.filename }}
- name: Upload binary artifact
uses: forgejo/upload-artifact@v4
@@ -61,7 +61,7 @@ jobs:
- name: Download binary artifacts
uses: forgejo/download-artifact@v4
with:
pattern: conduwuit*
pattern: continuwuity*
path: binaries
merge-multiple: true
- name: Create Release and Upload
+1 -1
View File
@@ -214,7 +214,7 @@ jobs:
- name: Download binary artifacts
uses: forgejo/download-artifact@v4
with:
pattern: conduwuit*
pattern: continuwuity*
path: binaries
merge-multiple: true
- name: Create Release and Upload
Generated
+321 -321
View File
@@ -894,326 +894,6 @@ dependencies = [
"crossbeam-utils",
]
[[package]]
name = "conduwuit"
version = "26.9.1"
dependencies = [
"aws-lc-rs",
"clap",
"conduwuit_admin",
"conduwuit_api",
"conduwuit_build_metadata",
"conduwuit_core",
"conduwuit_database",
"conduwuit_macros",
"conduwuit_router",
"conduwuit_service",
"console-subscriber",
"const-str",
"ctor",
"dtor",
"hardened_malloc-rs",
"log",
"opentelemetry",
"opentelemetry-otlp",
"opentelemetry_sdk",
"parking_lot",
"reqwest 0.13.5",
"rustls",
"sentry",
"sentry-tower",
"sentry-tracing",
"tokio",
"tokio-metrics",
"tracing",
"tracing-flame",
"tracing-journald",
"tracing-opentelemetry",
"tracing-subscriber",
]
[[package]]
name = "conduwuit_admin"
version = "26.9.1"
dependencies = [
"clap",
"conduwuit_api",
"conduwuit_core",
"conduwuit_database",
"conduwuit_macros",
"conduwuit_service",
"const-str",
"ctor",
"dtor",
"futures",
"lettre",
"log",
"resolvematrix",
"ruma",
"serde-saphyr",
"serde_json",
"tokio",
"tracing",
"tracing-subscriber",
]
[[package]]
name = "conduwuit_api"
version = "26.9.1"
dependencies = [
"axum",
"base64 0.23.1",
"bytes",
"client-ip",
"conduwuit_core",
"conduwuit_macros",
"conduwuit_service",
"const-str",
"ctor",
"dtor",
"futures",
"hmac 0.13.0",
"http",
"http-body-util",
"hyper",
"itertools 0.15.0",
"lettre",
"log",
"rand 0.10.3",
"reqwest 0.13.5",
"ruma",
"ruminuwuity",
"serde",
"serde_json",
"sha1 0.11.0",
"tokio",
"tracing",
]
[[package]]
name = "conduwuit_build_metadata"
version = "26.9.1"
dependencies = [
"built",
"cargo_metadata",
]
[[package]]
name = "conduwuit_core"
version = "26.9.1"
dependencies = [
"argon2",
"arrayvec",
"axum",
"axum-extra",
"bytes",
"bytesize",
"cargo_toml",
"checked_ops",
"chrono",
"clap",
"conduwuit_build_metadata",
"conduwuit_macros",
"const-str",
"core_affinity",
"ctor",
"cyborgtime",
"dtor",
"either",
"figment",
"futures",
"hardened_malloc-rs",
"http",
"http-body-util",
"hyper-util",
"ipaddress",
"lettre",
"libc",
"libloading 0.9.0",
"lock_api",
"log",
"maplit",
"nix",
"num-traits",
"openidconnect",
"parking_lot",
"rand 0.10.3",
"regex",
"reqwest 0.13.5",
"resolvematrix",
"ruma",
"sanitize-filename",
"serde",
"serde-saphyr",
"serde_json",
"serde_regex",
"sha2 0.11.0",
"smallstr",
"smallvec",
"thiserror 2.0.21",
"tikv-jemalloc-ctl",
"tikv-jemalloc-sys",
"tikv-jemallocator",
"tokio",
"tokio-metrics",
"toml 1.1.6+spec-1.1.0",
"tracing",
"tracing-core",
"tracing-subscriber",
"url",
]
[[package]]
name = "conduwuit_database"
version = "26.9.1"
dependencies = [
"async-channel",
"conduwuit_core",
"conduwuit_macros",
"const-str",
"ctor",
"dtor",
"futures",
"log",
"minicbor",
"minicbor-serde",
"rust-rocksdb",
"serde",
"serde_json",
"tokio",
"tracing",
]
[[package]]
name = "conduwuit_macros"
version = "26.9.1"
dependencies = [
"itertools 0.15.0",
"proc-macro2",
"quote",
"syn 3.0.6",
]
[[package]]
name = "conduwuit_router"
version = "26.9.1"
dependencies = [
"axum",
"axum-server",
"axum-server-dual-protocol",
"bytes",
"conduwuit_admin",
"conduwuit_api",
"conduwuit_core",
"conduwuit_macros",
"conduwuit_service",
"conduwuit_web",
"const-str",
"ctor",
"dtor",
"futures",
"http",
"http-body-util",
"hyper",
"hyper-util",
"log",
"ruma",
"rustls",
"sd-notify",
"sentry",
"sentry-tower",
"sentry-tracing",
"serde_json",
"tokio",
"tower",
"tower-http 0.7.1",
"tracing",
]
[[package]]
name = "conduwuit_service"
version = "26.9.1"
dependencies = [
"askama",
"assign",
"async-trait",
"base64 0.23.1",
"bytes",
"conduwuit_core",
"conduwuit_database",
"conduwuit_macros",
"const-str",
"ctor",
"dtor",
"either",
"futures",
"governor",
"hickory-resolver",
"http",
"httpdate",
"image",
"ipaddress",
"itertools 0.15.0",
"lettre",
"log",
"loole",
"lru-cache",
"nonzero_ext",
"openidconnect",
"p256",
"rand 0.10.3",
"regex",
"reqwest 0.13.5",
"resolvematrix",
"ruma",
"ruminuwuity",
"rustyline-async",
"sd-notify",
"serde",
"serde-saphyr",
"serde_json",
"serde_urlencoded",
"sha2 0.11.0",
"termimad",
"tokio",
"tracing",
"url",
"web-push-native",
"webpage",
"yansi",
]
[[package]]
name = "conduwuit_web"
version = "26.9.1"
dependencies = [
"askama",
"async-trait",
"axum",
"conduwuit_api",
"conduwuit_build_metadata",
"conduwuit_core",
"conduwuit_database",
"conduwuit_service",
"form_urlencoded",
"futures",
"lettre",
"memory-serve",
"openidconnect",
"ruma",
"serde",
"serde_json",
"serde_urlencoded",
"thiserror 2.0.21",
"tower-http 0.7.1",
"tower-sec-fetch",
"tower-sessions",
"tower-sessions-core",
"tracing",
"url",
"validator",
]
[[package]]
name = "console-api"
version = "0.9.0"
@@ -1281,6 +961,326 @@ dependencies = [
"typewit",
]
[[package]]
name = "continuwuity"
version = "26.9.1"
dependencies = [
"aws-lc-rs",
"clap",
"console-subscriber",
"const-str",
"continuwuity_admin",
"continuwuity_api",
"continuwuity_build_metadata",
"continuwuity_core",
"continuwuity_database",
"continuwuity_macros",
"continuwuity_router",
"continuwuity_service",
"ctor",
"dtor",
"hardened_malloc-rs",
"log",
"opentelemetry",
"opentelemetry-otlp",
"opentelemetry_sdk",
"parking_lot",
"reqwest 0.13.5",
"rustls",
"sentry",
"sentry-tower",
"sentry-tracing",
"tokio",
"tokio-metrics",
"tracing",
"tracing-flame",
"tracing-journald",
"tracing-opentelemetry",
"tracing-subscriber",
]
[[package]]
name = "continuwuity_admin"
version = "26.9.1"
dependencies = [
"clap",
"const-str",
"continuwuity_api",
"continuwuity_core",
"continuwuity_database",
"continuwuity_macros",
"continuwuity_service",
"ctor",
"dtor",
"futures",
"lettre",
"log",
"resolvematrix",
"ruma",
"serde-saphyr",
"serde_json",
"tokio",
"tracing",
"tracing-subscriber",
]
[[package]]
name = "continuwuity_api"
version = "26.9.1"
dependencies = [
"axum",
"base64 0.23.1",
"bytes",
"client-ip",
"const-str",
"continuwuity_core",
"continuwuity_macros",
"continuwuity_service",
"ctor",
"dtor",
"futures",
"hmac 0.13.0",
"http",
"http-body-util",
"hyper",
"itertools 0.15.0",
"lettre",
"log",
"rand 0.10.3",
"reqwest 0.13.5",
"ruma",
"ruminuwuity",
"serde",
"serde_json",
"sha1 0.11.0",
"tokio",
"tracing",
]
[[package]]
name = "continuwuity_build_metadata"
version = "26.9.1"
dependencies = [
"built",
"cargo_metadata",
]
[[package]]
name = "continuwuity_core"
version = "26.9.1"
dependencies = [
"argon2",
"arrayvec",
"axum",
"axum-extra",
"bytes",
"bytesize",
"cargo_toml",
"checked_ops",
"chrono",
"clap",
"const-str",
"continuwuity_build_metadata",
"continuwuity_macros",
"core_affinity",
"ctor",
"cyborgtime",
"dtor",
"either",
"figment",
"futures",
"hardened_malloc-rs",
"http",
"http-body-util",
"hyper-util",
"ipaddress",
"lettre",
"libc",
"libloading 0.9.0",
"lock_api",
"log",
"maplit",
"nix",
"num-traits",
"openidconnect",
"parking_lot",
"rand 0.10.3",
"regex",
"reqwest 0.13.5",
"resolvematrix",
"ruma",
"sanitize-filename",
"serde",
"serde-saphyr",
"serde_json",
"serde_regex",
"sha2 0.11.0",
"smallstr",
"smallvec",
"thiserror 2.0.21",
"tikv-jemalloc-ctl",
"tikv-jemalloc-sys",
"tikv-jemallocator",
"tokio",
"tokio-metrics",
"toml 1.1.6+spec-1.1.0",
"tracing",
"tracing-core",
"tracing-subscriber",
"url",
]
[[package]]
name = "continuwuity_database"
version = "26.9.1"
dependencies = [
"async-channel",
"const-str",
"continuwuity_core",
"continuwuity_macros",
"ctor",
"dtor",
"futures",
"log",
"minicbor",
"minicbor-serde",
"rust-rocksdb",
"serde",
"serde_json",
"tokio",
"tracing",
]
[[package]]
name = "continuwuity_macros"
version = "26.9.1"
dependencies = [
"itertools 0.15.0",
"proc-macro2",
"quote",
"syn 3.0.6",
]
[[package]]
name = "continuwuity_router"
version = "26.9.1"
dependencies = [
"axum",
"axum-server",
"axum-server-dual-protocol",
"bytes",
"const-str",
"continuwuity_admin",
"continuwuity_api",
"continuwuity_core",
"continuwuity_macros",
"continuwuity_service",
"continuwuity_web",
"ctor",
"dtor",
"futures",
"http",
"http-body-util",
"hyper",
"hyper-util",
"log",
"ruma",
"rustls",
"sd-notify",
"sentry",
"sentry-tower",
"sentry-tracing",
"serde_json",
"tokio",
"tower",
"tower-http 0.7.1",
"tracing",
]
[[package]]
name = "continuwuity_service"
version = "26.9.1"
dependencies = [
"askama",
"assign",
"async-trait",
"base64 0.23.1",
"bytes",
"const-str",
"continuwuity_core",
"continuwuity_database",
"continuwuity_macros",
"ctor",
"dtor",
"either",
"futures",
"governor",
"hickory-resolver",
"http",
"httpdate",
"image",
"ipaddress",
"itertools 0.15.0",
"lettre",
"log",
"loole",
"lru-cache",
"nonzero_ext",
"openidconnect",
"p256",
"rand 0.10.3",
"regex",
"reqwest 0.13.5",
"resolvematrix",
"ruma",
"ruminuwuity",
"rustyline-async",
"sd-notify",
"serde",
"serde-saphyr",
"serde_json",
"serde_urlencoded",
"sha2 0.11.0",
"termimad",
"tokio",
"tracing",
"url",
"web-push-native",
"webpage",
"yansi",
]
[[package]]
name = "continuwuity_web"
version = "26.9.1"
dependencies = [
"askama",
"async-trait",
"axum",
"continuwuity_api",
"continuwuity_build_metadata",
"continuwuity_core",
"continuwuity_database",
"continuwuity_service",
"form_urlencoded",
"futures",
"lettre",
"memory-serve",
"openidconnect",
"ruma",
"serde",
"serde_json",
"serde_urlencoded",
"thiserror 2.0.21",
"tower-http 0.7.1",
"tower-sec-fetch",
"tower-sessions",
"tower-sessions-core",
"tracing",
"url",
"validator",
]
[[package]]
name = "convert_case"
version = "0.10.0"
@@ -7290,7 +7290,7 @@ dependencies = [
"askama",
"cargo_metadata",
"clap",
"conduwuit_admin",
"continuwuity_admin",
]
[[package]]
+30 -30
View File
@@ -5,7 +5,7 @@ default-members = ["src/*"]
[workspace.package]
authors = ["Continuwuity Team and contributors <team@continuwuity.org>"]
description = "A Matrix homeserver written in Rust, the official continuation of the conduwuit homeserver."
description = "A community-driven Matrix homeserver"
edition = "2024"
homepage = "https://continuwuity.org/"
license = "Apache-2.0"
@@ -15,7 +15,7 @@ repository = "https://forgejo.ellis.link/continuwuation/continuwuity"
version = "26.9.1"
[workspace.metadata.crane]
name = "conduwuit"
name = "continuwuity"
[workspace.dependencies.arrayvec]
version = "0.7.6"
@@ -121,7 +121,7 @@ features = ["typed-header", "tracing", "cookie"]
version = "0.8.0"
default-features = false
# to listen on both HTTP and HTTPS if listening on TLS dierctly from conduwuit for complement or sytest
# to listen on both HTTP and HTTPS if listening on TLS dierctly from continuwuity for complement or sytest
[workspace.dependencies.axum-server-dual-protocol]
# version = "0.7"
git = "https://github.com/vinchona/axum-server-dual-protocol.git"
@@ -223,7 +223,7 @@ default-features = false
version = "2.0.1"
default-features = false
# used for conduwuit's CLI and admin room command parsing
# used for continuwuity's CLI and admin room command parsing
[workspace.dependencies.clap]
version = "4.5.35"
default-features = false
@@ -314,7 +314,7 @@ features = [
"tokio",
]
# Used for conduwuit::Error type
# Used for continuwuity::Error type
[workspace.dependencies.thiserror]
version = "2.0.12"
default-features = false
@@ -610,49 +610,49 @@ rev = "09fcd3bf4656c81a8ad573bee410ab2b57f60b86"
# Our crates
#
[workspace.dependencies.conduwuit-router]
package = "conduwuit_router"
[workspace.dependencies.continuwuity-router]
package = "continuwuity_router"
path = "src/router"
default-features = false
[workspace.dependencies.conduwuit-admin]
package = "conduwuit_admin"
[workspace.dependencies.continuwuity-admin]
package = "continuwuity_admin"
path = "src/admin"
default-features = false
[workspace.dependencies.conduwuit-api]
package = "conduwuit_api"
[workspace.dependencies.continuwuity-api]
package = "continuwuity_api"
path = "src/api"
default-features = false
[workspace.dependencies.conduwuit-service]
package = "conduwuit_service"
[workspace.dependencies.continuwuity-service]
package = "continuwuity_service"
path = "src/service"
default-features = false
[workspace.dependencies.conduwuit-database]
package = "conduwuit_database"
[workspace.dependencies.continuwuity-database]
package = "continuwuity_database"
path = "src/database"
default-features = false
[workspace.dependencies.conduwuit-core]
package = "conduwuit_core"
[workspace.dependencies.continuwuity-core]
package = "continuwuity_core"
path = "src/core"
default-features = false
[workspace.dependencies.conduwuit-macros]
package = "conduwuit_macros"
[workspace.dependencies.continuwuity-macros]
package = "continuwuity_macros"
path = "src/macros"
default-features = false
[workspace.dependencies.conduwuit-web]
package = "conduwuit_web"
[workspace.dependencies.continuwuity-web]
package = "continuwuity_web"
path = "src/web"
default-features = false
[workspace.dependencies.conduwuit-build-metadata]
package = "conduwuit_build_metadata"
[workspace.dependencies.continuwuity-build-metadata]
package = "continuwuity_build_metadata"
path = "src/build_metadata"
default-features = false
@@ -697,7 +697,7 @@ codegen-units = 32
# '-Clink-arg=-Wl,--no-gc-sections',
#]
[profile.release-max-perf.package.conduwuit_macros]
[profile.release-max-perf.package.continuwuity_macros]
inherits = "release-max-perf.build-override"
#rustflags = [
# '-Crelocation-model=pic',
@@ -731,7 +731,7 @@ panic = "unwind"
debug-assertions = true
incremental = true
#rustflags = [
# '--cfg', 'conduwuit_mods',
# '--cfg', 'continuwuity_mods',
# '-Ztime-passes',
# '-Zmir-opt-level=0',
# '-Zvalidate-mir=false',
@@ -748,12 +748,12 @@ incremental = true
# '-Clink-arg=-Wl,-z,lazy',
#]
[profile.dev.package.conduwuit_core]
[profile.dev.package.continuwuity_core]
inherits = "dev"
[profile.dev.package.conduwuit]
[profile.dev.package.continuwuity]
inherits = "dev"
#rustflags = [
# '--cfg', 'conduwuit_mods',
# '--cfg', 'continuwuity_mods',
# '-Ztime-passes',
# '-Zmir-opt-level=0',
# '-Zvalidate-mir=false',
@@ -774,7 +774,7 @@ debug = 'limited'
codegen-units = 1
opt-level = 'z'
#rustflags = [
# '--cfg', 'conduwuit_mods',
# '--cfg', 'continuwuity_mods',
# '-Ztls-model=global-dynamic',
# '-Cprefer-dynamic=true',
# '-Zstaticlib-prefer-dynamic=true',
@@ -974,7 +974,7 @@ suspicious = { level = "warn", priority = -1 }
## some sadness
let_underscore_future = { level = "allow", priority = 1 }
# rust doesnt understand conduwuit's custom log macros
# rust doesnt understand continuwuity's custom log macros
literal_string_with_formatting_args = { level = "allow", priority = 1 }
# This lint is stupid, there's no point defining generics for simple trait params
+1 -1
View File
@@ -14,7 +14,7 @@
[opencollective]: https://opencollective.com/continuwuity
[continuwuity] is a Matrix homeserver written in Rust.
It's the official community continuation of the [conduwuit](https://github.com/girlbossceo/conduwuit) homeserver.
[![forgejo.ellis.link][forge-badge]][forge-link]
[![Stars][forge-stars-badge]][forge-stars-link]
+2 -1
View File
@@ -99,7 +99,7 @@ fi
if ! docker image inspect "$COMPLEMENT_BASE_IMAGE" > /dev/null 2>&1; then
echo "Complement base image not found: $COMPLEMENT_BASE_IMAGE"
echo "Build it with: cargo build -p conduwuit && docker build -t $COMPLEMENT_BASE_IMAGE -f docker/complement.Dockerfile ."
echo "Build it with: cargo build -p continuwuity && docker build -t $COMPLEMENT_BASE_IMAGE -f docker/complement.Dockerfile ."
exit 1
fi
@@ -141,6 +141,7 @@ if [ -n "$MSC" ]; then
fi
# `COMPLEMENT_ENABLE_DIRTY_RUNS=1` reuses the same complement container for faster complement, at the possible expense of test environment pollution
# TODO: upstream complement handling to replace conduwuit_blacklist
set +e
(cd "$COMPLEMENT_SRC" && \
COMPLEMENT_BASE_IMAGE="$COMPLEMENT_BASE_IMAGE" \
-110
View File
@@ -1,110 +0,0 @@
#!/usr/bin/env bash
set -eo pipefail
toplevel="$(git rev-parse --show-toplevel)"
# Build just the single installable and forward any other arguments too
just() {
# uses nix-output-monitor (nom) if available
if command -v nom &> /dev/null; then
nom build "$@"
else
nix build -L "$@"
fi
if [ -z "$ATTIC_TOKEN" ]; then
echo "\$ATTIC_TOKEN is unset, skipping uploading to the binary cache"
return
fi
# historical "conduit" store for compatibility purposes, same as conduwuit
nix run --inputs-from "$toplevel" attic -- \
login \
conduit \
"${ATTIC_ENDPOINT:-https://attic.kennel.juneis.dog/conduit}" \
"$ATTIC_TOKEN"
# Find all output paths of the installables and their build dependencies
#readarray -t derivations < <(nix path-info --derivation "$@")
derivations=()
while IFS=$'\n' read derivation; do
derivations+=("$derivation")
done < <(nix path-info --derivation "$@")
cache=()
for derivation in "${derivations[@]}"; do
cache+=(
"$(nix-store --query --requisites --include-outputs "$derivation")"
)
done
withattic() {
nix shell --inputs-from "$toplevel" attic --command xargs attic push "$@" <<< "${cache[*]}"
}
# Upload them to Attic (conduit store)
#
# Use `xargs` and a here-string because something would probably explode if
# several thousand arguments got passed to a command at once. Hopefully no
# store paths include a newline in them.
(
IFS=$'\n'
withattic conduit || withattic conduit || withattic conduit || true
)
# main "conduwuit" store
nix run --inputs-from "$toplevel" attic -- \
login \
conduwuit \
"${ATTIC_ENDPOINT:-https://attic.kennel.juneis.dog/conduwuit}" \
"$ATTIC_TOKEN"
# Upload them to Attic (conduwuit store) and Cachix
#
# Use `xargs` and a here-string because something would probably explode if
# several thousand arguments got passed to a command at once. Hopefully no
# store paths include a newline in them.
(
IFS=$'\n'
withattic conduwuit || withattic conduwuit || withattic conduwuit || true
# push to cachix if available
if [ "$CACHIX_AUTH_TOKEN" ]; then
nix shell --inputs-from "$toplevel" cachix -c xargs \
cachix push conduwuit <<< "${cache[*]}"
fi
)
}
# Build and cache things needed for CI
ci() {
cache=(
--inputs-from "$toplevel"
# Keep sorted
#"$toplevel#devShells.x86_64-linux.default"
#"$toplevel#devShells.x86_64-linux.all-features"
attic#default
cachix#default
nixpkgs#direnv
nixpkgs#jq
nixpkgs#nix-direnv
)
just "${cache[@]}"
}
# Build and cache *all* the package outputs from the flake.nix
packages() {
declare -a cache="($(
nix flake show --json 2> /dev/null |
nix run --inputs-from "$toplevel" nixpkgs#jq -- \
-r \
'.packages."x86_64-linux" | keys | map("'"$toplevel"'#" + .) | @sh'
))"
just "${cache[@]}"
}
eval "$@"
+9 -9
View File
@@ -8,25 +8,25 @@ type-complexity-threshold = 250 # reduce me to ~200
large-error-threshold = 256 # TODO reduce me ALARA
disallowed-macros = [
{ path = "log::error", reason = "use conduwuit_core::error" },
{ path = "log::warn", reason = "use conduwuit_core::warn" },
{ path = "log::info", reason = "use conduwuit_core::info" },
{ path = "log::debug", reason = "use conduwuit_core::debug" },
{ path = "log::trace", reason = "use conduwuit_core::trace" },
{ path = "log::error", reason = "use continuwuity_core::error" },
{ path = "log::warn", reason = "use continuwuity_core::warn" },
{ path = "log::info", reason = "use continuwuity_core::info" },
{ path = "log::debug", reason = "use continuwuity_core::debug" },
{ path = "log::trace", reason = "use continuwuity_core::trace" },
]
[[disallowed-methods]]
path = "tokio::spawn"
reason = "use and pass conduwuit_core::server::Server::runtime() to spawn from"
reason = "use and pass continuwuity_core::server::Server::runtime() to spawn from"
[[disallowed-methods]]
path = "reqwest::Response::bytes"
reason = "bytes is unsafe, use limit_read via the conduwuit_core::utils::LimitReadExt trait instead"
reason = "bytes is unsafe, use limit_read via the continuwuity_core::utils::LimitReadExt trait instead"
[[disallowed-methods]]
path = "reqwest::Response::text"
reason = "text is unsafe, use limit_read_text via the conduwuit_core::utils::LimitReadExt trait instead"
reason = "text is unsafe, use limit_read_text via the continuwuity_core::utils::LimitReadExt trait instead"
[[disallowed-methods]]
path = "reqwest::Response::json"
reason = "json is unsafe, use limit_read_text via the conduwuit_core::utils::LimitReadExt trait instead"
reason = "json is unsafe, use limit_read_text via the continuwuity_core::utils::LimitReadExt trait instead"
+1 -1
View File
@@ -64,4 +64,4 @@ export CONTINUWUITY_SERVER_NAME="$SERVER_NAME"
echo "Starting Continuwuity with SERVER_NAME=$SERVER_NAME"
# Start continuwuity
/usr/local/bin/conduwuit --config /etc/continuwuity/config.toml
/usr/local/bin/continuwuity --config /etc/continuwuity/config.toml
+1 -1
View File
@@ -10,7 +10,7 @@ allow_device_name_federation = true
allow_public_room_directory_over_federation = true
allow_registration = true
database_path = "/database"
log = "trace,h2=debug,hyper=debug,conduwuit_database=warn,conduwuit_service::manager=info,conduwuit_api::router=error,conduwuit_router=error,tower_http=error"
log = "trace,h2=debug,hyper=debug,continuwuity_database=warn,continuwuity_service::manager=info,continuwuity_api::router=error,continuwuity_router=error,tower_http=error"
port = [8008, 8448]
trusted_servers = []
only_query_trusted_key_servers = false
@@ -84,10 +84,10 @@
# including media. Note: this was previously "/var/lib/matrix-conduit".
#
# YOU NEED TO EDIT THIS, UNLESS you are running continuwuity as a
# `systemd` service. The service file sets it to `/var/lib/conduwuit`
# `systemd` service. The service file sets it to `/var/lib/continuwuity`
# using an environment variable and also grants write access.
#
# example: "/var/lib/conduwuit"
# example: "/var/lib/continuwuity"
#
#database_path =
@@ -1548,7 +1548,7 @@
# Check consistency of the media directory at startup:
# 1. When `media_compat_file_link` is enabled, this check will upgrade
# media when switching back and forth between Conduit and conduwuit.
# media when switching back and forth between Conduit and continuwuity.
# Both options must be enabled to handle this.
# 2. When media is deleted from the directory, this check will also delete
# its database entry.
+10 -3
View File
@@ -149,7 +149,7 @@ ARG TARGETPLATFORM
# Verify environment configuration
RUN xx-cargo --print-target-triple
# Conduwuit version info
# Continuwuity version info
ARG GIT_COMMIT_HASH
ARG GIT_COMMIT_HASH_SHORT
ARG GIT_REMOTE_URL
@@ -191,7 +191,7 @@ RUN --mount=type=cache,target=/usr/local/cargo/registry \
TARGET_DIR=($(cargo metadata --no-deps --format-version 1 | \
jq -r ".target_directory"))
mkdir /out/sbin
PACKAGE=conduwuit
PACKAGE=continuwuity
CARGO_LOG=debug xx-cargo build --locked --profile ${RUST_PROFILE} \
--no-default-features --features ${CARGO_FEATURES} \
-p $PACKAGE;
@@ -202,6 +202,7 @@ RUN --mount=type=cache,target=/usr/local/cargo/registry \
xx-verify $TARGET_DIR/$(xx-cargo --print-target-triple)/${RUST_PROFILE_DIR}/$BINARY
cp $TARGET_DIR/$(xx-cargo --print-target-triple)/${RUST_PROFILE_DIR}/$BINARY /out/sbin/$BINARY
done
ln -s continuwuity /out/sbin/conduwuit
EOF
# Generate Software Bill of Materials (SBOM)
@@ -213,6 +214,9 @@ RUN --mount=type=cache,target=/usr/local/cargo/registry \
mkdir /out/sbom
typeset -A PACKAGES
for BINARY in /out/sbin/*; do
if [ -L "$BINARY" ]; then
continue
fi
BINARY_BASE=$(basename ${BINARY})
package=$(cargo metadata --no-deps --format-version 1 | jq -r ".packages[] | select(.targets[] | select( .kind | map(. == \"bin\") | any ) | .name == \"$BINARY_BASE\") | .name")
if [ -z "$package" ]; then
@@ -233,6 +237,9 @@ RUN <<'DEPS_EOF'
# Process each binary
for BINARY in /out/sbin/*; do
if [ -L "$BINARY" ]; then
continue
fi
if lddtree_output=$(lddtree "$BINARY" 2>/dev/null) && [ -n "$lddtree_output" ]; then
echo "$lddtree_output" | awk '{print $(NF-0) " " $1}' | sort -u -k 1,1 | \
awk '{dest = ($2 ~ /^\//) ? "/out/libs-root" $2 : "/out/libs/" $2; print "install -D " $1 " " dest}' | \
@@ -285,4 +292,4 @@ ENV LD_LIBRARY_PATH=/usr/lib
# Continuwuity default port
EXPOSE 8008
CMD ["/sbin/conduwuit"]
CMD ["/sbin/continuwuity"]
+2 -2
View File
@@ -5,7 +5,7 @@ RUN apt-get update && apt-get install -y ca-certificates liburing2 && rm -rf /va
RUN mkdir -p /etc/continuwuity /var/lib/continuwuity /usr/local/bin/
COPY complement/complement-entrypoint.sh /usr/local/bin/complement-entrypoint.sh
COPY complement/complement.config.toml /etc/continuwuity/config.toml
COPY target/debug/conduwuit /usr/local/bin/conduwuit
RUN chmod +x /usr/local/bin/conduwuit /usr/local/bin/complement-entrypoint.sh
COPY target/debug/continuwuity /usr/local/bin/continuwuity
RUN chmod +x /usr/local/bin/continuwuity /usr/local/bin/complement-entrypoint.sh
#HEALTHCHECK --interval=30s --timeout=5s CMD curl --fail http://localhost:8008/_continuwuity/server_version || exit 1
ENTRYPOINT ["/usr/local/bin/complement-entrypoint.sh"]
+3 -3
View File
@@ -103,7 +103,7 @@ ARG TARGETPLATFORM
# Verify environment configuration
RUN xx-cargo --print-target-triple
# Conduwuit version info
# Continuwuity version info
ARG GIT_COMMIT_HASH
ARG GIT_COMMIT_HASH_SHORT
ARG GIT_REMOTE_URL
@@ -130,7 +130,7 @@ RUN --mount=type=cache,target=/usr/local/cargo/registry \
TARGET_DIR=($(cargo metadata --no-deps --format-version 1 | \
jq -r ".target_directory"))
mkdir /out/sbin
PACKAGE=conduwuit
PACKAGE=continuwuity
xx-cargo build --locked --profile ${RUST_PROFILE} \
-p $PACKAGE --no-default-features --features bindgen-static,release_max_log_level,standard;
BINARIES=($(cargo metadata --no-deps --format-version 1 | \
@@ -197,4 +197,4 @@ ENV LD_LIBRARY_PATH=/usr/lib
# Continuwuity default port
EXPOSE 8008
CMD ["/sbin/conduwuit"]
CMD ["/sbin/continuwuity"]
+5 -5
View File
@@ -9,7 +9,7 @@ Continuwuity uses a TOML config file for all of its settings. This is the recomm
You can specify the config file to be used by Continuwuity with the command-line flag `-c` or `--config`:
```bash
./conduwuit -c /path/to/continuwuity.toml
./continuwuity -c /path/to/continuwuity.toml
```
Alternatively, you can use the environment variable `CONTINUWUITY_CONFIG` to specify the config file to be used; see [the section on environment variables](#environment-variables) for more information.
@@ -80,10 +80,10 @@ Therefore, you can use environment variables or the options flags to override va
Continuwuity supports running admin commands on startup using the command-line flag `--execute`. This is treated as a standard admin command, without the need for the `!admin` prefix. For example, to create a new user:
```bash
# Equivalent to `!admin users create_user june`
./conduwuit --execute "users create_user june"
INFO conduwuit_service::admin::startup: Startup command #0 completed:
Created user with user_id: @june:girlboss.ceo and password: `<redacted>`
# Equivalent to `!admin users create_user jade`
./continuwuity --execute "users create_user jade"
INFO continuwuity_service::admin::startup: Startup command #0 completed:
Created user with user_id: @jade:continuwuity.org and password: `<redacted>`
```
Alternatively, you can configure `CONTINUWUITY_ADMIN_EXECUTE` or the config file value `admin_execute` with a list of commands.
+1 -1
View File
@@ -8,4 +8,4 @@ The development version is available on the AUR as [`continuwuity-git`][aur-cont
[aur-continuwuity]: https://aur.archlinux.org/packages/continuwuity
[aur-continuwuity-git]: https://aur.archlinux.org/packages/continuwuity-git
Simply install the `continuwuity` package. Configure the service in `/etc/conduwuit/conduwuit.toml`, then enable and start the `continuwuity.service`.
Simply install the `continuwuity` package. Configure the service in `/etc/continuwuity/continuwuity.toml`, then enable and start the `continuwuity.service`.
+1 -1
View File
@@ -247,7 +247,7 @@ Get a working Continuwuity server with an admin user in four steps:
-e CONTINUWUITY_ALLOW_FEDERATION="false" \
--name continuwuity \
forgejo.ellis.link/continuwuation/continuwuity:latest \
/sbin/conduwuit
/sbin/continuwuity
```
3. Fetch the one-time initial registration token
+17 -17
View File
@@ -70,16 +70,16 @@ sudo useradd -r --shell /usr/bin/nologin --no-create-home continuwuity
You can find an example unit for continuwuity below.
You may need to change the `ExecStart=` path to match where you placed the Continuwuity
binary if it is not in `/usr/bin/conduwuit`.
binary if it is not in `/usr/bin/continuwuity`.
On systems where rsyslog is used alongside journald (i.e. Red Hat-based distros
and OpenSUSE), put `$EscapeControlCharactersOnReceive off` inside
`/etc/rsyslog.conf` to allow color in logs.
If you are using a different `database_path` than the systemd unit's
configured default (`/var/lib/conduwuit`), you need to add your path to the
configured default (`/var/lib/continuwuity`), you need to add your path to the
systemd unit's `ReadWritePaths=`. You can do this by either directly editing
`conduwuit.service` and reloading systemd, or by running `systemctl edit conduwuit.service`
`continuwuity.service` and reloading systemd, or by running `systemctl edit continuwuity.service`
and entering the following:
```
@@ -90,9 +90,9 @@ ReadWritePaths=/path/to/custom/database/path
### Example systemd Unit File
<details>
<summary>Click to expand systemd unit file (conduwuit.service)</summary>
<summary>Click to expand systemd unit file (continuwuity.service)</summary>
```ini file="../../pkg/conduwuit.service"
```ini file="../../pkg/continuwuity.service"
```
@@ -100,13 +100,13 @@ ReadWritePaths=/path/to/custom/database/path
You can also [view the file on Foregejo][systemd-file].
[systemd-file]: https://forgejo.ellis.link/continuwuation/continuwuity/src/branch/main/pkg/conduwuit.service
[systemd-file]: https://forgejo.ellis.link/continuwuation/continuwuity/src/branch/main/pkg/continuwuity.service
## Creating the Continuwuity configuration file
Now you need to create the Continuwuity configuration file in
`/etc/conduwuit/conduwuit.toml`. You can find an example configuration at
[conduwuit-example.toml](../reference/config.mdx).
`/etc/continuwuity/continuwuity.toml`. You can find an example configuration at
[continuwuity-example.toml](../reference/config.mdx).
**Please take a moment to read the config. You need to change at least the
server name.**
@@ -117,16 +117,16 @@ If you are using a dedicated user for Continuwuity, you need to allow it to
read the configuration. To do this, run:
```bash
sudo chown -R root:root /etc/conduwuit
sudo chmod -R 755 /etc/conduwuit
sudo chown -R root:root /etc/continuwuity
sudo chmod -R 755 /etc/continuwuity
```
If you use the default database path you also need to run this:
```bash
sudo mkdir -p /var/lib/conduwuit/
sudo chown -R continuwuity:continuwuity /var/lib/conduwuit/
sudo chmod 700 /var/lib/conduwuit/
sudo mkdir -p /var/lib/continuwuity/
sudo chown -R continuwuity:continuwuity /var/lib/continuwuity/
sudo chmod 700 /var/lib/continuwuity/
```
## Exposing ports in the firewall or the router
@@ -197,26 +197,26 @@ header, making federation non-functional. If you find a workaround, please share
- `proxy_pass http://127.0.0.1:6167$request_uri;`
- `proxy_pass http://127.0.0.1:6167;`
Furthermore, Nginx users need to increase the `client_max_body_size` setting (default is 1M) to match the `max_request_size` defined in conduwuit.toml.
Furthermore, Nginx users need to increase the `client_max_body_size` setting (default is 1M) to match the `max_request_size` defined in continuwuity.toml.
## Starting Your Server
Now you can start Continuwuity with:
```bash
sudo systemctl start conduwuit
sudo systemctl start continuwuity
```
Set it to start automatically when your system boots with:
```bash
sudo systemctl enable conduwuit
sudo systemctl enable continuwuity
```
Check Continuwuity logs with the following command:
```bash
sudo journalctl -u conduwuit.service
sudo journalctl -u continuwuity.service
```
If Continuwuity has successfully initialized, you'll see output as below.
+1 -1
View File
@@ -39,7 +39,7 @@ spec:
- name: continuwuity
# use a sha hash <3
image: forgejo.ellis.link/continuwuation/continuwuity:latest
command: ["/sbin/conduwuit"]
command: ["/sbin/continuwuity"]
imagePullPolicy: IfNotPresent
ports:
- name: http
+1 -1
View File
@@ -57,7 +57,7 @@ The NixOS module provides these configuration options:
- `max-perf`: Takes longer to build, but has more runtime optimizations
- `max-perf-haswell`: Optimized for modern CPUs, don't use if your CPU is not Haswell or later.
- `admin.enable`: Whether to add the `conduwuit` binary to `PATH` for administration (enabled by default)
- `admin.enable`: Whether to add the `continuwuity` binary to `PATH` for administration (enabled by default)
- `settings`: The Continuwuity configuration
Use the `settings` option to configure Continuwuity itself. See the [example configuration file](../reference/config.mdx) for all available options.
+1 -1
View File
@@ -112,7 +112,7 @@ EOF
data = <<EOF
{{key "config/continuwuity"}}
EOF
destination = "local/conduwuit.toml"
destination = "local/continuwuity.toml"
}
...
```
+8 -8
View File
@@ -71,7 +71,7 @@ In the meantime, you may follow the [generic deployment instructions](generic).
## Configuration
Consult the [generic deployment instructions](./generic.mdx) for detailed steps. You will at least need to adjust the config file located at `/etc/conduwuit/conduwuit.toml` to suit your needs, and configure a [reverse proxy](./generic.mdx#setting-up-the-reverse-proxy).
Consult the [generic deployment instructions](./generic.mdx) for detailed steps. You will at least need to adjust the config file located at `/etc/continuwuity/continuwuity.toml` to suit your needs, and configure a [reverse proxy](./generic.mdx#setting-up-the-reverse-proxy).
## Service management
@@ -79,23 +79,23 @@ Now, you can start your Continuwuity service with:
```bash
# Start the service
sudo systemctl start conduwuit
sudo systemctl start continuwuity
```
Other useful commands include:
```bash
# Enable on boot
sudo systemctl enable conduwuit
sudo systemctl enable continuwuity
# Check status
sudo systemctl status conduwuit
sudo systemctl status continuwuity
# View logs
sudo journalctl -u conduwuit -f
sudo journalctl -u continuwuity -f
# Stopping the service
sudo systemctl stop conduwuit
sudo systemctl stop continuwuity
```
## Troubleshooting
@@ -131,8 +131,8 @@ To uninstall Continuwuity:
```bash
# Stop and disable the service
sudo systemctl stop conduwuit
sudo systemctl disable conduwuit
sudo systemctl stop continuwuity
sudo systemctl disable continuwuity
# Remove the package
sudo dnf remove continuwuity # replace `dnf` with `zypper` on openSUSE
+2 -2
View File
@@ -184,7 +184,7 @@ debug!(
Use the `WithLock` trait from `core::utils::with_lock`:
```rs
use conduwuit::utils::with_lock::WithLock;
use continuwuity::utils::with_lock::WithLock;
// Good - explicit closure guard
shared_data.with_lock(|data| {
@@ -205,7 +205,7 @@ shared_data.with_lock(|data| {
For async contexts, use the async variant:
```rs
use conduwuit::utils::with_lock::WithLockAsync;
use continuwuity::utils::with_lock::WithLockAsync;
// Good - async closure guard
async_shared_data.with_lock(|data| {
+1 -1
View File
@@ -56,7 +56,7 @@ workspace crate(s) must define the feature there in its `Cargo.toml`.
So, if this is adding a feature to the API such as `woof`, you define the
feature in the `api` crate's `Cargo.toml` as `woof = []`. The feature definition
in `main`'s `Cargo.toml` will be `woof = ["conduwuit-api/woof"]`.
in `main`'s `Cargo.toml` will be `woof = ["continuwuity-api/woof"]`.
The rationale for this is due to Rust / Cargo not supporting ["workspace level
features"][9], we must make a choice of; either scattering features all over the
+1 -1
View File
@@ -12,7 +12,7 @@ Install Git, Rust, Docker, Go, and `jq`. From this repository's root, build the
server image and run the suite:
```bash
cargo build -p conduwuit
cargo build -p continuwuity
docker build -t continuwuity:complement -f docker/complement.Dockerfile .
./bin/complement
```
@@ -4,7 +4,7 @@ services:
homeserver:
image: "forgejo.ellis.link/continuwuation/continuwuity:latest"
restart: unless-stopped
command: /sbin/conduwuit
command: /sbin/continuwuity
volumes:
- db:/var/lib/continuwuity
- ./continuwuity-resolv.conf:/etc/resolv.conf # use custom resolvers rather than Docker's
@@ -21,7 +21,7 @@ services:
homeserver:
image: "forgejo.ellis.link/continuwuation/continuwuity:latest"
restart: unless-stopped
command: /sbin/conduwuit
command: /sbin/continuwuity
volumes:
- db:/var/lib/continuwuity
- ./continuwuity-resolv.conf:/etc/resolv.conf # use custom resolvers rather than Docker's
@@ -17,7 +17,7 @@ services:
homeserver:
image: "forgejo.ellis.link/continuwuation/continuwuity:latest"
restart: unless-stopped
command: /sbin/conduwuit
command: /sbin/continuwuity
volumes:
- db:/var/lib/continuwuity
- ./continuwuity-resolv.conf:/etc/resolv.conf # use custom resolvers rather than Docker's
@@ -4,7 +4,7 @@ services:
homeserver:
image: "forgejo.ellis.link/continuwuation/continuwuity:latest"
restart: unless-stopped
command: /sbin/conduwuit
command: /sbin/continuwuity
volumes:
- db:/var/lib/continuwuity
- ./continuwuity-resolv.conf:/etc/resolv.conf # use custom resolvers rather than Docker's
@@ -4,7 +4,7 @@ services:
homeserver:
image: "forgejo.ellis.link/continuwuation/continuwuity:latest"
restart: unless-stopped
command: /sbin/conduwuit
command: /sbin/continuwuity
volumes:
- db:/var/lib/continuwuity
- ./continuwuity-resolv.conf:/etc/resolv.conf # use custom resolvers rather than Docker's
@@ -18,7 +18,7 @@ services:
homeserver:
image: "forgejo.ellis.link/continuwuation/continuwuity:latest"
restart: unless-stopped
command: /sbin/conduwuit
command: /sbin/continuwuity
volumes:
- db:/var/lib/continuwuity
- ./continuwuity-resolv.conf:/etc/resolv.conf # use custom resolvers rather than Docker's
@@ -18,7 +18,7 @@ services:
homeserver:
image: "forgejo.ellis.link/continuwuation/continuwuity:latest"
restart: unless-stopped
command: /sbin/conduwuit
command: /sbin/continuwuity
volumes:
- db:/var/lib/continuwuity
- ./continuwuity-resolv.conf:/etc/resolv.conf # use custom resolvers rather than Docker's
@@ -4,7 +4,7 @@ services:
homeserver:
image: "forgejo.ellis.link/continuwuation/continuwuity:latest"
restart: unless-stopped
command: /sbin/conduwuit
command: /sbin/continuwuity
volumes:
- db:/var/lib/continuwuity
- ./continuwuity-resolv.conf:/etc/resolv.conf # use custom resolvers rather than Docker's
+1 -1
View File
@@ -4,7 +4,7 @@ services:
homeserver:
image: "forgejo.ellis.link/continuwuation/continuwuity:latest"
restart: unless-stopped
command: /sbin/conduwuit
command: /sbin/continuwuity
ports:
# If your reverse proxy is on the host, use this
+2 -2
View File
@@ -1,9 +1,9 @@
## Configuration file reference
This configuration file reflect the latest developments on the `main` branch. To check the configuration from a specific Continuwuity version, browse the [tags](https://forgejo.ellis.link/continuwuation/continuwuity/tags) and navigate to the `conduwuit-example.toml` file for that version.
This configuration file reflect the latest developments on the `main` branch. To check the configuration from a specific Continuwuity version, browse the [tags](https://forgejo.ellis.link/continuwuation/continuwuity/tags) and navigate to the `continuwuity-example.toml` file for that version.
---
```toml file="../../conduwuit-example.toml"
```toml file="../../continuwuity-example.toml"
```
+1 -1
View File
@@ -170,7 +170,7 @@ To enable backtraces, set the `RUST_BACKTRACE` environment variable before start
```bash
# For both panics and errors
RUST_BACKTRACE=1 ./conduwuit
RUST_BACKTRACE=1 ./continuwuity
```
+1 -1
View File
@@ -186,5 +186,5 @@ name = "example-config"
group = "tests"
depends = ["cargo/default"]
script = """
git diff --exit-code conduwuit-example.toml
git diff --exit-code continuwuity-example.toml
"""
+3 -3
View File
@@ -62,19 +62,19 @@ craneLib.buildPackage (
# Needed to make continuwuity link to rocksdb
postFixup = lib.optionalString (stdenv.hostPlatform.isLinux && rocksdb != null) ''
old_rpath="$(patchelf --print-rpath $out/bin/conduwuit)"
old_rpath="$(patchelf --print-rpath $out/bin/continuwuity)"
extra_rpath="${
lib.makeLibraryPath [
rocksdb
]
}"
patchelf --set-rpath "$old_rpath:$extra_rpath" $out/bin/conduwuit
patchelf --set-rpath "$old_rpath:$extra_rpath" $out/bin/continuwuity
'';
meta = {
description = "A community-driven Matrix homeserver in Rust";
mainProgram = "conduwuit";
mainProgram = "continuwuity";
platforms = lib.platforms.all;
maintainers = with lib.maintainers; [ quadradical ];
};
@@ -3,24 +3,23 @@ Description=Continuwuity - Matrix homeserver
Documentation=https://continuwuity.org/
Wants=network-online.target
After=network-online.target
Alias=matrix-conduwuit.service
[Service]
DynamicUser=yes
User=conduwuit
Group=conduwuit
User=continuwuity
Group=continuwuity
Type=notify-reload
ReloadSignal=SIGUSR1
Environment="CONTINUWUITY_LOG_TO_JOURNALD=true"
Environment="CONTINUWUITY_JOURNALD_IDENTIFIER=%N"
Environment="CONTINUWUITY_DATABASE_PATH=%S/conduwuit"
Environment="CONTINUWUITY_DATABASE_PATH=%S/continuwuity"
Environment="CONTINUWUITY_CONFIG_RELOAD_SIGNAL=true"
LoadCredential=conduwuit.toml:/etc/conduwuit/conduwuit.toml
LoadCredential=continuwuity.toml:/etc/continuwuity/continuwuity.toml
RefreshOnReload=yes
ExecStart=/usr/bin/conduwuit --config ${CREDENTIALS_DIRECTORY}/conduwuit.toml
ExecStart=/usr/bin/continuwuity --config ${CREDENTIALS_DIRECTORY}/continuwuity.toml
AmbientCapabilities=
CapabilityBoundingSet=
@@ -56,8 +55,8 @@ SystemCallErrorNumber=EPERM
# ConfigurationDirectory isn't specified here because it's created by
# the distro's package manager.
StateDirectory=conduwuit
RuntimeDirectory=conduwuit
StateDirectory=continuwuity
RuntimeDirectory=continuwuity
RuntimeDirectoryMode=0750
Restart=on-failure
@@ -71,3 +70,8 @@ StartLimitBurst=5
[Install]
WantedBy=multi-user.target
Alias=matrix-continuwuity.service
Alias=continuwuity.service
Alias=matrix-conduwuit.service
Alias=conduwuit.service
+3 -3
View File
@@ -28,13 +28,13 @@ See the [generic deployment guide](/deploying/generic.mdx) for additional inform
## Configuration
After installation, Continuwuity places the example configuration at `/etc/conduwuit/conduwuit.toml` as the default configuration file. The configuration file indicates which settings you must change before starting the service.
After installation, Continuwuity places the example configuration at `/etc/continuwuity/continuwuity.toml` as the default configuration file. The configuration file indicates which settings you must change before starting the service.
You can customize additional settings by uncommenting and modifying the configuration options in `/etc/conduwuit/conduwuit.toml`.
You can customize additional settings by uncommenting and modifying the configuration options in `/etc/continuwuity/continuwuity.toml`.
## Running
The package uses the `conduwuit.service` systemd unit file to start and stop Continuwuity. The binary installs at `/usr/bin/conduwuit`.
The package uses the `continuwuity.service` systemd unit file to start and stop Continuwuity. The binary installs at `/usr/bin/continuwuity`.
By default, this package assumes that Continuwuity runs behind a reverse proxy. The default configuration options apply (listening on `localhost` and TCP port `6167`). Matrix federation requires a valid domain name and TLS. To federate properly, you must set up TLS certificates and certificate renewal.
+3 -3
View File
@@ -6,13 +6,13 @@ set -e
#. /usr/share/debconf/confmodule
#
## Ask for the Matrix homeserver name, address and port.
#db_input high conduwuit/hostname || true
#db_input high continuwuity/hostname || true
#db_go
#
#db_input low conduwuit/address || true
#db_input low continuwuity/address || true
#db_go
#
#db_input medium conduwuit/port || true
#db_input medium continuwuity/port || true
#db_go
exit 0
+4 -4
View File
@@ -4,14 +4,14 @@ set -e
# TODO: implement debconf support that is maintainable without duplicating the config
#. /usr/share/debconf/confmodule
CONDUWUIT_DATABASE_PATH=/var/lib/conduwuit
CONDUWUIT_CONFIG_PATH=/etc/conduwuit
CONTINUWUITY_DATABASE_PATH=/var/lib/continuwuity
CONTINUWUITY_CONFIG_PATH=/etc/continuwuity
case "$1" in
configure)
echo ''
echo 'Make sure you edit the example config at /etc/conduwuit/conduwuit.toml before starting!'
echo 'To start the server, run: systemctl start conduwuit.service'
echo 'Make sure you edit the example config at /etc/continuwuity/continuwuity.toml before starting!'
echo 'To start the server, run: systemctl start continuwuity.service'
echo ''
;;
+9 -9
View File
@@ -3,9 +3,9 @@ set -e
#. /usr/share/debconf/confmodule
CONDUWUIT_CONFIG_PATH=/etc/conduwuit
CONDUWUIT_DATABASE_PATH=/var/lib/conduwuit
CONDUWUIT_DATABASE_PATH_SYMLINK=/var/lib/matrix-conduit
CONTINUWUITY_CONFIG_PATH=/etc/continuwuity
CONTINUWUITY_DATABASE_PATH=/var/lib/continuwuity
CONTINUWUITY_DATABASE_PATH_SYMLINK=/var/lib/matrix-conduit
case $1 in
purge)
@@ -18,17 +18,17 @@ case $1 in
#
if [ -d "$CONDUWUIT_CONFIG_PATH" ]; then
if test -L "$CONDUWUIT_CONFIG_PATH"; then
if [ -d "$CONTINUWUITY_CONFIG_PATH" ]; then
if test -L "$CONTINUWUITY_CONFIG_PATH"; then
echo "Deleting continuwuity configuration files"
rm -v -r "$CONDUWUIT_CONFIG_PATH"
rm -v -r "$CONTINUWUITY_CONFIG_PATH"
fi
fi
if [ -d "$CONDUWUIT_DATABASE_PATH" ]; then
if test -L "$CONDUWUIT_DATABASE_PATH"; then
if [ -d "$CONTINUWUITY_DATABASE_PATH" ]; then
if test -L "$CONTINUWUITY_DATABASE_PATH"; then
echo "Deleting continuwuity database directory"
rm -r "$CONDUWUIT_DATABASE_PATH"
rm -r "$CONTINUWUITY_DATABASE_PATH"
fi
fi
+11 -11
View File
@@ -23,7 +23,7 @@ Requires: glibc
Requires: libstdc++
%global _description %{expand:
A Matrix homeserver written in Rust, the official continuation of the conduwuit homeserver.}
A community-driven Matrix homeserver.}
%description %{_description}
@@ -49,9 +49,9 @@ find .cargo/registry/ -executable -name "*.rs" -exec chmod -x {} +
# {cargo_license -- --no-dev} > LICENSE.dependencies
%install
install -Dpm0755 target/rpm/conduwuit -t %{buildroot}%{_bindir}
install -Dpm0644 pkg/conduwuit.service -t %{buildroot}%{_unitdir}
install -Dpm0600 conduwuit-example.toml %{buildroot}%{_sysconfdir}/conduwuit/conduwuit.toml
install -Dpm0755 target/rpm/continuwuity -t %{buildroot}%{_bindir}
install -Dpm0644 pkg/continuwuity.service -t %{buildroot}%{_unitdir}
install -Dpm0600 continuwuity-example.toml %{buildroot}%{_sysconfdir}/continuwuity/continuwuity.toml
%files
%license LICENSE
@@ -60,20 +60,20 @@ install -Dpm0600 conduwuit-example.toml %{buildroot}%{_sysconfdir}/conduwuit/con
%doc CONTRIBUTING.md
%doc README.md
%doc SECURITY.md
%config(noreplace) %{_sysconfdir}/conduwuit/conduwuit.toml
%config(noreplace) %{_sysconfdir}/continuwuity/continuwuity.toml
%{_bindir}/conduwuit
%{_unitdir}/conduwuit.service
# Do not create /var/lib/conduwuit, systemd will create it if necessary
%{_bindir}/continuwuity
%{_unitdir}/continuwuity.service
# Do not create /var/lib/continuwuity, systemd will create it if necessary
%post
%systemd_post conduwuit.service
%systemd_post continuwuity.service
%preun
%systemd_preun conduwuit.service
%systemd_preun continuwuity.service
%postun
%systemd_postun_with_restart conduwuit.service
%systemd_postun_with_restart continuwuity.service
%changelog
{{{ git_repo_changelog }}}
+39 -39
View File
@@ -1,5 +1,5 @@
[package]
name = "conduwuit_admin"
name = "continuwuity_admin"
description.workspace = true
edition.workspace = true
homepage.workspace = true
@@ -17,68 +17,68 @@ crate-type = [
[features]
brotli_compression = [
"conduwuit-api/brotli_compression",
"conduwuit-core/brotli_compression",
"conduwuit-service/brotli_compression",
"continuwuity-api/brotli_compression",
"continuwuity-core/brotli_compression",
"continuwuity-service/brotli_compression",
]
gzip_compression = [
"conduwuit-api/gzip_compression",
"conduwuit-core/gzip_compression",
"conduwuit-service/gzip_compression",
"continuwuity-api/gzip_compression",
"continuwuity-core/gzip_compression",
"continuwuity-service/gzip_compression",
]
io_uring = [
"conduwuit-api/io_uring",
"conduwuit-database/io_uring",
"conduwuit-service/io_uring",
"continuwuity-api/io_uring",
"continuwuity-database/io_uring",
"continuwuity-service/io_uring",
]
jemalloc = [
"conduwuit-api/jemalloc",
"conduwuit-core/jemalloc",
"conduwuit-database/jemalloc",
"conduwuit-service/jemalloc",
"continuwuity-api/jemalloc",
"continuwuity-core/jemalloc",
"continuwuity-database/jemalloc",
"continuwuity-service/jemalloc",
]
jemalloc_conf = [
"conduwuit-api/jemalloc_conf",
"conduwuit-core/jemalloc_conf",
"conduwuit-database/jemalloc_conf",
"conduwuit-service/jemalloc_conf",
"continuwuity-api/jemalloc_conf",
"continuwuity-core/jemalloc_conf",
"continuwuity-database/jemalloc_conf",
"continuwuity-service/jemalloc_conf",
]
jemalloc_prof = [
"conduwuit-api/jemalloc_prof",
"conduwuit-core/jemalloc_prof",
"conduwuit-database/jemalloc_prof",
"conduwuit-service/jemalloc_prof",
"continuwuity-api/jemalloc_prof",
"continuwuity-core/jemalloc_prof",
"continuwuity-database/jemalloc_prof",
"continuwuity-service/jemalloc_prof",
]
jemalloc_stats = [
"conduwuit-api/jemalloc_stats",
"conduwuit-core/jemalloc_stats",
"conduwuit-database/jemalloc_stats",
"conduwuit-service/jemalloc_stats",
"continuwuity-api/jemalloc_stats",
"continuwuity-core/jemalloc_stats",
"continuwuity-database/jemalloc_stats",
"continuwuity-service/jemalloc_stats",
]
release_max_log_level = [
"conduwuit-api/release_max_log_level",
"conduwuit-core/release_max_log_level",
"conduwuit-database/release_max_log_level",
"conduwuit-service/release_max_log_level",
"continuwuity-api/release_max_log_level",
"continuwuity-core/release_max_log_level",
"continuwuity-database/release_max_log_level",
"continuwuity-service/release_max_log_level",
"tracing/max_level_trace",
"tracing/release_max_level_info",
"log/max_level_trace",
"log/release_max_level_info",
]
zstd_compression = [
"conduwuit-api/zstd_compression",
"conduwuit-core/zstd_compression",
"conduwuit-database/zstd_compression",
"conduwuit-service/zstd_compression",
"continuwuity-api/zstd_compression",
"continuwuity-core/zstd_compression",
"continuwuity-database/zstd_compression",
"continuwuity-service/zstd_compression",
]
[dependencies]
clap.workspace = true
conduwuit-api.workspace = true
conduwuit-core.workspace = true
conduwuit-database.workspace = true
conduwuit-macros.workspace = true
conduwuit-service.workspace = true
continuwuity-api.workspace = true
continuwuity-core.workspace = true
continuwuity-database.workspace = true
continuwuity-macros.workspace = true
continuwuity-service.workspace = true
const-str.workspace = true
ctor.workspace = true
dtor.workspace = true
+2 -2
View File
@@ -1,5 +1,5 @@
use clap::Parser;
use conduwuit::{Err, Result};
use continuwuity::{Err, Result};
use crate::{
appservice::{self, AppserviceCommand},
@@ -17,7 +17,7 @@ use crate::{
};
#[derive(Debug, Parser)]
#[command(name = conduwuit_core::BRANDING, version = conduwuit_core::version())]
#[command(name = continuwuity_core::BRANDING, version = continuwuity_core::version())]
pub enum AdminCommand {
/// Commands for managing appservices
#[command(subcommand)]
+1 -1
View File
@@ -1,4 +1,4 @@
use conduwuit::{Err, Result, checked};
use continuwuity::{Err, Result, checked};
use futures::{FutureExt, StreamExt, TryFutureExt};
impl crate::Context<'_> {
+1 -1
View File
@@ -1,7 +1,7 @@
mod commands;
use clap::Subcommand;
use conduwuit::Result;
use continuwuity::Result;
use crate::admin_command_dispatch;
+1 -1
View File
@@ -1,4 +1,4 @@
use conduwuit::Result;
use continuwuity::Result;
use futures::StreamExt;
use crate::Context;
+1 -1
View File
@@ -1,7 +1,7 @@
mod commands;
use clap::Subcommand;
use conduwuit::Result;
use continuwuity::Result;
use crate::admin_command_dispatch;
+2 -2
View File
@@ -1,7 +1,7 @@
use std::{fmt, time::SystemTime};
use conduwuit::{Err, Result};
use conduwuit_service::Services;
use continuwuity::{Err, Result};
use continuwuity_service::Services;
use futures::{
Future, FutureExt, TryFutureExt,
io::{AsyncWriteExt, BufWriter},
+4 -4
View File
@@ -5,7 +5,7 @@ use std::{
time::{Instant, SystemTime},
};
use conduwuit::{
use continuwuity::{
Err, Result, at, debug_error, err, info,
matrix::{
Event, StateKey,
@@ -539,7 +539,7 @@ impl crate::Context<'_> {
let mut pdus: HashMap<(StateEventType, StateKey), CanonicalJsonObject> = state_ids
.iter()
.try_stream::<conduwuit::Error>()
.try_stream::<continuwuity::Error>()
.and_then(|id| async {
let pdu_json = self.services.rooms.timeline.get_pdu_json(id).await?;
let event_type = pdu_json
@@ -1017,7 +1017,7 @@ impl crate::Context<'_> {
})
.collect();
let stats = conduwuit::alloc::memory_stats(&opts).unwrap_or_default();
let stats = continuwuity::alloc::memory_stats(&opts).unwrap_or_default();
self.write_str("```\n").await?;
self.write_str(&stats).await?;
@@ -1123,7 +1123,7 @@ impl crate::Context<'_> {
}
pub(super) async fn trim_memory(&self) -> Result {
conduwuit::alloc::trim(None)?;
continuwuity::alloc::trim(None)?;
writeln!(self, "done").await
}
+1 -1
View File
@@ -2,7 +2,7 @@ mod commands;
pub(crate) mod tester;
use clap::Subcommand;
use conduwuit::Result;
use continuwuity::Result;
use ruma::{OwnedEventId, OwnedRoomId, OwnedRoomOrAliasId, OwnedServerName};
use service::rooms::short::{ShortEventId, ShortRoomId};
+1 -1
View File
@@ -1,4 +1,4 @@
use conduwuit::{Err, Result};
use continuwuity::{Err, Result};
use crate::admin_command_dispatch;
+1 -1
View File
@@ -1,6 +1,6 @@
use std::fmt::Write;
use conduwuit::{Err, Result, utils::response::LimitReadExt};
use continuwuity::{Err, Result, utils::response::LimitReadExt};
use futures::StreamExt;
use ruma::{MilliSecondsSinceUnixEpoch, OwnedRoomId, OwnedServerName, OwnedUserId};
+1 -1
View File
@@ -1,7 +1,7 @@
mod commands;
use clap::Subcommand;
use conduwuit::Result;
use continuwuity::Result;
use ruma::{OwnedRoomId, OwnedServerName, OwnedUserId};
use crate::admin_command_dispatch;
+2 -2
View File
@@ -1,11 +1,11 @@
use std::time::Duration;
use conduwuit::{
use continuwuity::{
Err, Result, debug, debug_info, debug_warn, error, info, trace,
utils::time::{TimeDirection, parse_timepoint_ago},
warn,
};
use conduwuit_service::media::Dim;
use continuwuity_service::media::Dim;
use ruma::{OwnedEventId, OwnedMxcUri, OwnedServerName};
use service::media::mxc::Mxc;
+1 -1
View File
@@ -2,7 +2,7 @@
mod commands;
use clap::Subcommand;
use conduwuit::Result;
use continuwuity::Result;
use ruma::{OwnedEventId, OwnedMxcUri, OwnedServerName};
use crate::admin_command_dispatch;
+7 -7
View File
@@ -3,7 +3,7 @@
#![allow(clippy::enum_glob_use)]
#![allow(clippy::too_many_arguments)]
conduwuit_macros::introspect_crate! {}
continuwuity_macros::introspect_crate! {}
pub(crate) mod admin;
pub(crate) mod context;
@@ -23,18 +23,18 @@ pub(crate) mod server;
pub(crate) mod token;
pub(crate) mod user;
extern crate conduwuit_api as api;
extern crate conduwuit_core as conduwuit;
extern crate conduwuit_service as service;
extern crate continuwuity_api as api;
extern crate continuwuity_core as continuwuity;
extern crate continuwuity_service as service;
pub(crate) use conduwuit_macros::admin_command_dispatch;
pub(crate) use continuwuity_macros::admin_command_dispatch;
pub(crate) use crate::{context::Context, utils::get_room_info};
pub(crate) const PAGE_SIZE: usize = 100;
conduwuit::mod_ctor! {}
conduwuit::mod_dtor! {}
continuwuity::mod_ctor! {}
continuwuity::mod_dtor! {}
pub use crate::admin::AdminCommand;
+1 -1
View File
@@ -1,4 +1,4 @@
use conduwuit::Result;
use continuwuity::Result;
use crate::utils::parse_active_local_user_id;
+2 -2
View File
@@ -1,8 +1,8 @@
mod commands;
use clap::Subcommand;
use conduwuit::Result;
use conduwuit_macros::admin_command_dispatch;
use continuwuity::Result;
use continuwuity_macros::admin_command_dispatch;
#[admin_command_dispatch]
#[derive(Debug, Subcommand)]
+1 -1
View File
@@ -1,7 +1,7 @@
use std::{fmt::Write, mem::take, panic::AssertUnwindSafe, sync::Arc, time::SystemTime};
use clap::{CommandFactory, Parser};
use conduwuit::{
use continuwuity::{
Error, Result, SyncMutex, debug, error,
log::{
capture,
+2 -2
View File
@@ -1,6 +1,6 @@
use clap::Subcommand;
use conduwuit::Result;
use conduwuit_database::Deserialized as _;
use continuwuity::Result;
use continuwuity_database::Deserialized as _;
use futures::StreamExt;
use ruma::{OwnedRoomId, OwnedUserId, exports::serde::Serialize};
+1 -1
View File
@@ -1,5 +1,5 @@
use clap::Subcommand;
use conduwuit::Result;
use continuwuity::Result;
use futures::TryStreamExt;
use crate::Context;
+1 -1
View File
@@ -1,5 +1,5 @@
use clap::Subcommand;
use conduwuit::Result;
use continuwuity::Result;
use crate::Context;
+1 -1
View File
@@ -13,7 +13,7 @@ mod short;
mod users;
use clap::Subcommand;
use conduwuit::Result;
use continuwuity::Result;
use self::{
account_data::AccountDataCommand, appservice::AppserviceCommand, globals::GlobalsCommand,
+1 -1
View File
@@ -1,5 +1,5 @@
use clap::Subcommand;
use conduwuit::Result;
use continuwuity::Result;
use futures::StreamExt;
use ruma::OwnedUserId;
+1 -1
View File
@@ -1,5 +1,5 @@
use clap::Subcommand;
use conduwuit::{
use continuwuity::{
Result,
utils::{IterStream, stream::BroadbandExt},
};
+5 -5
View File
@@ -1,15 +1,15 @@
use std::{borrow::Cow, collections::BTreeMap, ops::Deref, sync::Arc};
use clap::Subcommand;
use conduwuit::{
use continuwuity::{
Err, Result, apply, at, is_zero,
utils::{
stream::{IterStream, ReadyExt, TryIgnore, TryParallelExt},
string::EMPTY,
},
};
use conduwuit_database::Map;
use conduwuit_service::Services;
use continuwuity_database::Map;
use continuwuity_service::Services;
use futures::{FutureExt, Stream, StreamExt, TryStreamExt};
use tokio::time::Instant;
@@ -170,7 +170,7 @@ impl crate::Context<'_> {
parallelism: Option<usize>,
exhaustive: bool,
) -> Result {
use conduwuit_database::compact::Options;
use continuwuity_database::compact::Options;
let default_all_maps: Option<_> = map.is_none().then(|| {
self.services
@@ -209,7 +209,7 @@ impl crate::Context<'_> {
let parallelism = parallelism.unwrap_or(1);
let results = maps
.into_iter()
.try_stream::<conduwuit::Error>()
.try_stream::<continuwuity::Error>()
.paralleln_and_then(runtime, parallelism, move |map| {
map.compact_blocking(options.clone())?;
Ok(map.name().to_owned())
+1 -1
View File
@@ -1,5 +1,5 @@
use clap::Subcommand;
use conduwuit::{Err, Result, utils::time};
use continuwuity::{Err, Result, utils::time};
use resolvematrix::resolution::Resolution;
use ruma::OwnedServerName;
+1 -1
View File
@@ -1,5 +1,5 @@
use clap::Subcommand;
use conduwuit::Result;
use continuwuity::Result;
use futures::StreamExt;
use ruma::{OwnedRoomAliasId, OwnedRoomId};
+1 -1
View File
@@ -1,5 +1,5 @@
use clap::Subcommand;
use conduwuit::Result;
use continuwuity::Result;
use futures::StreamExt;
use ruma::{OwnedRoomId, OwnedServerName, OwnedUserId};
+1 -1
View File
@@ -1,5 +1,5 @@
use clap::Subcommand;
use conduwuit::{PduCount, Result, utils::stream::TryTools};
use continuwuity::{PduCount, Result, utils::stream::TryTools};
use futures::TryStreamExt;
use ruma::OwnedRoomOrAliasId;
+1 -1
View File
@@ -1,5 +1,5 @@
use clap::Subcommand;
use conduwuit::{Err, Result};
use continuwuity::{Err, Result};
use futures::StreamExt;
use ruma::{OwnedServerName, OwnedUserId};
use service::sending::Destination;
+1 -1
View File
@@ -1,5 +1,5 @@
use clap::Subcommand;
use conduwuit::Result;
use continuwuity::Result;
use ruma::{OwnedEventId, OwnedRoomOrAliasId};
use crate::admin_command_dispatch;
+1 -1
View File
@@ -1,5 +1,5 @@
use clap::Subcommand;
use conduwuit::Result;
use continuwuity::Result;
use futures::stream::StreamExt;
use ruma::{OwnedDeviceId, OwnedRoomId, OwnedUserId};
+1 -1
View File
@@ -1,7 +1,7 @@
use std::fmt::Write;
use clap::Subcommand;
use conduwuit::{Err, Result};
use continuwuity::{Err, Result};
use futures::StreamExt;
use ruma::{OwnedRoomAliasId, OwnedRoomId, RoomAliasId};
+1 -1
View File
@@ -1,4 +1,4 @@
use conduwuit::{Err, Result};
use continuwuity::{Err, Result};
use futures::StreamExt;
use ruma::OwnedRoomId;
+1 -1
View File
@@ -1,5 +1,5 @@
use clap::Subcommand;
use conduwuit::{Err, Result};
use continuwuity::{Err, Result};
use futures::StreamExt;
use ruma::OwnedRoomId;
+1 -1
View File
@@ -1,5 +1,5 @@
use clap::Subcommand;
use conduwuit::{Err, Result, utils::ReadyExt};
use continuwuity::{Err, Result, utils::ReadyExt};
use futures::StreamExt;
use ruma::OwnedRoomId;
+1 -1
View File
@@ -5,7 +5,7 @@ mod info;
mod moderation;
use clap::Subcommand;
use conduwuit::Result;
use continuwuity::Result;
use ruma::OwnedRoomId;
use self::{
+1 -1
View File
@@ -1,6 +1,6 @@
use api::client::leave_room;
use clap::Subcommand;
use conduwuit::{
use continuwuity::{
Err, Result, debug, info,
utils::{IterStream, ReadyExt},
warn,
+10 -10
View File
@@ -1,6 +1,6 @@
use std::{fmt::Write, path::PathBuf, sync::Arc};
use conduwuit::{
use continuwuity::{
Err, Result,
utils::{stream::IterStream, time},
warn,
@@ -59,7 +59,7 @@ impl crate::Context<'_> {
pub(super) async fn memory_usage(&self) -> Result {
let services_usage = self.services.memory_usage().await?;
let database_usage = self.services.db.db.memory_usage()?;
let allocator_usage = conduwuit::alloc::memory_usage()
let allocator_usage = continuwuity::alloc::memory_usage()
.map_or(String::new(), |s| format!("\nAllocator:\n{s}"));
self.write_str(&format!(
@@ -120,7 +120,7 @@ impl crate::Context<'_> {
#[cfg(unix)]
pub(super) async fn restart(&self, force: bool) -> Result {
use conduwuit::utils::sys::current_exe_deleted;
use continuwuity::utils::sys::current_exe_deleted;
if !force && current_exe_deleted() {
return Err!(
@@ -144,7 +144,7 @@ impl crate::Context<'_> {
}
pub(super) async fn list_features(&self) -> Result {
let mut enabled_features = conduwuit::info::introspection::ENABLED_FEATURES
let mut enabled_features = continuwuity::info::introspection::ENABLED_FEATURES
.lock()
.expect("locked")
.values()
@@ -154,7 +154,7 @@ impl crate::Context<'_> {
enabled_features.sort_unstable();
enabled_features.dedup();
let mut available_features = conduwuit::build_metadata::WORKSPACE_FEATURES
let mut available_features = continuwuity::build_metadata::WORKSPACE_FEATURES
.iter()
.flat_map(|(_, f)| f.iter())
.collect::<Vec<_>>();
@@ -175,7 +175,7 @@ impl crate::Context<'_> {
}
pub(super) async fn build_info(&self) -> Result {
use conduwuit::build_metadata::built;
use continuwuity::build_metadata::built;
let mut info = String::new();
@@ -187,16 +187,16 @@ impl crate::Context<'_> {
// Git information
writeln!(info, "\n## Git Information\n")?;
if let Some(hash) = conduwuit::build_metadata::GIT_COMMIT_HASH {
if let Some(hash) = continuwuity::build_metadata::GIT_COMMIT_HASH {
writeln!(info, "**Commit Hash:** {hash}")?;
}
if let Some(hash) = conduwuit::build_metadata::GIT_COMMIT_HASH_SHORT {
if let Some(hash) = continuwuity::build_metadata::GIT_COMMIT_HASH_SHORT {
writeln!(info, "**Commit Hash (short):** {hash}")?;
}
if let Some(url) = conduwuit::build_metadata::GIT_REMOTE_WEB_URL {
if let Some(url) = continuwuity::build_metadata::GIT_REMOTE_WEB_URL {
writeln!(info, "**Repository:** {url}")?;
}
if let Some(url) = conduwuit::build_metadata::GIT_REMOTE_COMMIT_URL {
if let Some(url) = continuwuity::build_metadata::GIT_REMOTE_COMMIT_URL {
writeln!(info, "**Commit URL:** {url}")?;
}
+1 -1
View File
@@ -3,7 +3,7 @@ mod commands;
use std::path::PathBuf;
use clap::Subcommand;
use conduwuit::Result;
use continuwuity::Result;
use crate::admin_command_dispatch;
+2 -2
View File
@@ -1,4 +1,4 @@
use conduwuit::{Err, Result, utils};
use continuwuity::{Err, Result, utils};
use futures::StreamExt;
use service::registration_tokens::TokenExpires;
@@ -57,7 +57,7 @@ impl crate::Context<'_> {
.get_client_domain()
.join(&format!(
"{}/account/register/?flow=trusted&token={token}",
conduwuit::ROUTE_PREFIX
continuwuity::ROUTE_PREFIX
))
.unwrap()
))
+1 -1
View File
@@ -1,7 +1,7 @@
mod commands;
use clap::{Args, Subcommand};
use conduwuit::Result;
use continuwuity::Result;
use crate::admin_command_dispatch;
+1 -1
View File
@@ -3,7 +3,7 @@ use std::collections::{BTreeMap, HashSet};
use api::client::{
full_user_deactivate, leave_room, recreate_push_rules_and_return, remote_leave_room,
};
use conduwuit::{
use continuwuity::{
Err, Result, debug_warn, info,
matrix::{Event, pdu::PartialPdu},
utils::{self, ReadyExt},
+1 -1
View File
@@ -1,7 +1,7 @@
mod commands;
use clap::Subcommand;
use conduwuit::Result;
use continuwuity::Result;
use ruma::{OwnedEventId, OwnedRoomId, OwnedRoomOrAliasId};
use crate::admin_command_dispatch;
+1 -1
View File
@@ -1,6 +1,6 @@
#![allow(dead_code)]
use conduwuit_core::{Err, Result, err};
use continuwuity_core::{Err, Result, err};
use ruma::{OwnedRoomId, OwnedUserId, RoomId, UserId};
use service::Services;
+22 -22
View File
@@ -1,5 +1,5 @@
[package]
name = "conduwuit_api"
name = "continuwuity_api"
description.workspace = true
edition.workspace = true
homepage.workspace = true
@@ -17,48 +17,48 @@ crate-type = [
[features]
brotli_compression = [
"conduwuit-core/brotli_compression",
"conduwuit-service/brotli_compression",
"continuwuity-core/brotli_compression",
"continuwuity-service/brotli_compression",
"reqwest/brotli",
]
element_hacks = [
"conduwuit-service/element_hacks",
"continuwuity-service/element_hacks",
]
gzip_compression = [
"conduwuit-core/gzip_compression",
"conduwuit-service/gzip_compression",
"continuwuity-core/gzip_compression",
"continuwuity-service/gzip_compression",
"reqwest/gzip",
]
io_uring = [
"conduwuit-service/io_uring",
"continuwuity-service/io_uring",
]
jemalloc = [
"conduwuit-core/jemalloc",
"conduwuit-service/jemalloc",
"continuwuity-core/jemalloc",
"continuwuity-service/jemalloc",
]
jemalloc_conf = [
"conduwuit-core/jemalloc_conf",
"conduwuit-service/jemalloc_conf",
"continuwuity-core/jemalloc_conf",
"continuwuity-service/jemalloc_conf",
]
jemalloc_prof = [
"conduwuit-core/jemalloc_prof",
"conduwuit-service/jemalloc_prof",
"continuwuity-core/jemalloc_prof",
"continuwuity-service/jemalloc_prof",
]
jemalloc_stats = [
"conduwuit-core/jemalloc_stats",
"conduwuit-service/jemalloc_stats",
"continuwuity-core/jemalloc_stats",
"continuwuity-service/jemalloc_stats",
]
release_max_log_level = [
"conduwuit-core/release_max_log_level",
"conduwuit-service/release_max_log_level",
"continuwuity-core/release_max_log_level",
"continuwuity-service/release_max_log_level",
"log/max_level_trace",
"log/release_max_level_info",
"tracing/max_level_trace",
"tracing/release_max_level_info",
]
zstd_compression = [
"conduwuit-core/zstd_compression",
"conduwuit-service/zstd_compression",
"continuwuity-core/zstd_compression",
"continuwuity-service/zstd_compression",
"reqwest/zstd",
]
@@ -67,9 +67,9 @@ axum.workspace = true
base64.workspace = true
bytes.workspace = true
client-ip.workspace = true
conduwuit-core.workspace = true
conduwuit-macros.workspace = true
conduwuit-service.workspace = true
continuwuity-core.workspace = true
continuwuity-macros.workspace = true
continuwuity-service.workspace = true
const-str.workspace = true
ctor.workspace = true
dtor.workspace = true
+1 -1
View File
@@ -1,5 +1,5 @@
use axum::extract::State;
use conduwuit::{Err, Result, info, utils::ReadyExt, warn};
use continuwuity::{Err, Result, info, utils::ReadyExt, warn};
use futures::{FutureExt, StreamExt};
use ruma::{OwnedRoomAliasId, events::room::message::RoomMessageEventContent};
use ruminuwuity::admin::continuwuity::rooms;
+1 -1
View File
@@ -1,5 +1,5 @@
use axum::extract::State;
use conduwuit::{Err, Result};
use continuwuity::{Err, Result};
use futures::StreamExt;
use ruma::OwnedRoomId;
use ruminuwuity::admin::continuwuity::rooms;
+2 -2
View File
@@ -1,10 +1,10 @@
use axum::extract::State;
use conduwuit::{
use continuwuity::{
Err, Result, err, info,
pdu::PartialPdu,
utils::{ReadyExt, stream::BroadbandExt},
};
use conduwuit_service::Services;
use continuwuity_service::Services;
use futures::{FutureExt, StreamExt};
use lettre::{Address, message::Mailbox};
use ruma::{
+2 -2
View File
@@ -1,8 +1,8 @@
use std::collections::HashMap;
use axum::extract::State;
use conduwuit::{Err, Result, info};
use conduwuit_service::Services;
use continuwuity::{Err, Result, info};
use continuwuity_service::Services;
use futures::StreamExt;
use lettre::{Address, message::Mailbox};
use ruma::{
+1 -1
View File
@@ -1,7 +1,7 @@
use std::time::SystemTime;
use axum::extract::State;
use conduwuit::{Err, Result, err};
use continuwuity::{Err, Result, err};
use lettre::{Address, message::Mailbox};
use ruma::{
MilliSecondsSinceUnixEpoch,
+2 -2
View File
@@ -1,6 +1,6 @@
use axum::extract::State;
use conduwuit::{Err, Result, err};
use conduwuit_service::Services;
use continuwuity::{Err, Result, err};
use continuwuity_service::Services;
use ruma::{
RoomId, UserId,
api::client::config::{
+1 -1
View File
@@ -1,5 +1,5 @@
use axum::extract::State;
use conduwuit::{Err, Result};
use continuwuity::{Err, Result};
use ruma::api::client::admin::{is_user_locked, lock_user};
use crate::Ruma;
Loaded 100 of 430 files, more files were not shown because too many files have changed in this diff. Show more