Skip to content

๐Ÿ› ๏ธ Running Installation Guide

Aluerie edited this page May 14, 2026 · 2 revisions

Warning

I would probably prefer if you don't run an instance of my bot. And I'm honestly not a very good programmer. Nevertheless:

Requirements:

  • Python 3.12 or higher
  • SQL database, preferably PostgreSQL

Installations steps are as follows:

  1. Clone the repository with

    git clone https://github.com/Aluerie/IreBot
    cd ./IreBot
  2. Set up venv with your preferred Python package manager. This repository is already set up with uv so steps 2-4 will be automatically done by uv during uv run src/main.py, but feel free to use any other (py, pdm, ...) package/project manager. The repository also features Makefile which gives handy shortcuts for common CLI commands - using make run calls proper uv run command (so again, steps 2-4 are automatically done this way).

    python3.12 -m venv venv # or
    py -m venv venv # or etc
  3. Activate the venv with

    ./venv/Scripts/Activate.ps1 # powershell windows
    source ./venv/bin/activate # ubuntu
    # or etc
  4. Install dependencies with

    python3.12 -m pip install -U -r requirements.txt # or
    py -m pip install -U -r requirements.txt # or etc
  5. Rename-copy .env.example to .env and fill out all the needed config parameters, api-keys, credentials and passwords in it.

  6. Replace twitch ID and some other constant variables in files under /utils/const folder with your own.

  7. Create SQL tables using definitions from .sql-files in sql folder.

  8. Run the bot with make run or directly uv run src/main.py, or your preferred way to launch .py files. Note that I chose to have working directory as project root folder and run the bot with uv run src/main.py over switching directory to src first.

๐ŸŒŠProcess Managers

Personally, I use systemd for process managing. You can use anything you like though: dockers, simple manual python src/main.py, etc. An example of my .service file is in the repository root folder.

Tip

A good template for .service files can be found in gist by @mikeshardmind. The options are explained pretty well at freedesktop.org.

Navigate the Wiki

โš’๏ธ For developers

๐ŸŒˆ For myself

These are useful only for myself, but I don't really have any better place to keep them.

Clone this wiki locally