How would you like to own your own IM data while connected to the rest of the Internet chat community? A decentralised WhatsApp where no one entity owns all the chat data.

Enter Matrix (quote): An open network for secure, decentralized communication.

Installation

Installing on FreeBSD is a breeze. Simply install from ports. Synapse is the name of the server.

%cd /usr/ports/net-im/py-matrix-synapse
%sudo make install clean

::: warning Note Be prepared to answer a fair number of options as dependencies are installed. Do not walk away during compilation thinking it will all be done! :::

The following useful text shows up at the end of the installation.

Configuring Synapse:

You may use the sample config located at /usr/local/etc/matrix-synapse to get started. It
already is configured to find the configuration in that location and
places the database in /var/db/matrix-synapse and the logs in /var/log/matrix-synapse, but there
are some crucial values you will need to populate with unique data:
registration_shared_secret and macaroon_secret_key. Both of these
by default are 50 character random strings. These are by default set to
CHANGEME_50CHAR_RANDOM in the sample homeserver.yaml.

If you wish to have Synapse handle this for you including generation of
self-signed TLS certificates and dhparams you can use the following
command:

/usr/local/bin/python2.7 -B -m synapse.app.homeserver -c /usr/local/etc/matrix-synapse/homeserver.yaml --generate-config --server-name=example.com --report-stats=false

Please note that you will still need to manually configure paths to log
directory, database, and media storage with this method.

It is also important that you deploy a TLS certificate that your
clients accept as valid or some functionality will fail to work
correctly (eg, media file retrieval).

Note the following steps:

  1. The installation will not update /etc/rc.conf so you have to insert synapse_enable="YES" manually.
  2. Registration is disabled by defaut. RTFM for details.
  3. Start the server with sudo service synapse start

Testing

The quick way is to hit the built-in browser. It is said that the stock browser UI is not current; try the Riot.im mobile client to fully explore the features.

References