# VESTI — общий конфиг (загрузка .env, пути) import os from pathlib import Path from dotenv import load_dotenv BASE_DIR = Path(__file__).resolve().parent # /opt/vesti load_dotenv(BASE_DIR / ".env") DB_PATH = BASE_DIR / "db" / "vesti.db" SCHEMA_PATH = BASE_DIR / "db" / "schema.sql" SOURCES_PATH = BASE_DIR / "sources" / "sources.yaml" BUNDLES_DIR = BASE_DIR / "bundles" MEDIA_DIR = BASE_DIR / "media" TG_API_ID = int(os.getenv("TG_API_ID", "0")) TG_API_HASH = os.getenv("TG_API_HASH", "") TG_PROXY = os.getenv("TG_PROXY", "socks5://127.0.0.1:1080") TG_SESSION_DIR = Path(os.getenv("TG_SESSION_DIR", str(BASE_DIR / "telegram"))) VESTI_BOT_TOKEN = os.getenv("VESTI_BOT_TOKEN", "") VESTI_BOT_CHANNEL = os.getenv("VESTI_BOT_CHANNEL", "@dedinit_vesti_linux_ru_bot") ADMIN_USER = os.getenv("ADMIN_USER", "admin") ADMIN_PASSWORD = os.getenv("ADMIN_PASSWORD", "change_me") OLLAMA_URL = os.getenv("OLLAMA_URL", "http://127.0.0.1:11434") OLLAMA_MODEL = os.getenv("OLLAMA_MODEL", "qwen3:8b-nothink") # Направления (категории) DIRECTIONS = ["tech", "politics", "games", "electronics", "llm", "linux"] def ensure_dirs(): for d in (BASE_DIR / "db", MEDIA_DIR, TG_SESSION_DIR, BUNDLES_DIR): d.mkdir(parents=True, exist_ok=True)