Installing SimpleX Chat on Debian Latest

SimpleX Chat is a web-based chat application that allows real-time communication between users. In order to install SimpleX Chat on Debian Latest, you need to follow the steps below.

Prerequisites

Before moving on with the installation, make sure you have the following prerequisites:

Step 1: Download SimpleX Chat

The first step is to download SimpleX Chat from its official GitHub repository by using the following command:

git clone https://github.com/simplex-chat/simplex-chat.git

Once the download is complete, move the downloaded directory to your web server's root directory.

cp -fr simplex-chat/* /var/www/html/

Step 2: Configure Apache

In this step, you need to create a virtual host for SimpleX Chat by creating a new configuration file in the Apache sites-available directory.

sudo nano /etc/apache2/sites-available/simplex-chat.conf

Paste the following lines in the configuration file:

<VirtualHost *:80>
    ServerAdmin admin@example.com
    DocumentRoot /var/www/html
    ServerName example.com
    ServerAlias www.example.com
    <Directory /var/www/html>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Require all granted
    </Directory>
    ErrorLog /var/log/apache2/simplex-chat-error.log
    LogLevel warn
    CustomLog /var/log/apache2/simplex-chat-access.log combined
</VirtualHost>

Save and exit the file by using Ctrl + X, Y, and Enter.

Next, disable the default Apache virtual host and enable the new SimpleX Chat virtual host using the following commands:

sudo a2dissite 000-default.conf
sudo a2ensite simplex-chat.conf
sudo systemctl reload apache2

Step 3: Create MySQL Database

SimpleX Chat requires a MySQL database to store its data. You can create a new MySQL database by using the following command:

mysql -u root -p

Enter your MySQL root password when prompted and then create a new database by using the following command:

CREATE DATABASE simplex_chat;

Create a new user for the SimpleX Chat database by using the following command. Replace your_user and your_password with your desired values.

CREATE USER 'your_user'@'localhost' IDENTIFIED BY 'your_password';

Grant all privileges to the newly created user for the SimpleX Chat database by using the following command:

GRANT ALL PRIVILEGES ON simplex_chat.* TO 'your_user'@'localhost';

Flush the privileges by using the following command:

FLUSH PRIVILEGES;

Exit MySQL by using the following command:

exit;

Step 4: Configure SimpleX Chat

Navigate to your web server's root directory and copy the config.php-dist file to config.php.

cd /var/www/html
cp config.php-dist config.php

Edit the new config.php file by using the following command:

nano config.php

Update the following values in the file with your MySQL database details and save the file:

define('DB_NAME', 'simplex_chat');
define('DB_USER', 'your_user');
define('DB_PASSWORD', 'your_password');
define('DB_HOST', 'localhost');

Finally, set the appropriate permissions for the files and uploads directories by using the following commands:

sudo chown -R www-data:www-data files uploads
sudo chmod -R 755 files uploads

Step 5: Access SimpleX Chat

Open your web browser and navigate to http://your-ip-address. SimpleX Chat should now be accessible and ready for use.

Congratulations, you have successfully installed SimpleX Chat on Debian Latest!

If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!