diff --git a/README.md b/README.md index 95ad3868..1f7de48e 100644 --- a/README.md +++ b/README.md @@ -34,6 +34,7 @@ If you are reading this it looks like you are looking to add an egg to your serv * [Dynamica](/bots/discord/dynamica) Node JS * [fragbot](/bots/discord/fragbot) Golang * [JMusicBot](/bots/discord/jmusicbot) Java +* [Muse](/bots/discord/muse) Node JS * [parkertron](/bots/discord/parkertron) Golang * [pixel-bot](/bots/discord/pixelbot) Python * [Redbot](/bots/discord/redbot) Python diff --git a/bots/discord/README.md b/bots/discord/README.md index 2640948c..1793f497 100644 --- a/bots/discord/README.md +++ b/bots/discord/README.md @@ -27,6 +27,11 @@ The bot that runs as the fragforce `@Fragbot` offering looking-for-group service [jagrosh/MusicBot](https://github.com/jagrosh/MusicBot) A Discord music bot that's easy to set up and run yourself! +### [Muse](muse) + +[codetheweb/muse](https://github.com/codetheweb/muse) +🎧 a self-hosted midwestern Discord music bot that doesn't suck + ### [parkertron](parkertron) [parkervcp/parkertron](https://github.com/parkervcp/parkertron) diff --git a/bots/discord/muse/README.md b/bots/discord/muse/README.md new file mode 100644 index 00000000..4c84437f --- /dev/null +++ b/bots/discord/muse/README.md @@ -0,0 +1,35 @@ +# Muse + +### Authors / Contributors + + + + + + + +
+ +
TubaApollo +
+
+ 💻 + 🔨 +
+ +
Red-Thirten +
+
+ 💻 + 💡 +
+ + + +## Their [Github](https://github.com/codetheweb/muse) + +Muse is a highly-opinionated midwestern self-hosted Discord music bot that doesn't suck. + +## Server Ports + +There are no ports required for the Muse bot diff --git a/bots/discord/muse/egg-muse.json b/bots/discord/muse/egg-muse.json new file mode 100644 index 00000000..0517e7d6 --- /dev/null +++ b/bots/discord/muse/egg-muse.json @@ -0,0 +1,92 @@ +{ + "_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO", + "meta": { + "version": "PTDL_v2", + "update_url": null + }, + "exported_at": "2023-08-08T17:25:35+00:00", + "name": "Muse", + "author": "hello@apollo.moe", + "description": "\ud83c\udfa7 a self-hosted midwestern Discord music bot that doesn't suck", + "features": null, + "docker_images": { + "ghcr.io\/parkervcp\/yolks:nodejs_16": "ghcr.io\/parkervcp\/yolks:nodejs_16" + }, + "file_denylist": [], + "startup": "npm start", + "config": { + "files": "{\r\n \".env\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"DISCORD_TOKEN\": \"DISCORD_TOKEN={{env.discord_token}}\",\r\n \"DATA_DIR\": \"DATA_DIR={{env.data_dir}}\",\r\n \"YOUTUBE_API_KEY\": \"YOUTUBE_API_KEY={{env.api_key}}\",\r\n \"SPOTIFY_CLIENT_ID\": \"SPOTIFY_CLIENT_ID={{env.client_id}}\",\r\n \"SPOTIFY_CLIENT_SECRET\": \"SPOTIFY_CLIENT_SECRET={{env.client_secret}}\"\r\n }\r\n }\r\n}", + "startup": "{\r\n \"done\": \"Running version \"\r\n}", + "logs": "{}", + "stop": "^^C" + }, + "scripts": { + "installation": { + "script": "## Credits: Red-Thirten (https:\/\/github.com\/lilkingjr1) for providing most of the installation script\r\napt-get update\r\napt-get install curl jq -y -qq\r\n\r\nGITHUB_PACKAGE=\"codetheweb\/muse\"\r\n\r\n# Find GitHub download URL for Muse for specified version\r\nLATEST_JSON=$(curl --silent \"https:\/\/api.github.com\/repos\/${GITHUB_PACKAGE}\/releases\/latest\")\r\nRELEASES=$(curl --silent \"https:\/\/api.github.com\/repos\/${GITHUB_PACKAGE}\/releases\")\r\n\r\nif [ -z \"${VERSION}\" ] || [ \"${VERSION}\" == \"latest\" ]; then\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq -r '.tarball_url')\r\nelse\r\n VERSION_CHECK=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .tag_name')\r\n if [ \"${VERSION}\" == \"${VERSION_CHECK}\" ]; then\r\n DOWNLOAD_URL=$(echo ${RELEASES} | jq -r --arg VERSION \"${VERSION}\" '.[] | select(.tag_name==$VERSION) | .tarball_url')\r\n else\r\n echo -e \"Could not find version \\\"${VERSION}\\\" of Muse. Defaulting to latest release...\"\r\n DOWNLOAD_URL=$(echo ${LATEST_JSON} | jq -r '.tarball_url')\r\n fi\r\nfi\r\n\r\n# Download Muse from GitHub & Extract\r\ncd \/mnt\/server\r\necho -e \"Downloading Muse from GitHub...\"\r\ncurl -L ${DOWNLOAD_URL} -o muse.tar.gz\r\necho -e \"Extracting Muse from tarball...\"\r\ntar -xvzf muse.tar.gz --strip-components=1\r\nrm muse.tar.gz\r\n\r\n# Verify and clean up Muse installation\r\nif [ ! -f .env.example ]; then\r\n echo -e \"\\nFailed to download release: ${DOWNLOAD_URL}\\n\"\r\n exit 1\r\nfi\r\ncp .env.example .env\r\nrm -rf .dockerignore Dockerfile .gitignore .github\/\r\nyarn install --frozen-lockfile\r\nsed -i 's\/of filterWrapper[)]\/of filterWrapper|| [])\/g' \/mnt\/server\/node_modules\/ytsr\/lib\/utils.js\r\n\r\necho -e \"\\nMuse Successfully Installed!\"", + "container": "node:lts-bullseye-slim", + "entrypoint": "bash" + } + }, + "variables": [ + { + "name": "TOKEN", + "description": "Discord Bot Token", + "env_variable": "discord_token", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "required|string", + "field_type": "text" + }, + { + "name": "Data directory", + "description": "Default: .\/data", + "env_variable": "data_dir", + "default_value": ".\/data", + "user_viewable": true, + "user_editable": true, + "rules": "required|string|max:20", + "field_type": "text" + }, + { + "name": "YouTube API Key", + "description": "You can get it here: https:\/\/console.developers.google.com\/", + "env_variable": "api_key", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "required|string", + "field_type": "text" + }, + { + "name": "Spotify Client ID", + "description": "You can get it here: https:\/\/developer.spotify.com\/dashboard\/applications", + "env_variable": "client_id", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "required|string", + "field_type": "text" + }, + { + "name": "Spotify Client Secret", + "description": "You can get it here: https:\/\/developer.spotify.com\/dashboard\/applications", + "env_variable": "client_secret", + "default_value": "", + "user_viewable": true, + "user_editable": true, + "rules": "required|string", + "field_type": "text" + }, + { + "name": "Version", + "description": "Specify a version, for example: \"v2.4.1\"\r\nFor the latest version, type \"latest\"", + "env_variable": "VERSION", + "default_value": "latest", + "user_viewable": true, + "user_editable": true, + "rules": "required|string", + "field_type": "text" + } + ] +} \ No newline at end of file