Update system packages
Install system dependencies
Create the Pleroma user
For security reasons, it’s best to run Rebased as a separate user with limited access.
We’ll create this user and call it pleroma:
Install Rebased
It’s time to install Rebased, the backend for Soapbox. Let’s get things up and running.
Download the Rebased source code with git:
git clone -b develop https://gitlab.com/soapbox-pub/rebased /opt/pleroma
chown -R pleroma:pleroma /opt/pleroma
Enter the source code directory, and become the pleroma user:
Install Elixir
Install asdf:
Finally, install Erlang/Elixir:
Compiling Rebased
Install basic Elixir tools for compilation:
Fetch Elixir dependencies:
Finally, compile Soapbox:
Generate the configuration
It’s time to pre-configure our instance. The following command will set up some basics such as your domain name:
If you’re happy with it, rename the generated file so it gets loaded at runtime:
Exit back to the root user (for the remainder of this document):
Provision the database
The previous section also created a file called config/setup_db.psql, which you can use to create the database.
Execute the SQL file as the postgres user:
Now run the database migration as the pleroma user:
Start Rebased
Copy the systemd service and start Soapbox:
You’re very close to being done.
Getting Online
Requesting a Let’s Encrypt Certificate
Stop Nginx before requesting the certificate:
Use certbot to request a certificate with TLS SNI validation in standalone mode. Replace example.com with your domain name:
As Let’s Encrypt certificates have a validity of 90 days, a cron-job can be used to renew them and restart nginx automatically.
Create a new file and open it in a text editor like nano:
Copy the following content into the file, save it and exit nano:
Allow execution of the script and restart the cron daemon. It will run the script daily:
Configuring Nginx
Copy the example nginx configuration and activate it:
You must edit this file:
Change all occurrences of example.tld with your site’s domain name. Use Ctrl+X, Y, Enter to save.
Finally, enable and start nginx:
Install Soapbox
It’s finally time to install Soapbox itself! First, get the latest build.
Next, unzip it.
Post-installation
Below are some additional steps you can take after you’ve finished installation.
Create your first user
If your instance is up and running, you can create your first user with administrative rights with the following task:
To upgrade Rebased (the backend), shell into your server
Stop the Pleroma service as root
Go to the working directory of Pleroma
Pull in any new dependencies
This task performs database migrations, if there were any.
Exit to root
Start the Pleroma service
To upgrade Soapbox (frontend), shell into your server and run-run the install commands