🔒 Repository is read-only – file editing is disabled.
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
# 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 <pagan@mijsys.pl>"
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 ──
# USTAW w /etc/pagan/build.conf (EnvironmentFile unita pagan-web)!
# Bez tego dziala PUSTE haslo (albo, w starej wersji, slabе domyslne).
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) ──
GIT_WEBHOOK_SECRET = os.environ.get("GIT_WEBHOOK_SECRET", "")