umi/README.md
2024-12-01 08:22:17 +00:00

69 lines
No EOL
1.6 KiB
Markdown

# umi
a self-hostable single-guild discord bot for playing music and announcing vc channel joins/leaves
## Pre-requisites
Install dependencies:
- FFI: `libffi`
- NaCl: `libnacl` or `libsodium`
- FFmpeg: `ffmpeg`
- yt-dlp: `yt-dlp`
- opus: `opus`
Copy `.env.example` to `.env`:
- `DISCORD_BOT_TOKEN` is obtained from the [Discord Developer Dashboard](https://discord.com/developers/applications)
- Click or create an application
- Get your token from the "Bot" section in the sidebar menu
- `DISCORD_GUILD_ID` is obtained from within the Discord app
- Settings > Advanced > Developer Mode: enabled
- Right click the guild and select "Copy ID"
- `DISCORD_BOT_ADMIN_ROLE_ID` for reloading cogs
- `DISCORD_BOT_ADMIN_USER_ID` for reloading cogs
- `DISCORD_VCJOIN_CHANNEL` for the VCJoin cog
## Setup
### with systemd
```sh
mkdir -p /srv/discord
cd /srv/discord
sudo useradd --system -s /srv/discord discord
sudo chown -R discord:discord /srv/discord
sudo -Hu discord git clone https://git.trwnh.com/a/umi.git
python -m venv .venv
.venv/bin/pip install -r umi/requirements.txt
sudo cp umi/umi@.service /etc/systemd/system/umi@.service
sudo systemctl daemon-reload
sudo systemctl start umi@umi
```
### ...with Docker Compose
```sh
mkdir -p /srv/discord
cd /srv/discord
sudo useradd --system -s /srv/discord discord
sudo chown -R discord:discord /srv/discord
sudo -Hu discord git clone https://git.trwnh.com/a/umi.git
cd umi
sudo docker compose build
sudo docker compose up -d
```
## Log into YouTube
- Follow the instructions at https://github.com/yt-dlp/yt-dlp/wiki/Extractors#exporting-youtube-cookies
- Put your extracted cookies into config/cookies.txt