#!/usr/bin/env bash core_name_purpur() { echo "Purpur" } core_default_port_purpur() { echo "25565" } core_protocol_purpur() { echo "tcp" } core_runtime_purpur() { echo "java" } core_validate_purpur() { return 0 } core_install_purpur() { info "$(t core_install "$(core_name_purpur)")" emit_step "core_install" "$(core_name_purpur)" local url emit_step "core_resolve_download" "purpur" url="$(get_purpur_download_url "${MC_VERSION:-latest}" "${BUILD:-latest}")" download_as_user "$url" "$SERVER_DIR/server.jar" emit_step "core_configure" "eula" run_cmd bash -lc "printf 'eula=true\n' > '$SERVER_DIR/eula.txt'" create_java_start_script "$SERVER_DIR" "server.jar" "$RAM" } core_post_install_purpur() { emit_step "core_post" "Purpur" run_cmd bash -lc "chown -R ${SERVER_USER}:${SERVER_USER} '$SERVER_DIR'" emit_step "core_chown" "Purpur" open_firewall_port "$SERVER_PORT" "tcp" emit_step "core_service" "Purpur" create_service "$CORE" "$SERVER_DIR" "$SERVICE_MODE" "$SERVER_DIR/start.sh" start_service } core_update_purpur() { info "$(t core_update "$(core_name_purpur)")" emit_step "core_update" "$(core_name_purpur)" local target="$SERVER_DIR/server.jar" backup_file "$target" emit_step "core_backup" "$target" local url emit_step "core_resolve_download" "purpur" url="$(get_purpur_download_url "${MC_VERSION:-latest}" "${BUILD:-latest}")" download_as_user_atomic "$url" "$target" emit_step "core_update_done" "Purpur" }