|
@@ -180,35 +180,41 @@ sudo zypper in python-pip python-setuptools sqlite3 python-virtualenv \
|
|
|
|
|
|
#### OpenBSD
|
|
|
|
|
|
-Installing prerequisites on OpenBSD:
|
|
|
+A port of Synapse is available under `net/synapse`. The filesystem
|
|
|
+underlying the homeserver directory (defaults to `/var/synapse`) has to be
|
|
|
+mounted with `wxallowed` (cf. `mount(8)`), so creating a separate filesystem
|
|
|
+and mounting it to `/var/synapse` should be taken into consideration.
|
|
|
+
|
|
|
+To be able to build Synapse's dependency on python the `WRKOBJDIR`
|
|
|
+(cf. `bsd.port.mk(5)`) for building python, too, needs to be on a filesystem
|
|
|
+mounted with `wxallowed` (cf. `mount(8)`).
|
|
|
+
|
|
|
+Creating a `WRKOBJDIR` for building python under `/usr/local` (which on a
|
|
|
+default OpenBSD installation is mounted with `wxallowed`):
|
|
|
|
|
|
```
|
|
|
-doas pkg_add python libffi py-pip py-setuptools sqlite3 py-virtualenv \
|
|
|
- libxslt jpeg
|
|
|
+doas mkdir /usr/local/pobj_wxallowed
|
|
|
```
|
|
|
|
|
|
-There is currently no port for OpenBSD. Additionally, OpenBSD's security
|
|
|
-settings require a slightly more difficult installation process.
|
|
|
+Assuming `PORTS_PRIVSEP=Yes` (cf. `bsd.port.mk(5)`) and `SUDO=doas` are
|
|
|
+configured in `/etc/mk.conf`:
|
|
|
+
|
|
|
+```
|
|
|
+doas chown _pbuild:_pbuild /usr/local/pobj_wxallowed
|
|
|
+```
|
|
|
|
|
|
-(XXX: I suspect this is out of date)
|
|
|
+Setting the `WRKOBJDIR` for building python:
|
|
|
|
|
|
-1. Create a new directory in `/usr/local` called `_synapse`. Also, create a
|
|
|
- new user called `_synapse` and set that directory as the new user's home.
|
|
|
- This is required because, by default, OpenBSD only allows binaries which need
|
|
|
- write and execute permissions on the same memory space to be run from
|
|
|
- `/usr/local`.
|
|
|
-2. `su` to the new `_synapse` user and change to their home directory.
|
|
|
-3. Create a new virtualenv: `virtualenv -p python3 ~/.synapse`
|
|
|
-4. Source the virtualenv configuration located at
|
|
|
- `/usr/local/_synapse/.synapse/bin/activate`. This is done in `ksh` by
|
|
|
- using the `.` command, rather than `bash`'s `source`.
|
|
|
-5. Optionally, use `pip` to install `lxml`, which Synapse needs to parse
|
|
|
- webpages for their titles.
|
|
|
-6. Use `pip` to install this repository: `pip install matrix-synapse`
|
|
|
-7. Optionally, change `_synapse`'s shell to `/bin/false` to reduce the
|
|
|
- chance of a compromised Synapse server being used to take over your box.
|
|
|
+```
|
|
|
+echo WRKOBJDIR_lang/python/3.7=/usr/local/pobj_wxallowed \\nWRKOBJDIR_lang/python/2.7=/usr/local/pobj_wxallowed >> /etc/mk.conf
|
|
|
+```
|
|
|
|
|
|
-After this, you may proceed with the rest of the install directions.
|
|
|
+Building Synapse:
|
|
|
+
|
|
|
+```
|
|
|
+cd /usr/ports/net/synapse
|
|
|
+make install
|
|
|
+```
|
|
|
|
|
|
#### Windows
|
|
|
|
|
@@ -350,6 +356,18 @@ Synapse can be installed via FreeBSD Ports or Packages contributed by Brendan Mo
|
|
|
- Ports: `cd /usr/ports/net-im/py-matrix-synapse && make install clean`
|
|
|
- Packages: `pkg install py37-matrix-synapse`
|
|
|
|
|
|
+### OpenBSD
|
|
|
+
|
|
|
+As of OpenBSD 6.7 Synapse is available as a pre-compiled binary. The filesystem
|
|
|
+underlying the homeserver directory (defaults to `/var/synapse`) has to be
|
|
|
+mounted with `wxallowed` (cf. `mount(8)`), so creating a separate filesystem
|
|
|
+and mounting it to `/var/synapse` should be taken into consideration.
|
|
|
+
|
|
|
+Installing Synapse:
|
|
|
+
|
|
|
+```
|
|
|
+doas pkg_add synapse
|
|
|
+```
|
|
|
|
|
|
### NixOS
|
|
|
|