{ "_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" } ] }