diff options
Diffstat (limited to 'net-im/conduit')
-rw-r--r-- | net-im/conduit/conduit-0.5.0.ebuild | 36 | ||||
-rw-r--r-- | net-im/conduit/files/conduit.toml | 52 |
2 files changed, 80 insertions, 8 deletions
diff --git a/net-im/conduit/conduit-0.5.0.ebuild b/net-im/conduit/conduit-0.5.0.ebuild index d33bcac..7086084 100644 --- a/net-im/conduit/conduit-0.5.0.ebuild +++ b/net-im/conduit/conduit-0.5.0.ebuild @@ -705,15 +705,35 @@ src_unpack() { mv "heed-traits" "../heed-traits-0.7.0" || die mv "heed-types" "../heed-types-0.7.2" || die rm "Cargo.toml" || die -} -src_prepare() { - # Conduit uses custom forks or specific commits of Ruma, Reqwest and Heed - # Because of this, Cargo will try to fetch from online. Since we - # unpacked them in src_unpack, we update Cargo.toml to use those instead + # We also need to update Conduit's dependencies to let Cargo know + # that they are available in the local store and don't need to be + # fetched from their git repositoes + cd "${S}" || die sed -i -e 's/^heed.*/heed = \{ version = "0.10.6", optional = true \}/' Cargo.toml || die - sed -i -e 's/^reqwest.*/reqwest = { version = "0.11.9", features = \["rustls-tls-native-roots", "socks"\] }/' Cargo.toml || die - sed -i -e 's/^ruma.*/ruma ={ version = "0.7.4", features = \["compat", "rand", "appservice-api-c", "client-api", "federation-api", "push-gateway-api-c", "state-res", "unstable-msc2448", "unstable-exhaustive-types", "ring-compat", "unstable-unspecified" \] }/' Cargo.toml || die + REQWESTFEATURES="features = " + REQWESTFEATURES+="\[\"rustls-tls-native-roots\", \"socks\"\]" + sed -i -e "s/^reqwest.*/reqwest = { version = \"0.11.9\", ${REQWESTFEATURES} }/" Cargo.toml || die + RUMAFEATURES="features = \[" + RUMAFEATURES+="\"compat\", " + RUMAFEATURES+="\"rand\", " + RUMAFEATURES+="\"appservice-api-c\", " + RUMAFEATURES+="\"client-api\", " + RUMAFEATURES+="\"federation-api\", " + RUMAFEATURES+="\"push-gateway-api-c\", " + RUMAFEATURES+="\"state-res\", " + RUMAFEATURES+="\"unstable-msc2448\", " + RUMAFEATURES+="\"unstable-exhaustive-types\", " + RUMAFEATURES+="\"ring-compat\", " + RUMAFEATURES+="\"unstable-unspecified\"" + RUMAFEATURES+="\]" + sed -i -e "s/^ruma.*/ruma = { version = \"0.7.4\", ${RUMAFEATURES} }/" Cargo.toml || die +} + +src_install() { + cargo_src_install - default + dodir "/etc/conduit" + insinto "/etc/conduit" + doins "${FILESDIR}/conduit.toml" } diff --git a/net-im/conduit/files/conduit.toml b/net-im/conduit/files/conduit.toml new file mode 100644 index 0000000..0549030 --- /dev/null +++ b/net-im/conduit/files/conduit.toml @@ -0,0 +1,52 @@ +# ============================================================================= +# This is the official example config for Conduit. +# If you use it for your server, you will need to adjust it to your own needs. +# At the very least, change the server_name field! +# ============================================================================= + + +[global] +# The server_name is the pretty name of this server. It is used as a suffix for user +# and room ids. Examples: matrix.org, conduit.rs + +# The Conduit server needs all /_matrix/ requests to be reachable at +# https://your.server.name/ on port 443 (client-server) and 8448 (federation). + +# If that's not possible for you, you can create /.well-known files to redirect +# requests. See +# https://matrix.org/docs/spec/client_server/latest#get-well-known-matrix-client +# and +# https://matrix.org/docs/spec/server_server/r0.1.4#get-well-known-matrix-server +# for more information + +# YOU NEED TO EDIT THIS +#server_name = "your.server.name" + +# This is the only directory where Conduit will save its data +database_path = "/var/lib/matrix-conduit/" +database_backend = "rocksdb" + +# The port Conduit will be running on. You need to set up a reverse proxy in +# your web server (e.g. apache or nginx), so all requests to /_matrix on port +# 443 and 8448 will be forwarded to the Conduit instance running on this port +# Docker users: Don't change this, you'll need to map an external port to this. +port = 6167 + +# Max size for uploads +max_request_size = 20_000_000 # in bytes + +# Enables registration. If set to false, no users can register on this server. +allow_registration = true + +allow_federation = true + +# Enable the display name lightning bolt on registration. +enable_lightning_bolt = true + +trusted_servers = ["matrix.org"] + +#max_concurrent_requests = 100 # How many requests Conduit sends to other servers at the same time +#log = "warn,state_res=warn,rocket=off,_=off,sled=off" + +address = "127.0.0.1" # This makes sure Conduit can only be reached using the reverse proxy +#address = "0.0.0.0" # If Conduit is running in a container, make sure the reverse proxy (ie. Traefik) can reach it. |