Merge pull request #2415 from TubaApollo/Contribute-Muse-Egg

Contribute muse egg
This commit is contained in:
Quinten 2023-08-10 18:14:13 +02:00 committed by GitHub
commit f0c2fea417
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 133 additions and 0 deletions

View File

@ -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 * [Dynamica](/bots/discord/dynamica) Node JS
* [fragbot](/bots/discord/fragbot) Golang * [fragbot](/bots/discord/fragbot) Golang
* [JMusicBot](/bots/discord/jmusicbot) Java * [JMusicBot](/bots/discord/jmusicbot) Java
* [Muse](/bots/discord/muse) Node JS
* [parkertron](/bots/discord/parkertron) Golang * [parkertron](/bots/discord/parkertron) Golang
* [pixel-bot](/bots/discord/pixelbot) Python * [pixel-bot](/bots/discord/pixelbot) Python
* [Redbot](/bots/discord/redbot) Python * [Redbot](/bots/discord/redbot) Python

View File

@ -27,6 +27,11 @@ The bot that runs as the fragforce `@Fragbot` offering looking-for-group service
[jagrosh/MusicBot](https://github.com/jagrosh/MusicBot) [jagrosh/MusicBot](https://github.com/jagrosh/MusicBot)
A Discord music bot that's easy to set up and run yourself! 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) ### [parkertron](parkertron)
[parkervcp/parkertron](https://github.com/parkervcp/parkertron) [parkervcp/parkertron](https://github.com/parkervcp/parkertron)

View File

@ -0,0 +1,35 @@
# Muse
### Authors / Contributors
<!-- prettier-ignore-start -->
<!-- markdownlint-disable -->
<table>
<tr>
<td align="center">
<a href="https://github.com/TubaApollo">
<img src="https://avatars.githubusercontent.com/u/86665265" width="50px;" alt=""/><br /><sub><b>TubaApollo</b></sub>
</a>
<br />
<a href="https://github.com/parkervcp/eggs/commits?author=TubaApollo" title="Codes">💻</a>
<a href="https://github.com/parkervcp/eggs/commits?author=TubaApollo" title="Maintains">🔨</a>
</td>
<td align="center">
<a href="https://github.com/lilkingjr1">
<img src="https://avatars.githubusercontent.com/u/4533989" width="50px;" alt=""/><br /><sub><b>Red-Thirten</b></sub>
</a>
<br />
<a href="https://github.com/parkervcp/eggs/commits?author=lilkingjr1" title="Codes">💻</a>
<a href="https://github.com/parkervcp/eggs/commits?author=lilkingjr1" title="Contributor">💡</a>
</td>
</tr>
</table>
<!-- markdownlint-enable -->
<!-- prettier-ignore-end -->
## 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

View File

@ -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"
}
]
}