imag/README.md

67 lines
2.2 KiB
Markdown
Raw Normal View History

2025-02-01 14:27:59 -06:00
# imag
> simple image board, intended for a quotebook of screenshots
the imag image board is made to be simple, though separated, so you
could easily add or remove features, update them, etc
example instance: https://quotes.everypizza.im/
# licensing
this program is under the Strongest Public License, mostly as a joke.
this one, Nyx Tutt, gives you full permission to ignore Clause ⑨.
# prerequisites
- tesseract: https://github.com/tesseract-ocr
- tesseract data
# bot
there's a matrix bot at n/quotes-bot and a very WIP rewrite in python at n/quotes-bot-python.s
# docs & running
2025-02-01 14:30:00 -06:00
see the [doc directory](/doc) for documentation, it also has an example nginx and caddy config,
2025-02-01 14:27:59 -06:00
and you can also run the app using [./scripts/run.sh](./scripts/run.sh) to match that config - but don't run it using
the run.sh as the first run.
running with gunicorn (run.sh) is for production use, for master key generation (first run), please
2025-02-01 16:25:53 -06:00
run it in dev mode after making the config:
make the config:
```sh
cp src/imag/config.sample.json src/imag/config.json && nano config.json
```
run it:
2025-02-01 14:27:59 -06:00
```sh
python3 src/main.py
```
(make sure to save the key!)
and only then with gunicorn
2025-02-01 16:25:53 -06:00
if you already ran it in production and don't know where the key is, run the following command:
2025-02-01 14:27:59 -06:00
```sh
rm -rf src/instance
```
and then run it in debug
### step-by-step
this comes from an email the original creator got from a user:
2025-02-01 16:25:53 -06:00
1. clone the repository: `git clone https://git.everypizza.im/n/imag`
2. make sure you have virtualenv installed (either through python-virtualenv / python3-virtualenv / py3-virtualenv packages, or by pip - `python3 -m pip install --user --break-system-packages --upgrade virtualenv`)
3. ensure you have sqlite3 and memcached installed: `apt install sqlite3 memcached`
4. create a new virtual environment: `python3 -m virtualenv venv && source venv/bin/activate`
5. install the dependencies in the environment: `pip install -r requirements.txt`
6. configure the instance: `cp src/imag/config.sample.json src/imag/config.json && nano config.json`
6. run the app by either running `scripts/run.sh` or by manually starting memcached and running `src/main.py` with gunicorn (i assume you're reverse proxying it anyway)