A bot that tracks and auto-deletes statuses on Mastodon/Pleroma accounts after a set time if they are cringe enough
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

66 lines
1.8 KiB

# cringebot
3 years ago
`cringebot` is a bot that tracks and auto-deletes statuses on Mastodon/Pleroma accounts after a set time if they are cringe enough. Multiple accounts across multiple instances are supported.
3 years ago
## Installation (Ubuntu Linux)
#### Download cringebot and make user account
3 years ago
```
useradd -d /usr/local/lib/cringebot -M -s /bin/bash -U cringebot
sudo -i -u cringebot
git clone https://git.thj.no/thor/cringebot.git
3 years ago
```
#### Install dependencies
```
apt install python3 bogofilter
sudo -i -u cringebot
pip3 install Mastodon.py html2text
```
#### Install dependencies (OCR support)
```
apt install python3 bogofilter tesseract-ocr
sudo -i -u cringebot
pip3 install Mastodon.py html2text PIL
```
#### Create configuration
3 years ago
```
sudo -i -u cringebot
cp config.example.toml config.toml
editor config.toml
3 years ago
```
#### Run from command line
3 years ago
```
sudo -i -u cringebot
python3 cringebot.py
3 years ago
```
#### Install systemd service
```
ln -s /usr/local/lib/cringebot/cringebot.service /etc/systemd/system/cringebot.service
systemctl enable cringebot
systemctl start cringebot
3 years ago
```
#### Management
```
# Restart service
systemctl restart cringebot
3 years ago
# Check service status
systemctl status cringebot
3 years ago
# Monitor log output
journalctl -t cringebot -f
3 years ago
```
#### Learning
3 years ago
The bot will respond to each of your statuses with a categorisation status. Reply with `cringe` and `based` to teach the bot a categorisation, and `unlearn` to undo it. When the bot categorises or is taught that a message is cringe, it's scheduled for deletion `max_age` minutes after it was posted. When it's learned as based, or unlearned, it's removed from the deletion schedule. Some learning parameters can be tuned by changing the constants in `bogofilter.py`. These will eventually be tunable in `config.toml`.
3 years ago
## Maintainer
The maintainer can be contacted at `@thor@pl.thj.no`.