# ---------- helpers -------------------------------------------------------- log() { echo -e "[dockercraft] $*" } warn() { echo -e "[dockercraft] WARNING: $*" >&2 } die() { echo -e "[dockercraft] ERROR: $*" >&2 sleep 2 exit 1 } crash() { die "$@" } # ---------- permission setup ----------------------------------------------- setperms() { log "--- Setting permissions to UID:${PUID} GID:${PGID} ---" sudo usermod -u "${PUID}" minecraft sudo groupmod -g "${PGID}" minecraft sudo chown -R "${PUID}:${PGID}" /data log "Permissions set." } # ---------- EULA ----------------------------------------------------------- setEula() { if [[ "${EULA:-false}" != "true" ]]; then die "EULA not accepted. Set EULA=true to accept the Minecraft EULA (https://aka.ms/MinecraftEULA)" fi mkdir -p /data/server cat <<'EOF' > /data/server/eula.txt #By changing the setting below to TRUE you are indicating your agreement to our EULA (https://aka.ms/MinecraftEULA). eula=true EOF } # ---------- misc ----------------------------------------------------------- newForge() { if [[ "$(printf '%s\n' "1.17.1" "$MC_VERSION" | sort -V | head -n1)" = "1.17.1" ]]; then NEW_FORGE=true else NEW_FORGE=false fi } serverInfoWrite() { cat < /data/server/server.info MC_VERSION=${MC_VERSION} MC_LOADER=${MC_LOADER} MC_LOADER_VERSION=${MC_LOADER_VERSION} JAVA_VERSION=${JAVA_VERSION:-"N/A"} JAR=${JAR:-"N/A"} XMS=${XMS:-"N/A"} XMX=${XMX:-"N/A"} ADD_ARGS=${ADD_ARGS:-"NONE"} PUID=${PUID} PGID=${PGID} EOF }