MC / config.py
smodusermc's picture
Update config.py
a8d79ac verified
Raw History Blame Contribute Delete
2.6 kB
import os
from pathlib import Path
class Config:
# --- Paths ---
BASE_DIR = Path("/app")
SERVER_DIR = BASE_DIR / "minecraft_server"
MODS_DIR = SERVER_DIR / "mods"
WORLD_DIR = SERVER_DIR / "world"
CONFIG_DIR = SERVER_DIR / "config"
LOGS_DIR = SERVER_DIR / "logs"
BACKUPS_DIR = BASE_DIR / "backups"
UPLOADS_DIR = BASE_DIR / "uploads"
# --- Server Settings ---
# Note: Using the exact jar name from the Dockerfile execution for clarity
SERVER_JAR = "server.jar"
MIN_RAM = "1G" # Increased minimum RAM for stability
MAX_RAM = "10G" # Set a reasonable max limit for HF Spaces free tier
SERVER_PORT = 25565
WEB_PORT = 7860 # Mandatory port for Hugging Face Spaces web UI
# --- Authentication Credentials (Set as HF Secrets) ---
ADMIN_USERNAME = os.getenv("ADMIN_USER", "admin") # Added default "admin"
ADMIN_PASSWORD = os.getenv("ADMIN_PASS", "admin123") # Added safe default
SECRET_KEY = os.getenv("SECRET_KEY", "tF4P23MF1SERmIbDP$xhvAPfLJfp8%KN")
PLAYIT_ERROR_LOG = Path(os.getenv('MINECRAFT_SERVER_DIR', '/app/minecraft_server')) / "playit_error.log"
# --- Self-ping settings ---
SPACE_URL = os.getenv("SPACE_URL", "https://smodusermc-mc.hf.space")
PING_INTERVAL = 300
# --- Java Path (Matches Dockerfile installation) ---
JAVA_PATH = os.getenv("JAVA_HOME", "/usr/lib/jvm/temurin-21-jdk-amd64") + "/bin/java"
JAVA_ARGS = [
"-XX:+UnlockExperimentalVMOptions",
"-XX:+UseG1GC",
"-XX:+ParallelRefProcEnabled",
"-XX:MaxGCPauseMillis=50",
"-XX:+DisableExplicitGC",
"-XX:+AlwaysPreTouch",
"-XX:G1NewSizePercent=30",
"-XX:G1MaxNewSizePercent=40",
"-XX:G1HeapRegionSize=8M",
"-XX:G1ReservePercent=20",
"-XX:G1HeapWastePercent=5",
"-XX:G1MixedGCCountTarget=4",
"-XX:InitiatingHeapOccupancyPercent=15",
"-XX:G1MixedGCLiveThresholdPercent=90",
"-XX:G1RSetUpdatingPauseTimePercent=5",
"-XX:SurvivorRatio=32",
"-XX:+PerfDisableSharedMem",
"-XX:MaxTenuringThreshold=1"
]
SUPABASE_URL = os.getenv("SUPABASE_URL", "https://klgnaqxixgrslleqhvdy.supabase.co")
SUPABASE_ANON_KEY = os.getenv("SUPABASE_ANON_KEY", "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6ImtsZ25hcXhpeGdyc2xsZXFodmR5Iiwicm9sZSI6ImFub24iLCJpYXQiOjE3NjQ5NzkwNjksImV4cCI6MjA4MDU1NTA2OX0.AZOKBf0dGLwvIVZFl5bkC3OHm725SD7zP0SDBDWHW-0")
SUPABASE_BUCKET_NAME = os.getenv("SUPABASE_BUCKET_NAME", "saves")
config = Config()