# pagan-web-v2 config import os, json from pathlib import Path BASE_DIR = Path(__file__).resolve().parent.parent # /opt/pagan-web-v2/ # ── Serwer ── HOST = "127.0.0.1" PORT = 8000 DEBUG = False # ── Secret key – trwały, zapisany w pliku ── SECRET_FILE = "/var/lib/pagan-web/secret.key" if os.path.exists(SECRET_FILE): SECRET_KEY = open(SECRET_FILE).read().strip() else: import hashlib SECRET_KEY = hashlib.sha256(os.urandom(64)).hexdigest() os.makedirs(os.path.dirname(SECRET_FILE), exist_ok=True) with open(SECRET_FILE, "w") as f: f.write(SECRET_KEY) # ── Baza danych ── DB_PATH = "/var/lib/pagan-web/users.db" # ── Git repos ── GIT_DIR = "/var/git" # ── Repo paczek ── REPO_BASE = "/var/www/repo.paganlinux.eu" # ── Obrazy ISO (upload w panelu admina) ── ISO_DIR = os.path.join(REPO_BASE, "iso") # ── SMTP ── SMTP_HOST = "mail.mijsys.pl" SMTP_PORT = 587 SMTP_USER = "pagan@mijsys.pl" SMTP_PASS = os.environ.get("PAGAN_SMTP_PASS", "") MAIL_FROM = "Pagan Linux " BASE_URL = "https://paganlinux.eu" # ── Build ── PAGBUILD_BIN = str(BASE_DIR / "pagbuild") PAGBUILD_SYNC = str(BASE_DIR / "pagsync") ROOTFS_PATH = "/var/lib/pagan-build/rootfs" STATE_FILE = "/var/lib/pagan-sync/state.json" RECIPES_DIR = "/var/lib/pagan-sync/recipes" # Kategorie dla paczek w repo CATEGORIES = ["stable"] STABLE_CATS = ["stable"] # ── Hasło build panel ── # UWAGA: wartość z env (np. /etc/pagan/build.conf). Domyślne hasło z kodu # zostało wycofane – ustaw BUILD_PASSWORD w środowisku panela. BUILD_PASSWORD = os.environ.get("BUILD_PASSWORD", "") # ── Domeny (do rozpoznawania sekcji) ── DOMAINS = { "paganlinux.eu": "main", "www.paganlinux.eu": "main", "git.paganlinux.eu": "git", "repo.paganlinux.eu": "repo", "build.paganlinux.eu": "build", "docs.paganlinux.eu": "docs", } # ── Git webhook (secret do auto-build po push) ── # UWAGA: sekret z env (PAGAN_WEBHOOK_SECRET w /etc/pagan/build.conf) – # nigdy w kodzie. GIT_WEBHOOK_SECRET = os.environ.get("PAGAN_WEBHOOK_SECRET", "")