diff --git a/INSTALL.md b/INSTALL.md new file mode 100644 index 0000000..896f35a --- /dev/null +++ b/INSTALL.md @@ -0,0 +1,29 @@ +# Installing owobot + +## Discord setup + +Before installing the bot, you need to do some set up in your Discord account. Start by opening the [Developer Portal](https://discord.com/developers/applications) and creating a new application. Once you've created it, click on your new application. Then, go to `Bot` in the sidebar and enable the Presence Intent, Server Members Intent, and Message Content intent. + +To get the token that you have to pass to `owobot`, click on the `Reset Token` button to generate a new token, and then copy it and store it somewhere safe (you won't be able to see it later). + +## Linux packages + +The [latest release](https://gitea.elara.ws/owobot/owobot/releases/latest) contains RPM, Deb, and Arch packages, and owobot is available [on the AUR](https://aur.archlinux.org/packages/owobot-bin/) as well. Choose whichever one of those you need and install it with your package manager. + +Once it's installed, there should be a default config file at `/etc/owobot.toml`. You can edit that to add your token, change the activity text, etc. and then run the bot by running `sudo systemctl enable --now owobot`. Systemd will now start running the bot and monitoring it to make sure it doesn't go down. + +That's it! Your bot should be up and running! + +## Docker + +This guide will use Docker, but `owobot` should work with any other OCI-compatible container engine, such as Podman. The container image is hosted on [Gitea](https://gitea.elara.ws/owobot/-/packages/container/owobot/latest). + +There's a [`docker-compose.yml`](docker-compose.yml) file provided in this repo as a starting point. Here's how you can use it: + +1. First, make sure `docker` and `docker-compose` are installed and working +2. Create a new folder for owobot to use to store its data +3. Put the example `docker-compose.yml` file into the new folder +4. Edit the `docker-compose.yml` file to set the token and anything else you may want to change +5. Make sure the directory can be accessed by the container's user (`sudo chown -R 65532:65532 folder`) +6. Run `docker-compose up -d` +7. That's it! Your bot should now be running. \ No newline at end of file diff --git a/README.md b/README.md index 9a4b90e..801b743 100644 --- a/README.md +++ b/README.md @@ -29,6 +29,8 @@ owobot is a versatile Discord bot with a wide range of capabilities, from modera ## Installation Options +See the [installation guide](INSTALL.md) for in-depth instructions on installing and running owobot. + ### Linux packages The [latest release](https://gitea.elara.ws/owobot/owobot/releases/latest) of owobot has packages for many distros and processors. They include a systemd service to make the bot easier to use. Just install the package, edit the bot's configuration to suit your needs, and run it using `sudo systemctl enable --now owobot`. Systemd will monitor it and make sure it's always running. @@ -148,7 +150,6 @@ Here are the current rate limits: - `kick`: 10 / minute - `ban`: 7 / 5 minutes - ## Contributing See the [CONTRIBUTING.md](CONTRIBUTING.md) file for more information about contributing to owobot. \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..227a092 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,12 @@ +version: '3' +services: + owobot: + image: gitea.elara.ws/owobot/owobot:latest + restart: unless-stopped + volumes: + - ./:/data + environment: + OWOBOT_TOKEN: 'Change Me' + OWOBOT_DB_PATH: /data/owobot.db + OWOBOT_ACTIVITY_TYPE: '-1' + OWOBOT_ACTIVITY_NAME: '' \ No newline at end of file