summary refs log tree commit diff
diff options
context:
space:
mode:
authorWilliam Leuschner <wel2138@rit.edu>2016-12-05 14:16:39 -0500
committerWilliam Leuschner <wel2138@rit.edu>2016-12-05 14:16:39 -0500
commit12aefb9dfc3180c7bf2eb159cf96acaeff85ae5d (patch)
tree486769191f998fefd94f8c0f2f0931ea6c17a859
parentMerge pull request #653 from matrix-org/erikj/preset_guest_join (diff)
downloadsynapse-12aefb9dfc3180c7bf2eb159cf96acaeff85ae5d.tar.xz
Add README instructions for OpenBSD installation
Signed-off-by: William Leuschner <wel2138@rit.edu>
-rw-r--r--README.rst34
1 files changed, 34 insertions, 0 deletions
diff --git a/README.rst b/README.rst
index 6a22399e19..0809a2e8d9 100644
--- a/README.rst
+++ b/README.rst
@@ -131,6 +131,10 @@ Installing prerequisites on openSUSE::
     sudo zypper in python-pip python-setuptools sqlite3 python-virtualenv \
                    python-devel libffi-devel libopenssl-devel libjpeg62-devel
 
+Installing prerequisites on OpenBSD::
+    doas pkg_add python libffi py-pip py-setuptools sqlite3 py-virtualenv \
+                 libxslt
+
 To install the synapse homeserver run::
 
     virtualenv -p python2.7 ~/.synapse
@@ -364,6 +368,36 @@ Synapse can be installed via FreeBSD Ports or Packages contributed by Brendan Mo
  - Ports: ``cd /usr/ports/net/py-matrix-synapse && make install clean``
  - Packages: ``pkg install py27-matrix-synapse``
 
+
+OpenBSD
+-------
+
+There is currently no port for OpenBSD. Additionally, OpenBSD's security
+settings require a slightly more difficult installation process.
+
+1) Ensure that you have the Bourne Again Shell (``bash``) installed. The Korn
+   Shell (``ksh``), which is OpenBSD's default shell, does not support the
+   ``source`` command necessary to activate the python virtualenv to be set up
+   later.
+2) 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``.
+3) ``su`` to the new ``_synapse`` user and change to their home directory.
+4) Create a new virtualenv: ``virtualenv -p python2.7 ~/.synapse``
+5) Start a ``bash`` shell
+6) Source the virtualenv configuration located at
+   ``/usr/local/_synapse/.synapse/bin/activate``
+7) Optionally, use ``pip`` to install ``lxml``, which Synapse needs to parse
+   webpages for their titles.
+8) Use ``pip`` to install this repository: ``pip install
+   https://github.com/matrix-org/synapse/tarball/master``
+9) Optionally, change ``_synapse``'s shell to ``/bin/false`` to reduce the
+   chance of a compromised Synapse server being used to take over your box.
+
+After this, you may proceed with the rest of the install directions.
+
 NixOS
 -----