This document provides an example of how to install the ISSO commenting system on Debian 10 or Ubuntu 20.04 desktop. This package exists in apt, however, the problem is later python versions break ISSO. The syntax differences have been fixed in a later ISSO, so, we will setup outside of apt. ALl commands needing root privileges are prefixed with sudo, so, we are assuming you are not running as root here.
Create a user for running ISSO
For security and other purposes, we’ll make a user to run ISSO. We’ll disable login as well:
sudo adduser isso --disabled-login --disabled-password
Install packages that may be missing
Depending on which OS and which type of install you have, you may be missing some packages we’ll need.
sudo apt-get install python3-dev sqlite3 build-essential python3-pip
Install ISSO code
We’ll install using pip3 and as user isso we setup earlier. We don’t want to install as root!
sudo su - isso pip3 install isso
Setup the isso configuration
This step will involves you selecting the options you want to use. Use your favorite editor to create / edit isso.conf. So, for example:
I can’t tell you exactly what to put in there. I can show the file used on this site. Be sure and read the documentation on the ISSO website.
[general] dbpath = /home/isso/blog.comments.db host = https://blog.fatula.us log-file = /home/isso/log/isso.log max-age = 30m notify = smtp [admin] enabled = true password = ahiddenpassword [server] listen = http://localhost:someunusedport/ reload = off profile = off [guard] enabled = true ratelimit = 1 direct-reply = 5 reply-to-self = false require-author = true require-email = false [moderation] enabled = true purge-after = 30d [hash] salt = asetofuniquecharactersforsecurity algorithm = pbkdf2 [smtp] host = localhost port = 25 security = none from = "Steve" <replacewithyouremail> to = replacewithyouremail timeout = 10
Create a log directory
If you desire to have a separate log directory, perhaps you want to rotate old logs, etc.:
Make sure the directory matches what is in the isso.conf file.
Exit out of isso user
Now we need a systemd startup file
I’ll again show a sample file, but you may modify for your own uses. Use vi or you favrotite editor:
sudo vi /etc/systemd/system/isso.service
Here’s a sample file:
[Unit] Description=Isso Comment Server [Service] Type=simple User=isso WorkingDirectory=/home/isso ExecStart=/home/isso/.local/bin/isso -c /home/isso/isso.conf Restart=on-failure RestartSec=5 [Install] WantedBy=multi-user.target
Setup systemd to auto start isso on boot
We’ll tell systemd to use our service file when booting:
sudo systemctl enable isso sudo systemctl start isso sudo systemctl status isso
The last command makes sure no syntax or other erros were made in the service file, make sure it’s running.
Enable Apache2 module
In case it is not enabled on your system:
sudo a2enmod proxy_http sudo systemctl reload apache2
ISSO is now setup and running on your system. Now it’s a matter of using it in your webpages. That part depends on what you are using to create web pages. That’s up to you!