Skip to content

.#2

Open
chredeur wants to merge 101 commits intopastanetwork:masterfrom
pelican-eggs:master
Open

.#2
chredeur wants to merge 101 commits intopastanetwork:masterfrom
pelican-eggs:master

Conversation

@chredeur
Copy link
Copy Markdown
Member

@chredeur chredeur commented Mar 9, 2026

Description

All Submissions:

  • Have you ensured there aren't other open Pull Requests for the same update or change?
  • Have you created a new branch for your changes and PR from that branch and not from your master branch?

New Image Submissions:

  1. Have you added your image to the Github workflows?
  2. Have you updated the README list to contain your new image?

parkervcp and others added 30 commits February 18, 2025 17:23
Works on a local/private docker image
- Bumped platform & dependencies from `bullseye-slim` to `bookworm-slim`.
- Removed `numactl` package as it no longer seems required for SteamCMD to login correctly with real credentials.
- Updated `EGG_URL` to point to the new repo.
- Removed depreciated environment variables (see Egg changelog to see what has changed).
- Consolidated beta branch system.
- Replaced the mod installation system (which *moved* mods out of `Steam` directory into the home directory) with a new system that makes a new hard-link copy of the mod to the home directory. This solves two issues. First, SteamCMD's ACF cache will no longer get out of sync and label mods as "dirty", potentially causing issues with mod updates. Second, it allows files and directories of the mod in the home folder to be lowercased (for Arma compatibility) without "dirtying" the original SteamCMD files. The optional mod system was also adjusted to support this.
- Generalized home directory references so it could easily be changed in the future if needed.
- Fixed RPT log file location to match Arma docs.
- Updated the Startup Command of the server and HCs to use a Yolk-generated parameter (par) file. This should hopefully avoid any further issues with mod or parameter parsing in the future, as trying to organize and escape everything correctly is too much of a pain to maintain. This also future-proofs the Egg if Pelican decides to stop supporting Yolk-generated variables in the Startup Command (ie. pre-evaluated Startup Commands).
- Changed the server start to echo the par startup parameters instead of the raw Startup Command (for easier debugging under the new par system).
- Fixed exit-code-checking false positive.
- Made comments & code more consistent/clean.
- Fixed the license. First, as the original author of this Yolk (not to be confused with Daave's retired Yolk, which this is not a derivative work of), I can say with authority that the original license of this Yolk was written in error. No part of this Yolk was originally written ***by*** Pterodactyl Software; it was written by myself ***for*** the Pterodactyl community. This is further evidenced by the original top comments of `entrypoint.sh` stating the author is myself and the license is MIT. Second, with this new, major revision of the Yolk, I am updating the license to be GNU AGPL-3.0.
- Removed the `numactl` package from all images as SteamCMD no longer seems to have issues logging in with a real Steam account (at least on bookworm, which all these images use).

The following cleanup changes only apply to Dockerfiles that had `numactl` removed:
- Changed all Dockerfiles to use `apt` (instead of `apt-get`) for consistency.
- Changed all `apt install` packages to a "list" format for consistency and easier diff reading for future package additions/removals.
- Added `locales` to `games\source\Dockerfile` and set the locale.
- Moved all instances of the `useradd` command down with the other user and working directory commands. Also  added the shell specification flag if it was missing.
- Unified all Dockerfiles to use space-indenting and fixed some indent spacing.
- Cleaned up some comments.
* Update nodejs yolks

Move user creation and env to not rebuild on every update if not needed.

update apt install command to new format

update npm install command to properly be global to resolve ts-node issue

update npm install commands to install latest version available for node version

* fix build

moves section that sets the user and env vars to the bottom again.

I forgot the order of ops matters.

* fix issues with corepack

npm doesn't install a working version of corepack unless it's tagged to latest.
Updates to latest Ubuntu LTS release.
Updates the format used for dependencies

I have validated that this works with both current and upcoming releases,
* Add MongoDB 8

Add yolk for MongoDB 8

* Add mongo 8 to the workflow file

* Update README

---------

Co-authored-by: Quinten <67589015+QuintenQVD0@users.noreply.github.com>
zandronum needs a set of packages that are outdated.
* update mumble

mumble now ships their own docker image
updating ours to be based on that.

* update entrypoint

uses the mumble executable to print the current version
`STEAMCMD_BETAID` is nullable and is null by default, causing a false-positive for this check. `PARAM_NOLOGS` is a much better Egg variable to check.
* Downgrade MTA base os version

MTA decided to downgrade their build container to 20.04 so we need to roll this back as well...

* This needs libssl1.1

---------

Co-authored-by: Quinten <67589015+QuintenQVD0@users.noreply.github.com>
Fix `github.repository_owner` not being lower-case and Fallback to default `GITHUB_TOKEN`, if `REGISTRY_TOKEN` does not exist
* Add JQ to the java images
Kathund and others added 30 commits December 28, 2025 10:21
* chore: remove old node js versions

Required for pelican-eggs/generic#24

* fix: removal of aold nodejs versions

* restore: nodejs removed versions

* fix: remove old nodejs versions from readme
* Fetch wine mono from github

* Configure terminal columns for Wine

* Set terminal columns to 250 for Wine processes.
Updated docker images to pelican-eggs in the README file
you are right :)

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Relocates the Hytale downloader configuration variables to be set before checking for downloader updates. This ensures that all variables are initialized prior to their use, improving script reliability.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Adds support for managing the Performance Saver plugin via the PSAVER variable, including automatic download, enable/disable, and re-enabling logic. Improves downloader authentication by handling credentials file creation and usage, and ensures only valid version files are used. Cleans up temporary directories more aggressively to avoid stale data. Updates Dockerfile maintainer and author labels.
Extracted credentials initialization into a reusable function and updated both update and download logic to use it, reducing code duplication. Improved Performance Saver plugin management by using the PSAVER_JAR_PATTERN variable for more consistent file matching and updated the release URL extraction for better reliability.
Combined multiple LABEL instructions into a single instruction using the org.opencontainers.image.authors field for improved clarity and maintainability.
Added 'file' package to Dockerfile for file type checks. Refactored entrypoint.sh to centralize version patterns, improve filtering, and enhance Performance Saver plugin management with file integrity checks and better error handling. Also fixed zip file search path and improved handling of credentials and plugin enable/disable logic.
Introduces Hytale API OAuth device code authentication and session token management to entrypoint.sh, including token refresh, session creation, and environment variable export. Improves system information output, credentials validation, and plugin installation logging. Refactors and enhances update checks, error handling, and logging for better maintainability and debugging.
Adds cleanup for invalid .version files by checking for proper version format. Updates Performance Saver plugin download to use jq for more reliable URL extraction. Refines plugin detection to exclude disabled jars.
Refactors the manage_psaver function to better handle duplicate and disabled plugin jars, ensuring only the latest version is kept and all old or disabled copies are removed. Adds a cleanup step before installing or removing the plugin to prevent leftover files and improve reliability.
Enhance Hytale entrypoint with plugin and auth handling
Eliminates in-script Hytale OAuth and session management, delegating authentication to the server itself. Updates downloader update logic and cleans up related variables and functions. Users are now instructed to authenticate using the in-game device login flow.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Adds handling for non-zero exit codes from the downloader update check command, displaying a warning if the check fails. This improves robustness by distinguishing between command failures and actual update availability.
- Changed exit code for Proton error from 0 to 1 (0 wrongly indicates success).
- Moved default Steam credentials check block into auto update block (ie. only check and adjust if actually updating).
- Removed redundant Steam user "anonymous" check (SteamCMD call was the same in either case).
- Improved verbiage of comments and prints.
- Improved modified startup print accuracy. Previously, certain characters (namely quotes) would not print in the `echo` statement, even though they were technically there during `eval`.
* Add support for dotnet10 in steamcmd:dotnet

* Update Dockerfile

Use the dotnet-runtime10 first before dotnet-sdk10 in Dockerfile build
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.