From 1091c30845c8392ccaba038436aa21ad91e4354c Mon Sep 17 00:00:00 2001 From: strawberry <strawberry@puppygock.gay> Date: Sun, 28 Jul 2024 16:51:24 -0400 Subject: [PATCH] docs: mention FreeBSD specific build commandline for deployment Signed-off-by: strawberry <strawberry@puppygock.gay> --- docs/SUMMARY.md | 1 + docs/deploying/freebsd.md | 8 ++++++++ docs/deploying/generic.md | 6 ++---- 3 files changed, 11 insertions(+), 4 deletions(-) create mode 100644 docs/deploying/freebsd.md diff --git a/docs/SUMMARY.md b/docs/SUMMARY.md index ca0feeba0..5e4155c4f 100644 --- a/docs/SUMMARY.md +++ b/docs/SUMMARY.md @@ -10,6 +10,7 @@ # Summary - [Docker](deploying/docker.md) - [Arch Linux](deploying/arch-linux.md) - [Debian](deploying/debian.md) + - [FreeBSD](deploying/freebsd.md) - [TURN](turn.md) - [Appservices](appservices.md) - [Maintenance](maintenance.md) diff --git a/docs/deploying/freebsd.md b/docs/deploying/freebsd.md new file mode 100644 index 000000000..44a775667 --- /dev/null +++ b/docs/deploying/freebsd.md @@ -0,0 +1,8 @@ +# conduwuit for FreeBSD + +conduwuit at the moment does not provide FreeBSD builds. Building conduwuit on FreeBSD requires a specific environment variable to use the +system prebuilt RocksDB library instead of rust-rocksdb / rust-librocksdb-sys which does *not* work and will cause a build error or coredump. + +Use the following environment variable: `ROCKSDB_LIB_DIR=/usr/local/lib` + +Such example commandline with it can be: `ROCKSDB_LIB_DIR=/usr/local/lib cargo build --release` diff --git a/docs/deploying/generic.md b/docs/deploying/generic.md index 0cbd8ef85..180160285 100644 --- a/docs/deploying/generic.md +++ b/docs/deploying/generic.md @@ -9,14 +9,12 @@ ## Installing conduwuit You may simply download the binary that fits your machine. Run `uname -m` to see what you need. -Prebuilt binaries can be downloaded from the latest tagged release [here](https://github.com/girlbossceo/conduwuit/releases/latest). - -The latest tagged release also includes the Debian packages. +Prebuilt fully static musl binaries can be downloaded from the latest tagged release [here](https://github.com/girlbossceo/conduwuit/releases/latest) or `main` CI branch workflow artifact output. These also include Debian packages. These binaries have jemalloc and io_uring statically linked and included with them. Alternatively, you may compile the binary yourself. We recommend using [Lix](https://lix.systems) to build conduwuit as this has the most guaranteed reproducibiltiy and easiest to get a build environment and output going. -Otherwise, follow standard Rust project build guides (installing git and cloning the repo, getting the Rust toolchain via rustup, installing LLVM toolchain + libclang, installing liburing for io_uring and RocksDB, etc). +Otherwise, follow standard Rust project build guides (installing git and cloning the repo, getting the Rust toolchain via rustup, installing LLVM toolchain + libclang for RocksDB, installing liburing for io_uring and RocksDB, etc). ## Adding a conduwuit user -- GitLab