mirror of
https://github.com/Pumpkin-MC/Pumpkin.git
synced 2026-08-30 20:14:23 +00:00
* Fix egg: initialize git submodules during install The Pumpkin repo uses pumpkin-plugin-wit as a git submodule, but the install script only does 'git clone --depth 1' without --recurse-submodules. Add 'git submodule update --init --recursive --depth 1' after checkout so the WIT files required by bindgen!/wit_bindgen::generate are available. * Potential fix for pull request finding
93 lines
5.3 KiB
JSON
93 lines
5.3 KiB
JSON
{
|
|
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
|
|
"meta": {
|
|
"version": "PTDL_v2",
|
|
"update_url": null
|
|
},
|
|
"exported_at": "2026-02-10T08:07:42+00:00",
|
|
"name": "Pumpkin",
|
|
"author": "lilalexmed@proton.me",
|
|
"description": "Pumpkin is a Minecraft server built entirely in Rust, offering a fast, efficient, and customizable experience. It prioritizes performance and player enjoyment while adhering to the core mechanics of the game. Requires around 4GB RAM to build, adjust docker.installer_limits.memory to a value of 4096 or above in your wing accordingly! For faster builds consider increasing docker.installer_limits.cpu as well.",
|
|
"features": null,
|
|
"docker_images": {
|
|
"Alpine": "ghcr.io\/pterodactyl\/yolks:alpine"
|
|
},
|
|
"file_denylist": [],
|
|
"startup": ".\/pumpkin",
|
|
"config": {
|
|
"files": "{\r\n \"config\/configuration.toml\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"java_edition_address\": \"java_edition_address = '0.0.0.0:{{server.build.default.port}}'\"\r\n }\r\n },\r\n \"config\/features.toml\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"address\": \"address = '0.0.0.0:{{server.build.default.port}}'\"\r\n }\r\n }\r\n}",
|
|
"startup": "{\r\n \"done\": \"Server is now running.\"\r\n}",
|
|
"logs": "{}",
|
|
"stop": "stop"
|
|
},
|
|
"scripts": {
|
|
"installation": {
|
|
"script": "#!\/bin\/ash\r\nset -eux\r\n\r\napk add --no-cache musl-dev git\r\nmkdir -p \/mnt\/server\r\n\r\nREPO_URL=\"${GIT_URL:-https:\/\/github.com\/Pumpkin-MC\/Pumpkin.git}\"\r\n\r\nif [ -n \"$GIT_BRANCH\" ]; then\r\n git clone --depth 1 --single-branch --branch \"$GIT_BRANCH\" \"$REPO_URL\"\r\nelse\r\n git clone --depth 1 --single-branch \"$REPO_URL\"\r\nfi\r\n\r\ncd Pumpkin\r\n\r\nif [ -n \"$GIT_COMMIT\" ]; then\r\n git fetch --depth 1 origin \"$GIT_COMMIT\"\r\n git checkout \"$GIT_COMMIT\"\r\nfi\r\n\r\ngit submodule update --init --recursive --depth 1\r\n\r\n#export RUSTFLAGS=\"-C target-feature=-crt-static -C target-cpu=native\"\r\nexport CARGO_BUILD_JOBS=${CARGO_BUILD_JOBS:-default}\r\n\r\nif [[ \"$BUILD_RELEASE\" == \"1\" || \"$BUILD_RELEASE\" == \"true\" ]]; then\r\n cargo build --release\r\n strip target\/release\/pumpkin\r\n cp target\/release\/pumpkin \/mnt\/server\/pumpkin\r\nelse\r\n cargo build\r\n cp target\/debug\/pumpkin \/mnt\/server\/pumpkin\r\nfi\r\n\r\n# Quickly start and kill server to generate config\r\ncd \/mnt\/server\r\ntimeout 1 .\/pumpkin",
|
|
"container": "docker.io\/rust:1-alpine3.21",
|
|
"entrypoint": "ash"
|
|
}
|
|
},
|
|
"variables": [
|
|
{
|
|
"name": "Rust backtrace",
|
|
"description": "\"0\" -> No backtrace is generated. This is the default behavior.\r\n\"1\" -> Generates a minimal backtrace showing only relevant information about where the panic occurred.\r\n\"full\" -> Generates a detailed backtrace, showing all frames leading to the panic, including functions in the Rust standard library and dependencies.",
|
|
"env_variable": "RUST_BACKTRACE",
|
|
"default_value": "1",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|in:1,0,full",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Build Release",
|
|
"description": "Either build release or a debug build of pumpkin.\r\nScope: installation",
|
|
"env_variable": "BUILD_RELEASE",
|
|
"default_value": "1",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "required|boolean",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Git commit",
|
|
"description": "Chose which git commit to clone.\r\nScope: installation",
|
|
"env_variable": "GIT_COMMIT",
|
|
"default_value": "",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "nullable|string|max:40|min:7",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Git branch",
|
|
"description": "Chose which git branch to clone.\r\nScope: installation",
|
|
"env_variable": "GIT_BRANCH",
|
|
"default_value": "",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "nullable|string|max:255",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Git URL",
|
|
"description": "Chose which git URL to clone from. Useful if you are using a fork.\r\nScope: installation",
|
|
"env_variable": "GIT_URL",
|
|
"default_value": "",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "nullable|string",
|
|
"field_type": "text"
|
|
},
|
|
{
|
|
"name": "Cargo build jobs",
|
|
"description": "Amount of jobs that cargo spawns to compile. Try to reduce them if you encounter a deadlock. Value must be at least 1. To use maximum available threads, use the value 'default'\r\nScope: installation",
|
|
"env_variable": "CARGO_BUILD_JOBS",
|
|
"default_value": "default",
|
|
"user_viewable": true,
|
|
"user_editable": true,
|
|
"rules": "nullable|string",
|
|
"field_type": "text"
|
|
}
|
|
]
|
|
}
|